Skip to content
Hiro Analytics Help Center home

Understanding your form, list, and subscriber numbers in Hiro

Form submits, Email Subscriber Growth, and Klaviyo's own Subscriber Growth Report all sound like they should measure "how many new people are we reaching" — but each one is answering a different question, and they won't reconcile 1:1. Here's why.

Why don't my form submits match my subscriber growth?

A form submit means someone completed an on-site action. It doesn't automatically mean their email marketing consent changed.

A common assumption is that without double opt-in, every submission should count as a subscribe — that's not correct. Single opt-in only removes the confirmation-email step after someone subscribes. It doesn't mean every form is wired to write email marketing consent in the first place.

A few reasons the two numbers diverge:

  • Not every form field is a consent field. A submit can trigger a different underlying event — a back-in-stock alert, a referral entry, a giveaway entry — that has nothing to do with the marketing consent property.

  • Existing subscribers don't generate a new event. If the submitter is already an email marketing subscriber, the event doesn't fire again — it marks a change in consent, not a reaffirmation of it.

  • Optional consent checkboxes. If a form includes a marketing opt-in box that isn't required, the form still submits successfully whether or not it's checked.

  • Channel mismatch. A form can capture SMS consent without email consent, or the reverse, so a submit can register on one channel with no event on the other.

  • Duplicate or test submissions. The same person submitting more than once (fixing a typo, QA testing) adds to the submit count without adding a second subscribe event.

How does Hiro calculate Email Subscriber Growth?

Hiro's Email Subscriber Growth is calculated directly from Klaviyo's consent events:

Subscribed to Email Marketing − Unsubscribed from Email Marketing = Net growth

This measures explicit email marketing consent, account-wide.

The forms breakdown shows where subscribe events originated. It's not a full accounting of list growth, since people can also subscribe through checkout, manual import, or other non-form paths that Klaviyo may include in its own Subscriber Growth report.

Why does Klaviyo's own Subscriber Growth Report show a different number?

Klaviyo's native Subscriber Growth Report pulls from the same underlying Subscribed / Unsubscribed events, but applies its own reporting logic to subscriber status:

  • If someone subscribes and unsubscribes on the same day, Klaviyo's report doesn't count them as a new subscriber at all.

  • Klaviyo tracks consent and suppression as separate concepts — a profile can remain "subscribed" (consent) while being suppressed (undeliverable), so not every deliverability change maps to a subscribe/unsubscribe event.

Neither number is wrong. They're two different rulesets applied to the same event stream, which is why a gap between them is expected, not a sign of a tracking error.

Side-by-side comparison

Hiro: Email Subscriber Growth

Klaviyo: Subscriber Growth Report

What it counts

Net change in explicit marketing consent, account-wide

Klaviyo's own definition of a "new subscriber," applied to profile status

Data source

Subscribed / Unsubscribed to Email Marketing events

Klaviyo's internal subscriber-status logic

Known exclusion

None — every consent event counts

Same-day subscribe + unsubscribe is excluded from the new-subscriber count

Consent vs. deliverability

Measures consent only

Tracks consent and suppression separately, so the total doesn't map cleanly onto consent either