There's one line we repeat to the whole cohort: prototype by month 1, market by month 6. Here's what that means in practice.
Month 1 — We code, we don't pitch
No three-month ideation phase. If the idea isn't clear enough to start coding in month 1, it isn't ready. We frame the problem, we pick the stack, and we commit. First deploy in week 4.
# Typical structure of an incubated project, week 1
mkdir o3studios && cd o3studios
git init
bun create nuxt my-product
git push -u origin main
# The repo exists before the first wireframe is done.
Months 2-3 — Iterating in public
The product is live, nearly empty, and out there. We iterate with 5 real users, not with panels. The feedback that counts comes from actual use, not from forms.
By this point, the product must already:
- Have a name
- Have a domain
- Have an onboarding that takes under 30 seconds
- Have at least one real transaction completed end to end
Months 4-5 — Polish, don't pivot
This is where most startups drift. They pivot instead of polishing. At O3, the rule is simple: no pivoting before month 6. Before that, we don't know what we have yet.
We polish. Performance, reliability, experience. Bugs become the absolute priority. Secondary features get cut without regret.
Month 6 — Market
By month 6, the product has its first real paying user, or its first concrete beneficiary if it's gov-tech / ed-tech. That means:
- A purchase or signup flow that works 100% of the time
- Simple pricing or a clear usage framework
- One identified acquisition channel (one, not ten)
- A support loop that responds within 24 hours
If those four points don't hold by month 6, we lost time somewhere in the previous five months. We look at where, we write it down, we learn for the next cohort.
This timeline isn't a marketing promise. It's what we've held to since the first cohort. When we miss, we write that too.