Growth · Customer.io · year to date 2026

Lifecycle and offers: fix how the offer runs, then decide its size

A verified read on the always-on lifecycle and the monthly offer machine, triangulated across Customer.io, PostHog and the workspace-conversion cohort, then independently re-derived and stress-tested. Analysis and strategy only.

Prepared 31 May 2026  ·  Read-only across all systems  ·  Numbers re-verified by independent review  ·  Sources: Customer.io ws 199348 (live), PostHog Production 10924 (HogQL), Workspace conversions 05_26.xlsx

Executive verdict

The offer machine is not the problem. How it is run is.

Your deliverability worry is correct and fixable now, and it is an execution problem, not a sign that offers fail. The evidence does not support cutting offers, and on two checks it leans the other way: the customers the offer brings in retain, and its true footprint may be much larger than it looks. So the sound sequence is to fix the execution now, measure the offer's real lift with a holdout, and only then decide on volume. Do not cut a possibly healthy lever on evidence that cannot yet separate cause from coincidence.

Section 1

How we are tracking, year to date

Signups and new-paying conversions by month. Read the per-signup rate carefully, it is not flat.

18,766
Workspace signups Jan to May 2026
1,777
New-paying conversions Jan to May (PostHog, combined)
10.4 to 8.6
New-paying per signup, Jan to Apr (declining)
~8%
Mature paying rate at 5 months (Jan cohort)
Signups from Workspace conversions 05_26.xlsx (Executive Summary cohort table), cross-confirmed by Customer.io campaign 1 journey "started" counts (Jan 3,074, Apr 4,791). New-paying from PostHog HogQL, combined create subscription and upgrade subscription. May is partial through 31 May.
MonthWorkspace signupsNew-paying (PostHog)createupgradeNew-paying / signup
January3,07332119512610.4%
February3,1023041711339.8%
March4,0893722221509.1%
April4,7944112341778.6%
May (partial)3,70836922614310.0%

What this says, and what it does not

New-paying volume rises with signups, which makes growth a top-of-funnel story. The per-signup rate, though, fell from 10.4 percent in January to 8.6 percent in April before a partial-May rebound to 10.0 percent, so conversion efficiency was softening, not holding flat.

The honest limit: the one-dollar offer ran in every month of this window, so there is no period to compare against. A stable-ish conversion rate under an always-on offer is consistent with the offer helping or not helping. We cannot read "growth is signup-led" as "offers do not matter" from this data. Two more confounds sit on top: new-paying in any month is dominated by earlier cohorts converting late (median time to paid is 28 days, p90 near 90 days), and May is partial, so its rebound is mostly older cohorts maturing. Source: Excel Time to convert sheet; PostHog combined events.

Section 2

What is working, and what is not

Judged on human engagement (machine opens stripped out), conversion credit, deliverability and reach. Lifecycle campaigns and offer broadcasts assessed separately.

The clearest signal: human click rate by message type

Expected and relevant mail engages. Repeated promotional blasts do not. Human click rate (a person deliberately acting) separates the two pillars sharply.

Calendly demo reminders (71)13.8%
Onboarding-outreach (32)4.87%
Sales-outreach (3)3.10%
Webinar invite (broadcast 94)2.26%
Onboarding / free trial (1)1.84%
Offer email, 48h reminder (109)0.76%
Post-trial series, sunset (9)0.53%
Dormant winback (broadcast 97)0.15%

Purple = lifecycle campaign. Violet = offer or one-off broadcast. Human clicks divided by delivered. Source: CIO campaign and newsletter metrics (ws 199348). SMS offers sit higher on clicks (13 to 14 percent) but only when delivered, see Section 3.

Lifecycle campaigns

Working. Onboarding (campaign 1) reaches essentially every signup, runs at 21.1 percent human open and 1.84 percent human click, and is credited with 1,082 conversions. Sales-outreach (3) runs at 28.9 percent open and 3.10 percent click. Onboarding-outreach (32) is the best-engaging email at 40.5 percent open and 4.87 percent click. Reverse-trial in-app (50) is credited with 126, 249 and 160 conversions in March, April and May.

Not working. Post-trial v2 (73) opens at just 2.3 percent human, a deliverability or segment red flag worth investigating. The sunset post-trial series (9) sits at 10 percent. Sales-outreach (3) has no conversion goal set, so its conversions are invisible in Customer.io. Onboarding, outreach and reverse-trial all fire on the same new signup, so one user can sit in three journeys at once.

