The Embeddables Platform
Compliance & Security
Are you HIPAA compliant?
Are you HIPAA compliant?
Are you SOC2 compliant?
Are you SOC2 compliant?
Do you sign BAAs (Business Associate Agreements)?
Do you sign BAAs (Business Associate Agreements)?
Data Processing & Privacy
Do you process or store personal data?
Do you process or store personal data?
Do you provide DPAs (Data Processing Agreements)?
Do you provide DPAs (Data Processing Agreements)?
Do you conduct DPIAs (Data Protection Impact Assessments)?
Do you conduct DPIAs (Data Protection Impact Assessments)?
Infrastructure & Hosting
Where is your code/platform hosted?
Where is your code/platform hosted?
- Cloudflare
- Vercel
- Heroku
- Supabase
- Firebase
- Clickhouse
Are Embeddables embedded using iframes?
Are Embeddables embedded using iframes?
- Better performance and faster load times
- Seamless integration with your page’s styling
- No cross-origin restrictions
- Better SEO as content is part of your page
- Easier data passing between your site and the Embeddable
- Better support for Stripe payments, since Stripe uses its own iframes (avoiding nested iframes)
Building with Embeddables
Troubleshooting
Builder not loading or stuck in infinite loop
Builder not loading or stuck in infinite loop
health_conditions_options, rename your Computed Field to something like health_conditions_options_cf (adding a suffix like _cf for “Computed Field”).Logic
How do I find where a User Data key is being created/updated?
How do I find where a User Data key is being created/updated?
- Open the Builder for your Embeddable
- Press ESC to deselect any components (so nothing is selected)
- In the Options sidebar, click the three dots menu (⋮) in the top right corner
- Click “Edit JSON” to open the JSON editor modal
- Use the search inside the code editor box (Cmd+F or Ctrl+F with the code editor in focus) to search for the key name within the JSON
- Input fields and form components that create the key
- Actions that update the key
- Computed Fields that are set with their key as the key you’re looking for, or that reference the key
- Conditions that use the key
Design, Styling, and Layouts
How do I place components side by side?
How do I place components side by side?
- Add a container to the page if it does not already exist.
- For each component that you want to align horizontally, move it into the container.
- Select the container, and in the Designer sidebar, set the
display property to flex. - Ensure the
flex direction is set to row(this is usually the default).
How do I center a button in my design?
How do I center a button in my design?
How do I edit styles for specific screen sizes?
How do I edit styles for specific screen sizes?
- Select the component you want to style.
- In the Designer sidebar, look for the “On” dropdown.
- Choose the specific screen size you want to style for:
- Mobile: up to 520px width
- Tablet: 521px to 720px width
- Desktop: 721px width and above
- Apply your styles while that screen size is selected - this will set the styles for only that screen size and smaller screen sizes.
What do the device screen type options (Desktop/Mobile/Tablet) do?
What do the device screen type options (Desktop/Mobile/Tablet) do?
- Mobile: Shows layout for devices with width up to 520px.
- Tablet: Shows layout for devices with width between 521px and 720px.
- Desktop: Shows layout for devices with width of 721px and above.
Why do my desktop styles affect mobile too?
Why do my desktop styles affect mobile too?
- Desktop styles (721px+) apply to desktop, tablet, and mobile
- Tablet styles (521px-720px) apply to tablet and mobile
- Mobile styles (up to 520px) apply only to mobile
- Select the component that has unwanted styles on mobile
- Switch to Mobile view using the “On” dropdown in the Designer sidebar
- Override the problematic styles by setting different values for mobile
- Desktop: width = 300px
- Mobile: width = 100%
What are the different button elements I can style?
What are the different button elements I can style?
Why does my Embeddable look different on my website than in the preview?
Why does my Embeddable look different on my website than in the preview?
- Global CSS styles on your page are overriding the Embeddable’s styles
- Margin or padding applied to elements inside the Embeddable (e.g., body margins preventing edge-to-edge display)
- Font styles or other inherited CSS properties from your page
- CSS reset or normalize stylesheets affecting the Embeddable’s layout
- Inspect the Embeddable on your website using browser developer tools (right-click → Inspect)
- Look for conflicting styles that are being applied from your website’s CSS
- Override the conflicting styles by adding more specific CSS rules to your page:
- Test the changes to ensure the Embeddable displays correctly
Form Elements
How do I disable a button based on input validation?
How do I disable a button based on input validation?
How do I reference multiple form elements in Computed Fields?
How do I reference multiple form elements in Computed Fields?
How do I add a phone number input field?
How do I add a phone number input field?
- Add a regular Input component.
- In the Options tab, set the
Input TypetoPhone.
- Under the
Validationsection, checkValidate value. - Set
FormulatoPhone Number (US)orCustom formula. - If you choose
Phone Number (US), the phone number will be automatically formatted as(xxx) xxx-xxxx. - If you choose
Custom formula, you can use the something like the following formula to validate the phone number:
Can I prevent users from entering text in a phone input field?
Can I prevent users from entering text in a phone input field?
Option 1: Use the built-in US phone validation (Recommended)
The simplest and most reliable approach is to use the built-in phone validation:- Set the Input component’s
Input TypetoPhone - In the Validation section, check
Validate value - Set the Formula to
Phone Number (US)
- Formats the number as
(xxx) xxx-xxxxas the user types - Validates the format is correct
- Provides a consistent user experience
- Handles edge cases and formatting automatically
Option 2: Custom validation with regex
For more control over the validation rules, you can use a custom formula:- Set the Input component’s
Input TypetoPhone - In the Validation section, check
Validate value - Set the Formula to
Custom formula - Write a custom function to validate the phone number, for example:
Option 3: Remove disallowed characters immediately on type, using a custom action
Create an action that runs on page load to restrict input to numeric characters only:Does the phone input automatically format numbers?
Does the phone input automatically format numbers?
Phone, and choose Phone Number (US) for validation, it automatically formats the number as (xxx) xxx-xxxx as the user types.This provides a better user experience and ensures consistent formatting across all submissions.Versions & Publishing
If I edit an old version, do those edits become the newest version?
If I edit an old version, do those edits become the newest version?
How do I roll back to a previous version?
How do I roll back to a previous version?
- Open the Version Control card in the Builder sidebar.
- Find the version you want to roll back to in the version history list.
- Click on that version to load it in the Builder.
- Make a small edit (the Save button won’t be active until you make a change).
- Click Save - this creates a new version based on the old one.
Where can I see the audit trail of staging and production deployments?
Where can I see the audit trail of staging and production deployments?
- Click on Version Control in the top bar of the Builder.
- Go to the Logs tab.
- This shows an audit trail of staging and production deployments.
How do I compare changes between two versions?
How do I compare changes between two versions?
- Open Version Control in the Builder Top Bar.
- Click the
<>icon (compare icon) in Version Control. - Select the two versions you want to compare.
Data & Analytics
How do I find my funnel submissions data?
How do I find my funnel submissions data?
- Users page
- Shows individual user sessions.
- You can click on a user to see their activity and their submission data for each Embeddable.
- Embeddable —> Submissions tab
- Shows the User Data for completed form submissions.
- Each user will have a separate row for each Embeddable they have interacted with, meaning there could be multiple rows for the same user.
- All users from all stages of the funnel are included, so the majority of rows will likely correspond to users who did not reach the end of the funnel.
How do I access production data vs. test data?
How do I access production data vs. test data?
- Go to your funnel dashboard.
- Look for the “Data collected in production version” button.
- Click it to toggle between:
- Production data only
- All data (including both production and test data)
How do I capture UTM parameters and campaign IDs from incoming links?
How do I capture UTM parameters and campaign IDs from incoming links?
- In the Builder, select nothing (press ESC) to see the Options tab for the Entire Embeddable settings.
- Go to the Options tab and find the URL Keys section.
- Add the UTM parameters you want to capture (e.g.,
utm_source,utm_campaign,utm_medium) - add one on each line. - These values will automatically be stored in UserData when users visit your page.
Why can't I see user details or search by email address?
Why can't I see user details or search by email address?
- Your workspace has HIPAA Compliance enabled, which restricts access to personally identifiable information (PII) and protected health information (PHI).
- Your account has Anonymized Data Access, which means you can only view anonymized data—personally identifiable information about end-users is hidden.
- Email addresses are classified as contact information and PII, so they are not visible to users with Anonymized Data Access.
- Going to Settings → Team tab
- Finding your user in the table
- Changing your Data Access Level to Full Data Access

