Customize the Signup Source Property for a Legacy Form

Last updated at:


Because legacy forms use custom HTML and CSS, our support team is unable to assist with troubleshooting legacy forms. Learn more about customizing a form's source property using Klaviyo's new Signup Form Builder instead.

When growing your email list, it's a best practice to ensure that all new signups are funneled to the same newsletter list, regardless of whether they signed up on your website, via a popup, etc. Because of this, we recommend tagging each signup form on your site with a unique $source property. This will allow you to isolate and track activity from each different signup method.

The $source property (with the $ as a prefix) is a Klaviyo property used to represent "form signup source." This breakdown can be viewed in the List Growth Report for a particular list.

Keep in mind that someone can only join a given list once. This means if you have various lead generation tools on your site and expect that people might want to sign up for more than one, you will have to create different lists for each. You can then create a "main list" using the segment builder.

Klaviyo's Default $source Property

Klaviyo will automatically assign all list subscribers a $source property that reflects how the person was added your list. When someone unsubscribes, we will also track how they unsubscribed.

While it is possible to customize a given form's $source value (see below), we will otherwise track and use the following default values:

Default Subscribe Source Values

  • Unknown: Source non-identifiable
  • Modal: Added via a popup form
  • Fly Out: Added via a flyout form
  • Embedded Form: Added via an embedded form
  • Subscribe Page: Added via a subscribe page
  • Klaviyo UI: Added via Quick Add or via upload from CSV File
  • Integration: Added via opting in through an integration
  • API: Added to a list via the Klaviyo API

Default Unsubscribe Source Values

  • Unknown: Source non-identifiable
  • Klaviyo UI: Manually cleaned/removed from the list
  • Subscribe Page: Unsubscribed via an unsubscribe page
  • Integration: Unsubscribed via opting out through an integration
  • API: Unsubscribed from a list via the Klaviyo API

Customizing a Form's Sign Up Source

If you want to customize the $source property for a form, you can do this by making a small adjustment in your form's code. 

To customize the signup source for a flyout, modal, or embedded form, create a $source property in an extra_properties dictionary.

Before you add this extra_properties dictionary, you will see this below your main form code:

<script type="text/javascript" src="//"></script>
<script type="text/javascript">
      KlaviyoSubscribe.attachToForms('#email_subscribe', {
          hide_form_on_success: true

Here is an example of where and how to add the the extra_properties dictionary to include the $source property:

<script type="text/javascript" src="//"></script>
<script type="text/javascript">
      KlaviyoSubscribe.attachToForms('#email_subscribe', {
          hide_form_on_success: true,
          extra_properties: {
            $source: 'Home Page'

When establishing the $source value, you can use anything you'd like (i.e. Contest, Home Page, Footer Form etc.).

Additional Resources

Was this article helpful?
24 out of 57 found this helpful