Source: CIO GET /campaigns/{1,3,9,32,50,73}/metrics.

Offer broadcasts

Working, narrowly but on signals that matter. In-app offers cost zero sending reputation and convert the people who see them (notification 105: 50 conversions from 576 in-app views). SMS converts well when it lands (13 to 14 percent human click). And the converts retain (Section 4), so the offer is not bringing in throwaway customers.

Not working. The discount blasts engage weakly on opens and clicks (6 to 21 percent open, 0.3 to 0.8 percent click), the one-dollar offer is no longer novel to the active free base. The cold winback opened at 7.8 percent and clicked at 0.15 percent. In-app reach is capped near 5 to 6 percent of the eligible audience, because the dormant base does not log in, so in-app alone cannot reach the people who convert late.

Source: CIO GET /newsletters/{90,91,92,94,95,96,97,105,108,109,110,111}/metrics.

Section 3

Is the monthly offer volume sustainable? The way it is executed is not

Three measured execution problems. Each is fixable without deciding whether offers work, and fixing them is exactly what protects deliverability.

Reminder fatigue

The 48-hour and 24-hour one-dollar reminders went to the same audience of roughly 6,900 people one day apart. The second send did less than half the work of the first.

One-dollar reminderDeliveredHuman openHuman clickConversions
48 hours to go (109)6,96817.9%0.76%36
24 hours to go (110)6,7997.9%0.34%19
Changedown 2%down 56%down 55%down 47%

Source: CIO newsletters 109 and 110, sent 29 and 30 May.

The deliverability risk to the lifecycle

Every send shares one sending reputation. The May dormant winback was a single 189,749-email cold blast that bounced at 9 percent, and on its own it took the month's blended bounce rate from a healthy 1.62 percent to 7.02 percent. A 9 percent bounce event on six figures of volume is the kind of signal that makes inbox providers throttle and divert mail, which would also hit the onboarding mail that carries the real conversions.

May email volume, where it went

Dormant winback (97)189.7k
All other broadcasts38.0k
All lifecycle campaigns32.3k

One cold send was 73 percent of all 260,115 emails sent in May, for 24 conversions. Source: CIO newsletter and campaign metrics, May bucket.

Onboarding human open is falling, cause not proven

25.6 25.3 21.2 18.4 16.9 Jan Feb Mar Apr May

Human open percent, campaign 1. The decline is steady from January, so the May winback is not its main cause. The fuller cross-journey picture is below.

The decline is system-wide, not just onboarding

Human open rate fell over the same window on every always-on journey, and across different audiences. Onboarding and Sales-outreach hit new signups, Post-trial hits trial-ended users. A shared decline across different audiences points to a shared cause, the sending domain's inbox placement, more than to any one audience's quality.

Journey (audience)JanFebMarAprMay
Onboarding (new signups)25.6%25.3%21.2%18.4%16.9%
Sales-outreach (new signups)41.7%37.1%21.8%15.1%21.5%
Post-trial (trial ended)n/a13.5%10.2%8.7%7.2%
Onboarding-outreachn/a65.9%45.0%39.8%36.1%
Human opens divided by delivered, by month. Post-trial and Onboarding-outreach had negligible January volume (n/a). Human click rate declined in parallel on every journey. Source: CIO campaign metrics monthly arrays.
What it is, and what it is not. It is real, not a tracking artifact: machine and human opens fell together, so the human-to-total open ratio held near 57 percent, which rules out Apple Mail Privacy drift. It spans different audiences, which favours a domain-level placement cause over pure signup quality. But bounce fell over the same window (onboarding 4.0 to 2.2 percent), so this is engagement-based inbox placement eroding, mail drifting to Promotions and Spam, not hard list rot. That is exactly how sustained high promotional volume degrades a domain. Confirm the split between placement and geo-mix with Google Postmaster data and geo-segmented open rates.

SMS is hitting dead numbers

The "pick a plan" SMS failed or bounced on about 58 percent of 3,436 sends (2,009 of them), while a cleaner cloned send delivered at 94 percent. SMS clicks at 13 to 14 percent when it lands, so the channel works, the targeting does not.

