Full SaaS onboarding system: welcome copy, setup microcopy, 5-email drip, upgrade nudge, sticky-points checklist, and activation metric.
Many products lose new signups before their first useful moment, often because nobody designed the onboarding: a welcome screen, three setup steps and ship. This tool drafts the whole flow from your product, your first 'aha' moment and where users drop off: welcome screen copy that frames the first action, microcopy for each setup step, an email drip from day 0 to day 14, in-app upgrade nudges tied to value moments, a checklist of actions to track as candidates for 'sticky' behaviour, and an activation metric written as a measurable threshold. The thresholds are starting hypotheses: confirm them with your own data.
Brief used: “Product: Tablecloth, a schema migration tool for Postgres. Free tier covers 3 databases, Pro $49/mo for unlimited + team features. Target user: backend engineer at a Series A-B startup. First aha moment: running your first migration and seeing the visual diff. Common drop-off: users connect a database, then bounce before running the first migration. Voice: precise, dev-flavored, no marketing fluff.”
## Welcome screen
**Header:** Connect a database. We will not migrate anything yet.
**Body:** Drop a read-only connection string. We will scan your schema and show you what we see. No migrations run until you press a button labeled "run migration."
**Primary CTA:** Paste connection string
**Secondary:** Use a demo database instead
## Setup steps
**Step 1: Connect database** (1 of 4)
- Header: Paste a Postgres connection string
- Hint: We only need SELECT on `information_schema`. Read-only.
- Primary: Connect
- Skip: Use demo DB
**Step 2: Pick a baseline** (2 of 4)
- Header: Which migrations are already applied?
- Hint: We will assume everything currently in your schema is the baseline. You can change this later.
- Primary: Set baseline as current
**Step 3: Write your first migration** (3 of 4)
- Header: Add a column, drop a table, whatever
- Hint: This is a dry-run. We will show the diff before anything runs.
- Primary: Generate diff
**Step 4: Review the diff** (4 of 4, the aha moment)
- Header: Here is what would change
- Hint: This is the visual diff. Run it on staging first.
- Primary: Run migration
- Secondary: Save as draft
## Email drip
**Day 0 (instant): subject:** You are in. One thing.
> Connect a database in the next 10 minutes and the first migration is on us. [Connect]
**Day 1: subject:** Did the connection work?
> If the connection string failed, it is probably the SSL flag. Reply and I will look. {{your_name}}
**Day 3: subject:** the visual diff is the thing
> Most people sign up, connect, and bounce before running the first migration. The diff is the part that is actually useful. 90 seconds. [Try it]
**Day 7: subject:** still worth a look?
> If Tablecloth is not for you, hit reply and tell me why; it genuinely helps. If it is, here is the team-features walkthrough. [Loom]
**Day 14: subject:** last one
> Closing your account in 30 days unless you log in. Free tier is forever once you run one migration. [Run one now]
## In-app upgrade nudge
**Trigger:** User runs 3rd migration on 3rd database
**Placement:** Toast bottom-right, dismissible
**Copy:** "You are on the 3-database limit. Pro is $49/mo for unlimited + team review. Upgrade"
## Sticky-points checklist
Actions to track as candidates for your activation definition (confirm with your retention data):
1. Connected a real (non-demo) database
2. Generated at least one diff
3. Ran at least one migration
4. Invited a teammate OR connected a second database
## Activation metric
**Activated user:** Ran at least one real migration within 5 days of signup.
This is the threshold to track. Below this, the product has not delivered its first unit of value. Above it, retention curves flatten.Static example. Your own run calls Claude live with your brief.
Founders of self-serve SaaS products with a free trial or freemium model who suspect their activation rate is the bottleneck. Works for tools targeting developers, marketers, ops teams, or solo creators. Especially useful if you are about to ship onboarding v2 and want copy and structure before you brief design.
A full onboarding system in structured markdown. Welcome screen copy with the first-action CTA explicitly chosen. Three to five setup step screens, each with a header, hint text, primary button label, skip option, and progress indicator copy. Email drip for days 0, 1, 3, 7, and 14, each with subject line, preview text, body copy, and CTA. In-app upgrade nudge copy with placement notes and trigger conditions tied to value moments. A checklist of 4 to 6 actions to track as candidates for predicting retention, to confirm with your data. An activation metric defined as a measurable threshold (e.g. "created 3 projects in the first 5 days"). Everything in copy-paste form ready for design and engineering.
You shipped v1 in a weekend a year ago and it has been quietly hemorrhaging users. Get the full content rewrite before you brief design.
You know you need one but every framework you read uses different terms. Get a measurable threshold tied to your specific product.
Use the day-3 and day-7 emails as a reactivation sequence for the 6 months of signups who never completed setup.
Hand the copy and structure to a designer and skip the back-and-forth of figuring out what each screen should say.
No: this is copy and structure. Hand it to a designer and skip the discovery round.
The copy works anywhere. Subject lines, preview text, body and call to action are formatted to paste into Loops, Customer.io or whatever you use.
From the first 'aha' moment you describe in the brief. The threshold (for example '3 migrations in 5 days') is a starting point you adjust once you have data.
Yes, with caveats. The structure transfers but B2C usually wants warmer voice and tighter emails. Mention B2C in the brief and the output adjusts.
The day-14 email functions as a trial-end / reactivation nudge. If you need a dedicated paywall sequence, that is closer to instant-email-sequence.