Skip to content

Klaviyo

Sync form submissions from UpForm to a Klaviyo list. After contacts land in Klaviyo, you can run flows such as welcome or product-interest emails.

Before you begin

  • You need a Klaviyo account.
  • In UpForm, enable Save submission data for the form. Workflow sync will not run if submissions are not saved. See General.
  • Klaviyo needs an email to create or update a profile. Make the form’s email field required.
  • Klaviyo menus and labels can change. If something does not match exactly, use Klaviyo’s search or help for API keys, lists, and flows.

Connect Klaviyo in UpForm

  1. In UpForm, open SettingsWorkflow automation.
  2. Click Add workflow automation provider.
  3. Under Select provider, choose Klaviyo.
  4. Enter a Title for this connection (for example, Main Klaviyo Account).
  5. Leave the modal open (or return after you create the key), then continue to generate an API key in Klaviyo.

Add Klaviyo workflow automation provider

Generate a Klaviyo API key

  1. Sign in to your Klaviyo account.
  2. Open your account menu, then go to Settings.
  3. Select API Keys.
  4. Click Create Private API Key.
  5. Name the key (for example, UpForm Integration).
  6. Choose access:
    • Full access for the quickest setup, or
    • Custom with the scopes needed to add/update profiles and manage list subscriptions
  7. Create the key and copy it immediately. Klaviyo typically shows it only once.

Klaviyo Settings API Keys pageCreate Private API Key in KlaviyoCopy new Klaviyo private API key

Use a dedicated key for this integration. If it is exposed, revoke it and create a new one.

  1. Return to UpForm, paste the key into API key, enable Active if shown, then click Save.

Prepare a Klaviyo list

  1. In Klaviyo, go to AudienceLists & Segments.
  2. Create a new list (for example, Form Subscribers) or open an existing list where form contacts should be added.

You do not need to create custom properties in Klaviyo first. When you map a Custom property in UpForm, Klaviyo can store the value on the profile after customers submit the form.

Enable Klaviyo on a form

You can sync any UpForm form. The screenshots below use an example contact form with fields such as full name, email, phone, message, and product interests.

Example contact form for Klaviyo sync

  1. Open the form in the form builder (or create one from a template).
  2. Open the General tab → Workflow automation.
  3. Enable Sync submission data with Klaviyo.
  4. Select the Provider you connected earlier.
  5. Under Select list, choose the Klaviyo list you prepared.

Form Klaviyo list and sync settings

You can also click Add for Klaviyo from this section if you have not connected a provider yet.

Map form fields

In the mapping table, match each form field (Label / Name) to a Klaviyo property under Mapping.

Standard Klaviyo fields

For common fields, choose a Klaviyo property from the dropdown. Example:

  • Email addressEmail
  • Full nameFirst Name (UpForm sends the full name value into First Name)

Map form fields to Klaviyo properties

Custom properties

For other fields (phone, message, checkboxes, and so on):

  1. In the Mapping column, open the dropdown.
  2. Choose Custom property.
  3. Type a property name (for example, phone_number, customer_message, product_interests).

You do not need to create the property in Klaviyo first. After submissions sync, Klaviyo stores the values on each profile.

Example custom properties:

Form fieldCustom property (example)
Phone numberphone_number
How can we help?customer_message
Products you are interested inproduct_interests

Map form fields to custom properties

Use clear, consistent names (lowercase with underscores) so they’re easier to use in segments and flows later.

Then Save the form and Publish it to your storefront.

Test the sync

  1. On the live storefront, submit the form with complete test data.
  2. Wait about 30–60 seconds.
  3. In Klaviyo, open the list. You should see the new profile.

List view usually shows contacts, but not every custom property value.

Klaviyo list with synced contact

  1. Open the contact profile to confirm mapped values such as customer_message or product_interests.

Klaviyo profile custom property values

Each successful sync can:

  • Create or update a Klaviyo profile based on email
  • Add the profile to the selected list
  • Store mapped standard fields and custom properties on the profile

Optional: Create a Klaviyo flow

After contacts sync successfully, you can automate follow-up. Example: send different emails based on a custom property such as product_interests.

Create a list-triggered flow

  1. In Klaviyo, go to Flows.
  2. Click Create flowBuild your own.
  3. Name the flow, then create it.
  4. Set the trigger to Added to List.

Klaviyo flow Added to List trigger

  1. Choose the same list UpForm syncs to.

Select Klaviyo list for flow trigger

  1. Keep the flow in Draft while you build, then save and confirm the trigger.

Add a delay (optional)

Add a Time Delay after the trigger (for example, 10 minutes or 1 hour) so the first email does not send instantly.

Klaviyo flow time delay step

Split by a custom property

  1. Add a Conditional Split.
  2. Configure a condition such as: if the profile property product_interests contains a specific value (for example, Nail Polish & Gel).

Use contains when customers can select more than one checkbox.

Klaviyo conditional split by property

  1. On the YES path, add Send Email and create the message for that interest.

Klaviyo flow Send Email on YES path

  1. Repeat with additional splits for other interests, and add a fallback email for profiles that do not match a branch.
  2. Review the flow and turn it Live.
  3. Submit a test form on your storefront, then confirm in Klaviyo that the profile joined the list, custom properties appear, and the flow path matches the selected values.

If this does not work as expected, Contact for help.