The pattern across all three: none of these is an argument that offers fail. They are execution faults, sending too much cold volume at once, reminding twice, and texting bad numbers. Fixing them is the direct answer to the deliverability worry, and it costs no conversions.

Section 4

Conversion analysis: de-duplicated, and what we still cannot know

Customer.io credits a conversion when someone enters the paying segment within 7 days of receiving a message. That is timing, not cause, and the same person is counted by every journey and send that touched them.

Customer.io credit is inflated, for both pillars

Summing Customer.io conversion credit across all journeys and broadcasts, then comparing to the real number of new-paying workspaces from PostHog, shows the overlap directly. As more journeys and sends piled on, credit grew past the real total.

MonthCampaign creditBroadcast creditTotal CIO creditReal new-payingInflation
January19501953210.61x
February25502553040.84x
March42704273721.15x
April54005404111.31x
May355402757369~2.05x
Campaign credit from CIO journey_metrics, broadcast credit from newsletter metrics (all broadcasts are May). Real new-paying from PostHog (which over-counts unique converters by only about 4 percent, verified). The multiple is directional: CIO credit is segment-entry, PostHog is events, so read it as "about 2x," not exact.

How to read this, and how not to. In April two lifecycle journeys alone (onboarding 189 plus reverse-trial 249, total 438) credit more than the 411 real conversions, so overlap is certain. The takeaway is narrow and important: do not trust Customer.io per-message conversion credit for anything, lifecycle or offer. This finding discredits the credit, not the offer. It does not by itself say offers underperform, those are separate questions, and the rising ratio also tracks how many journeys had conversion goals turned on over the year, not offer intensity.

The offer's direct footprint is a floor, and it may be large

The cleanest direct signal is the one-dollar promo code recorded on the subscription event. It is a floor because the code is recorded on at most about a third of new subscriptions, and was not recorded on trial conversions at all before May.

MonthConversions with a $1 code (approx)Share of real new-payingCode coverage on new subs
January00.0%9.2%
February~123.9%12.3%
March~3910.5%20.3%
April~5814.1%28.2%
May9525.7%32.3%
PostHog HogQL, promoCode on create and upgrade subscription. The Feb to Apr monthly figures are approximate (they depend on code-matching rules and on coverage that itself rose over the period), so do not read the rise as pure offer growth. May, with both event types instrumented, is the most reliable single read at 25.7 percent, and it is still a floor.
Why "floor" matters for the decision. At about 32 percent code coverage, the 25.7 percent observed could correspond to a much larger true share of conversions touching the offer, plausibly a substantial minority to a majority. We cannot pin it precisely, but it is not safe to treat the offer as a minor contributor. That is one more reason to measure before cutting.

Do offer converts retain? On current evidence, yes

For a 98-percent-off offer, the number that decides everything is whether those customers survive past the discounted period. A read on current subscription status and the explicit cancel event says they hold up.

Cohort (first conversion)GroupNStill subscribed nowCancelled since
Feb to Apr 2026$1-code converts10991.7%6.4%
Feb to Apr 2026Full-price / no code951~92%~15%
PostHog: person.isSubscribed (current state) and the cancel subscription event. One-dollar converts retain on par with full-price and cancel less. Caveats: isSubscribed is current-state so the horizon is short (Apr converts have had only weeks), the comparison group is contaminated by un-coded one-dollar converts which understates any real gap, and one-dollar samples are small. Green, but confirm later with a fixed day-90 cut.

Reconciling the three sources

SourceWhat it measuresUse it for
PostHog eventscreate plus upgrade subscription, all of themAuthoritative monthly new-paying flow
Excel cohortWorkspaces still paying today, by signup monthMature paying rate, survivorship-limited
Excel new-paying weeklyFirst Stripe payments, excludes in-trial workspacesRevenue and average first payment
CIO conversionEntered paying within 7 days of receivingDirection only, inflated about 2x by overlap
The Excel first-payment count runs 34 to 50 percent of PostHog and the gap widens toward recent months. The main reason is definitional: the Excel sheet excludes workspaces still in trial, while PostHog logs the conversion event immediately (including trial conversions). Survivorship (Excel counts only workspaces observable now) and Monday week-bucketing add smaller gaps. PostHog event flow is the right denominator for monthly conversions. Average first payment in USD ran roughly 110 to 450 dollars per workspace.

