1
0 Comments

4 months live, zero signups. So I removed the card wall.

I launched Observare in April — bundled ops monitoring for solo devs and small agencies (uptime, SSL expiry, ports, cron heartbeats, a Linux agent for private networks, Stripe webhook logging, status pages). One plan, £5/month, 7-day free trial.

Four months later: zero signups.

The product wasn't the problem — I use it to monitor its own infrastructure every day. The traffic wasn't zero either. The problem was the first thing every visitor hit: a card details field on the signup form.

I'd gone card-up-front deliberately — it filters spam accounts and converts trials automatically on day 7. Standard advice. But that advice comes from companies with brand trust. Nobody hands card details to a £5/month site they found an hour ago, run by someone they've never heard of. I wouldn't either. Every argument for card-up-front assumes the visitor already trusts you; mine don't yet.

So I rebuilt the funnel:

- Signup is now name, email, password. No payment step at all — Stripe isn't even loaded on the marketing site any more.

- The trial lives in my own database, not in Stripe. A small background worker handles the lifecycle: reminder email 2 days before the end, then if there's no subscription, monitoring pauses — the account and all its config are kept.

- Card entry moved inside the product, via Stripe's hosted Checkout, at the moment someone decides to stay. Subscribe mid-trial and the remaining free days are honoured — the card isn't charged until the trial would have ended anyway.

- Expired ≠ deleted. A paused account resumes with one click, weeks later if need be. Abandoned accounts get purged on a documented schedule instead of rotting forever.

The subtle bit that took the most thought: with a hosted checkout, "user clicked subscribe" and "user actually subscribed" are different states. Someone can open the checkout page, get a Stripe customer created, then close the tab. If your code treats "has a Stripe customer" as "is a paying user", that person gets a free trial that never expires. The rule that fixed it: a user belongs to Stripe only when a subscription exists, not a customer.

Trade-off I've accepted: spam/drive-by signups get 7 days of free monitoring now. Rate limits and the purge policy cap the damage, and honestly — if the alternative filter was also filtering out 100% of real customers, it wasn't a filter, it was a wall.

The new funnel went live this week. I'll report back with whether "no card required" actually moves the number that matters.

Site: observare.co.uk — curious what other bootstrappers found when they dropped card-up-front: did trial abuse actually materialise, or is it mostly a myth at small scale?

posted toAvatar for product Observare
Observare