Skip to content

Email signup widget for Shopify

A box that asks for an email address, and keeps the answers.

Make one, freeOpens the editor with this one in it. No account needed to start.
yourshop.example

Putting it on Shopify

Your widget gives you one line of HTML. It goes in once for the whole site, not once per page, and it does nothing until the trigger you chose fires.

Where the box is
Online Store → Themes → Edit code, then open theme.liquid and paste just before the closing </body> tag.
What catches people out
Duplicate your theme before editing it if you have not edited theme code before. The snippet belongs in the theme, not in checkout — Shopify's checkout is its own hosted interface now, and no pasted script runs there on any plan.
<script src="https://kestero.com/widget.js" async
  data-api="https://kestero.com"
  data-key="ke_your_key"
  data-widget="your-widget-id"></script>

The key and the id above are placeholders — copy the real line from your widget’s page.

Every platform, and frameworks — including Google Tag Manager, React and Next.js.

What it is for

Collecting addresses without adding a form to your page or paying a service to host one. The widget asks, the answers arrive in your dashboard under the widget that collected them, and you download the lot as a CSV when you want it.

When to show it

Not on arrival. A box that asks before your page has said anything is a box that gets closed, and the person closing it is the one who might have signed up. This preset waits for exit intent — the moment the pointer heads for the tab bar — so it asks the people who read something first. A scroll trigger works for the same reason.

When not to use one

If you have nowhere to put the addresses yet. Kestero stores what people type and exports it; it does not connect to Mailchimp or anything like it, so moving the list somewhere useful is a thing you do rather than a thing that happens. If you need addresses to arrive in a mailing tool by themselves, this does not do that.

Questions

Where do the addresses go?
Into your dashboard, under the widget that collected them. You can read them there and download them all as a CSV.
Does it connect to my mailing list?
No. There is no integration with a mailing tool today. What there is, is an export.
Do I need a consent banner for it?
Adding this cannot be the reason you need one. It sets no cookies at all. It does keep one flag in the visitor's own browser — that they closed the box — which we think is covered by the exemption for storage a visitor asked for, and we explain our reasoning rather than gloss over it. What is stored on our side is what somebody chose to type into it, and asking people for an email address is the part you need a lawful basis for.
Can I ask for more than an email address?
Yes. A widget can carry several fields — text, numbers, dates, a dropdown — and every one of them needs a label before it can be saved at all.