Section 5

What to do

Sequenced to measure before cutting. Fix the low-regret execution faults now, learn the offer's true lift, then size the offer on evidence. Strategy only, nothing here is built or sent.

Do now, low regret (these solve the deliverability worry on their own)

1

now   Clean the sending, do not kill the channel

Stop sending six figures of cold email in one shot. Suppress the ever-bounced and 60-day dormant before any large send, and re-engage cold contacts only in small, recently-active-first batches with a hard stop if bounce passes 2 percent. Cap offer reminders at one. Gate SMS on a validated mobile number and exclude the failed-SMS segment. Keep the dormant re-engagement, just do it clean, because those reactivations look genuinely incremental.

Evidence: the winback alone moved blended bounce 1.62 to 7.02 percent; the second reminder lost 47 percent of conversions; the SMS failed on about 58 percent of sends. Expected effect: removes the reputation risk and the waste. It should improve inbox placement, though it will not by itself fully reverse the open-rate decline, since most of that predates the winback.
2

now   Coordinate the journeys and protect the new-signup experience

Onboarding, sales-outreach and reverse-trial all start on roughly every signup, so a new user can be in three journeys at once. Add a per-person message cap, with onboarding and trial as priority and exempt. Separately, scrub junk and disposable-email signups, since onboarding fires on every signup and some of the bounce and open-rate decline may be signup quality, not reputation.

Evidence: campaigns 1, 3 and 50 each show journey "started" counts that track signups; onboarding bounce is 3.87 percent, high for opt-in new signups. Expected effect: less frequency pressure on new users, and a cleaner read on whether the open decline is deliverability or signup mix.

Measure before deciding offer size

3

gate   Run a holdout on the next offer

Withhold the offer from a random, representative slice of the eligible base, importantly including dormant and non-logging-in users, for one or two cycles, and compare new-paying conversion in treatment against control. Keep the current cadence running as the control arm so the measurement is clean. This is the only way to learn the offer's true net lift, and it gates the volume decision below.

Evidence: there are no Customer.io send events in PostHog, so incrementality cannot be reconstructed after the fact, and the offer ran every month so history cannot answer it. Expected effect: a real causal number. Near-zero lift means cut hard. Materially positive lift, especially in the dormant tail, means the offer is an engine to keep and tune.
4

gate   Instrument so the next read is not guesswork

Populate the promo code on every subscription (coverage is under a third today), pipe Customer.io send and delivery events into PostHog so recipiency and incrementality become queryable, add a conversion goal to Sales-outreach so its contribution is visible, and pull a fixed day-90 retention cut on offer cohorts once May upgrade data matures.

Evidence: promoCode coverage 9 to 32 percent, upgrade events 0 percent coded before May, no CIO delivery events in PostHog, Sales-outreach conversion goal absent. Expected effect: attribution stops being a floor and the holdout can be read precisely.

Decide after the holdout reads

5

conditional   Re-shape the offer to its measured value

If lift is small, shrink the offer and reinvest the volume. If lift is positive, move from a calendar blast to triggers at trial end and at day 30, 60 and 90, deliver in-app first for logged-in users, and keep a cleaned email and SMS path for the dormant tail, since in-app reaches only 5 to 6 percent and cannot touch the late converters who matter most. Segment the decision by geo and persona, the offer may be load-bearing in price-sensitive emerging markets and dead weight in ANZ.

Evidence: median time to paid 28 days, p90 near 90 days (a real late tail); in-app reach capped at 5 to 6 percent; known emerging-markets mix in the signup base. Expected effect: the same or better redemptions at a fraction of the volume and reputation cost, sized to evidence rather than habit.
6

test   Test activation as a lever, do not assume it

Workspaces that reach 16-plus contacts in 14 days convert at 51.9 percent, those stuck at 3 to 5 contacts (78 percent of signups) at 2.5 percent. Reaching many contacts is partly a marker of an already-committed practice, not only a cause, so run it as an experiment: nudge a random set of stalled workspaces and measure whether conversion actually moves, before sizing it.

Evidence: Excel activation-vs-outcome bands. Expected effect: if the nudge moves even part of the 8,000-workspace stalled band, it rivals the offer calendar, but this needs a test to claim, not a correlation.