You can deploy to production on a Friday afternoon without blinking. But the moment someone says "launch it", you open a blank tweet, stare at it for twenty minutes, and go back to refactoring.
If that's you, this post is for you. Treat the launch like any other release: break it into small, testable tasks, give each one a day, and stop when the checklist is green. No growth hacks, no "10x your audience" threads. Just seven days of work most developers can do in an hour or two after their normal job.
Disclosure: I'm Almas, founder of DodoLaunch, a free weekly launch board for SaaS, AI tools and Mac apps. It shows up once near the end. Everything else here works no matter where you launch.
The rules for this week
- One task per day. Each day has a "definition of done". Hit it, close the laptop.
- No new features. Feature freeze starts on Day 1. Bugs only.
- Everything gets measured. If you can't tell where a signup came from, the launch didn't teach you anything.
Day 1: Write the one sentence
Your landing page, every directory listing and every reply you write next week will lean on a single sentence: who it's for and what it does.
A formula that works for dev-built products:
[Product] helps [specific person] [do a job] without [annoying thing].
Write five versions. Read each one aloud to someone who isn't a developer. Keep the one they can repeat back without asking a follow-up question.
Then write three lengths of description, because launch sites ask for all of them:
- Short (~60 characters): the tagline.
- Medium (~160 characters): tagline plus the main benefit.
- Long (~500 characters): the problem, how you solve it, who it's for, and what it costs.
Save these in a LAUNCH.md at the root of your repo. Yes, really. You'll paste from it all week, and it's version-controlled.
Done when: LAUNCH.md has a tagline, three descriptions and a one-line pricing summary.
Day 2: Make the assets once
Most launch forms want the same things. Produce them in one sitting:
- [ ] Square logo, 512×512 PNG
- [ ] Social image, 1200×630 (this is also your
og:image) - [ ] 3–5 screenshots of the product doing the job, not an empty dashboard
- [ ] A 30–60 second screen recording of the core flow
- [ ] A short "maker comment": two or three sentences on why you built it
Dev tip: script your screenshots. A Playwright or Puppeteer script that logs into a seeded demo account and captures the same views means you can regenerate every image after a UI tweak instead of redoing them by hand.
Done when: an /assets/launch folder holds everything above, named sensibly.
Day 3: Instrument before you announce
This is the day developers are best at and most likely to skip. Launch traffic is only useful if you can tell it apart.
Tag every link you'll share. A tiny helper keeps the naming consistent:
// utm.js
const base = "https://yourapp.com/";
export const utm = (source, medium = "launch", campaign = "launch-week") =>
`${base}?utm_source=${source}&utm_medium=${medium}&utm_campaign=${campaign}`;
// utm("reddit"), utm("newsletter", "email"), utm("showhn", "forum")
Track one conversion event. Not twenty. Pick the action that means "this person got value" (signup, first project created, extension installed) and fire it from your analytics tool of choice.
Check your meta tags from the command line so you see what crawlers see:
curl -s https://yourapp.com | grep -Eo '<meta (property|name)="(og:|twitter:|description)[^>]*>'
If og:image or og:title is missing, every link preview you post this week will look broken.
Done when: you can open your analytics, filter by utm_source, and see a test visit you made yourself.
Day 4: Run a friction audit
Pretend you're a stranger who just clicked your link on a phone.
- [ ] Open the site in a private window. Is the value clear without scrolling?
- [ ] Sign up with a fresh email address. Does the confirmation email arrive? Does it land in spam?
- [ ] Do the same on a real phone over mobile data.
- [ ] Is pricing visible in plain text, including what the free plan covers?
- [ ] Trigger your error states: wrong password, expired link, empty form.
- [ ] Watch your logs while you do all of this. Anything red gets fixed today.
Launch traffic is impatient. A broken password-reset email costs you more next week than any missing feature.
Done when: you've completed signup end to end on desktop and mobile with zero "hmm, that's odd" moments.
Day 5: Line up the first 20 people
Algorithms on launch sites tend to reward early, genuine activity, and genuine activity comes from people who already care. You don't need an audience. You need a short list.
- Write down 20 people who have the problem your product solves: former colleagues, people who replied to a forum post, beta users, that one friend who complained about it.
- Send each one a personal message. Not a mass email. Tell them what you built, why you thought of them, and that you'd value honest feedback.
- Don't ask for upvotes. Many communities (Hacker News in particular) explicitly ask you not to recruit votes, and people can tell. Ask for feedback instead; the engagement follows.
Done when: 20 personal messages sent, replies tracked in a simple list.
Day 6: Pick your launch spots and pre-write everything
Choose where you'll show up, and write the posts now, while you're calm:
- One main launch board for the week.
- One developer community where your users actually hang out (a subreddit, Discord, a forum, or Show HN if people can try your product without a signup wall).
- Your own channels: X, LinkedIn, a newsletter if you have one.
For each one, pre-write the post in LAUNCH.md and adapt it to the venue. A Show HN post explains how and why you built it; a subreddit post shares a lesson; a launch board listing focuses on the job the product does.
Also prepare three canned-but-honest replies for the questions you'll definitely get: "How is this different from X?", "What does it cost?", and "Is my data safe?" You'll still personalise them, but you won't be writing from scratch at 1 AM.
Done when: every post is drafted, every link has its own UTM tag, and your launch board submission is done.
Day 7: Launch, then stay in the thread
Launch day is mostly customer support with a nicer name.
- [ ] Publish your posts in the order you planned.
- [ ] Reply to every comment within a few hours. Short, specific, human.
- [ ] Keep a
feedback.mdopen and log every feature request and bug, with who asked. - [ ] Fix one small thing people mention and say so in the thread. "Fixed, thanks for flagging" builds more trust than any landing page.
- [ ] At the end of the day, check analytics by
utm_source. Write down which source sent people who actually signed up, not just visited.
Done when: every comment has a reply and you know your best traffic source by name.
After the week: the boring part that compounds
A launch isn't a single day; it's the start of a paper trail. In the weeks after:
- Submit to a handful of relevant directories each week, using the copy in
LAUNCH.md. - Check whether each listing link is followed. Right-click the link, choose Inspect, and look for
rel="nofollow",rel="ugc"orrel="sponsored". - Turn the most common launch questions into an FAQ section on your site.
- Email the people who signed up and ask one question: "What almost stopped you from signing up?"
Where DodoLaunch fits in this plan
I built DodoLaunch around the way this checklist works, so it slots into Day 6:
- Launches run for a full week, Monday 00:00 UTC to Sunday, so you don't have to cram everything into one day.
-
Submitting is quick: you paste your URL and it drafts the listing (name, tagline, description, screenshots, category, pricing) for you to check and edit. Your
LAUNCH.mdcopy makes that step trivial. - Every product keeps a permanent page after launch week, with a link to your site. On the free tier the link is nofollow, or dofollow while the DodoLaunch badge is on your site; the paid Boost and Pro tiers include a permanent dofollow link.
- The board is ranked by trust-weighted upvotes, and paid launches sit in a separate, labelled Featured lane, so money doesn't buy organic rank.
- You get bot-filtered visitor numbers, and an optional pixel can count signups, which pairs nicely with the Day 3 instrumentation.
- There are 25 free launch slots every week. Free submissions are reviewed in order, usually within about three days, so submit on Day 6 or earlier.
There's also a free launch checklist tool on the site if you prefer ticking boxes in a browser to a markdown file.
👉 Launch free on DodoLaunch
TL;DR checklist
| Day | Task | Done when |
|---|---|---|
| 1 | Positioning | Tagline + 3 descriptions in LAUNCH.md
|
| 2 | Assets | Logo, OG image, screenshots, demo video ready |
| 3 | Instrumentation | UTM helper + one conversion event verified |
| 4 | Friction audit | Clean signup on desktop and mobile |
| 5 | First 20 people | 20 personal messages sent |
| 6 | Pre-write + submit | Posts drafted, links tagged, board submitted |
| 7 | Launch | Every comment answered, best source identified |
Which of these seven days do you usually skip when you ship something? Tell me in the comments, and what it cost you.


Top comments (0)