Sign-up form formats: how to deploy your form

The format you set for a sign-up form determines how you distribute your form—whether you make your form available in your app, embedded it in a web page, or you link people to a page that Customer.io hosts for you.

How formats work

When you set up a sign-up form, you can choose from three different formats, determining how you deploy your form: In-App, Embedded, and Hosted. You can use multiple formats for the same form.

FormatHow people see your formWhat you need
In-AppYour website or app, through the Customer.io SDKA Customer.io mobile or JavaScript SDK with in-app messaging set up
EmbeddedInline on any web page where you add the embed scriptAccess to edit the page, or a tag manager like Google Tag Manager
HostedA full page that Customer.io hosts on form.customer.ioNothing. Customer.io gives you a link to share

All formats share the same fields, and each format can have its own styles. Customer.io reports metrics for each format separately, so you can compare how your different formats perform.

Which format should I choose?

Every format collects the same information, and a submission from any format creates or updates a person in the same way. So the right format depends on how you want to reach people, and how much control you have over your website or app.

You can also use more than one format. For example, you might show the form in your app with In-App, and share a Hosted link in your newsletter.

  • In-App is a good fit if you already use the Customer.io SDK for in-app messages. You don’t have to change any code to show the form, and you choose the pages where it appears in your form’s settings.
  • Embedded is a good fit if you want the form to sit inside one of your web pages, but your site doesn’t use the Customer.io SDK. You paste one script tag on the page, or add it through a tag manager.
  • Hosted is a good fit if you don’t have a page to put the form on, or you want to share it somewhere outside your website, like in an email, a social media post, or a QR code.
flowchart LR a{Do you use the Customer.io SDK<br>for in-app messages?}-->|Yes|b(In-App) a-->|No|c{Can you add a script<br>to your web page?} c-->|Yes|d(Embedded) c-->|No|e(Hosted)

In-app format

The In-App format works like other in-app messages. If you already use in-app messaging in your app, you don’t have to make any changes to your app or website to show a form.

When you launch your form, the Customer.io SDK shows it on your website or app. You can choose the pages where you want it to appear in the Settings step when you set up your form.

Embedded format

The Embedded format provides a script tag on your page. Your form appears wherever you paste the tag. You don’t need the Customer.io SDK on that page, because the script loads everything the form needs on its own.

Note that this script only shows a form and captures submissions. It doesn’t track user activity on your site, so you won’t be able to track their behavior outside the form using the embedded sign-up form.

  1. After you schedule or launch your form, go to the form’s Responses tab and find the Share this form card.

  2. Click Copy embed snippet. The snippet is a single script tag:

    HTML
    <script src="https://form.customer.io/..."></script>
  3. Paste the snippet where you want the form to appear on your page. If you paste it in the page’s <head>, the form appears at the end of the page’s <body> instead.

You can also add the snippet through a tag manager, like Google Tag Manager, if you can’t edit your site’s code directly.

Hosted format

The Hosted format shows your form on a full page that Customer.io hosts for you. It works well when you don’t have a page to embed the form on, like a link in an email, a social media post, or a QR code.

After you schedule or launch your form, go to the form’s Responses tab and click Copy link in the Share this form card. You can then use the link in an email, a social media post, or a QR code.

Add or remove formats

You can add or remove formats at any time, except while your form is starting, stopping, or being deleted. In the editor, click Add format to add one, or click the × on a format’s tab to remove it. If your form is scheduled or live, Customer.io asks you to confirm the change first, because it affects a live form.

Updated November 3, 2026