The hardest question in a freemium health app isn't what's in the paid tier. It's what's in the free tier · and where the line gets drawn.
We rewrote the free tier four times before landing on what shipped in v0: up to 3 compounds and 90 days of history. Here's how we got there, what we tried first, and why two specific features are immovable.
What every other health app gets wrong
Open any review forum for Medisafe, CareClinic, or Pokii. The #1 complaint pattern:
"Slowly drifted towards paid services despite it being free at first... Scummy."
"You can manage up to 2 medications for free... no use to me anymore."
"Paid annual subscription ($60)... needed to pay an additional $5/month for editing data."
The pattern is bait-and-switch on free features. Users sign up for a free tool, become dependent on it, then watch features move behind a paywall over the course of a year.
We have one rule: what's free at launch is free forever.
That rule constrains us. If we ship a feature free, we can't take it back. So we have to be precise about what goes free on day one · and what stays paid.
What we tried first · and rejected
Attempt 1: Unlimited free with feature gates only.
Free gets everything; Pro adds advanced patterns, lab import roadmap features, and doctor PDF. Caps only on the analytical features.
Rejected because: power users (4+ compounds, full lab tracking) would never convert. The user demographic that's most willing to pay would have no incentive to.
Attempt 2: 1-compound free.
Inspired by OptiPin's free tier. Free covers one TRT user; everyone with a real stack pays.
Rejected because: the daily logging loop has to feel complete on free. With 1 compound, free users barely use the app · they'd churn before the value showed. Conversion rate from active free → Pro is higher than churned free → Pro.
Attempt 3: Time-based trial.
7-day Pro trial; after that, you keep only the basics.
Rejected because: too coercive. Users who can't afford Pro feel hostage. The Reddit threads write themselves: "7 days then I have to pay". We wanted a free tier that's a real product, not a Trojan horse.
Attempt 4: 3 compounds + 90 days history.
Free covers a real entry stack (TRT + 1 peptide + 1 supplement) and a full lab cycle. Pro lifts both caps and adds the analytical features.
Locked. Here's why.
Why 3 compounds, specifically
The persona research told us:
- Casual TRT user runs 1–2 compounds (T cyp + maybe anastrozole). Free tier covers them entirely.
- Standard TRT user runs 3 compounds (T cyp + HCG + AI). Free tier covers them · they're our largest cohort.
- Peptide stacker / advanced TRT user runs 4+ compounds. Free tier doesn't cover them · they convert.
Three is the magic number: it covers the largest cohort of users completely, and the next cohort up converts naturally because they hit a real limit during normal use.
A 2-compound cap would feel punitive (no room for HCG on a standard TRT protocol). A 4-compound cap would let too many real users stay free forever (no conversion pressure).
Why 90 days of history
The forcing function is the lab cycle.
Most TRT users draw labs every 3 months. Between labs, the user wants to look back at: what changed this protocol period? · doses, sites, symptom trends, vial events.
If the free history cap is 30 days, the user can't see their full lab cycle. The feature is broken at the moment they'd most use it.
90 days covers exactly one full lab cycle. Power users who want trend analysis over 6+ months convert to Pro for unlimited history. Casual users who only need a glance back can stay free indefinitely.
Marcus, our primary persona, was the one who pushed back on the original 30-day plan: "30 days is wrong · my labs are every 90 days. A single lab cycle doesn't fit." He was right. We changed it.
What's never paywalled · and why
Two features are immovable in the free tier:
1. Vial life + BAC water 28-day expiry tracking.
Paywalling vial expiry tracking in a peptide app is wrong. If a user can't tell their BAC water expired, they risk injecting a contaminated solution. Safety features have to be available to every user, paying or not.
2. Body map site rotation timing.
Same logic. If a user can't see when they last used a site, they'll over-rotate the same favorite spots, causing scar tissue and uneven absorption. Site rotation is also safety-adjacent. It stays free.
Marcus, again: "Vial expiry tracking is safety. Site rotation timing is safety. Don't paywall safety in a peptide app."
Pro is the analytical tier
Free is the logging tier. Pro is the analytical tier.
Free covers the daily loop:
- Log doses, two taps
- See next dose and site
- Track vial life
- Daily check-ins
- Cycle presets
Pro covers the why:
- Advanced patterns from real logs
- Lab import roadmap · trended biomarkers
- Cross-stack timeline, with wearable overlays planned
- Doctor PDF export
- Multi-device sync roadmap
This split holds because the daily loop is what hooks users. The analytical layer is what justifies a paid line. Users who never want analytics stay free forever, and the app still works for them. Users who do want analytics see Pro features fade in (locked but visible) and convert when ready.
The cancel promise
If you cancel Pro:
- Your local data stays on your device, untouched
- Free-tier features keep working · logging, body map, basic notifications, vial expiry, 90 days of history
- One-tap export of your full database (SQLite + CSV + JSON) any time, even after cancel
- You only lose: advanced patterns, cross-stack timeline, doctor PDF, full history, and future Pro roadmap features
This is the trust line. We wrote it before launch and committed to it in the paywall copy.
The founder's edition
First 1,000 annual subscribers lock $59/year forever. No fake countdown. No surge pricing. We publish remaining seats on the pricing page once we launch.
Why? Because the first 1,000 are taking a real bet on us. The product is new. The team is one person. The privacy claims aren't yet audited. They get a lifetime discount as recognition of the risk.
After 1,000, standard pricing applies. Founders stay at $59/yr indefinitely.
What happens at scale
We tested the model with the persona research:
- Marcus: 3 compounds, wants advanced patterns and doctor-ready exports. Converts. Pays $59 founder rate.
- Alex (peptide stacker): 4+ compounds, privacy-paranoid. Converts on compound count alone. Pays founder pricing while seats remain.
- Sarah (GLP-1): 1–2 compounds (Tirz + maybe supps). Stays free. Possibly converts for doctor PDF or future wearable overlays.
- Casual TRT user: 2 compounds. Stays free. Still gets a working product.
Three of four personas convert; one stays free with full functionality. The free tier feeds the funnel without giving away the analytical layer.
What we'd change
Honestly, nothing about the caps. The model is correct.
What we will monitor at launch:
- The conversion rate at the 3-compound cap (should be 60%+ for users who try to add a 4th)
- Time-to-conversion (target: median 21 days)
- Cancel rate after upgrade (target: under 8% in first 90 days)
If any of those misses target, we'll look at the experience, not the cap. The caps are the contract with the user.
The full pricing page walks through this in detail. The privacy posture explains why we never sell data or run a "free with ads" model.