An idea. A problem.
A team of three.
Day one.
180 days.
One commit at a time.
- Day 1 First commit. A shared doc. No product yet.
- Day 14 First user signs up. A friend, but still.
- Day 60 1,000 users. Word of mouth. No marketing spend.
- Day 90 Featured on Product Hunt. 10,000 users overnight.
- Day 120 First enterprise customer. First real contract.
- Day 180 50,000 users. 47 countries. Series A closed.
By the numbers.
50,000
Monthly Active Users
47
Countries
12
Enterprise Customers
180
Days to Series A
The feature that changed everything.
// Real-time collab — the feature that
// drove 10× retention in week 9.
function syncCursor(editor, socket) {
editor.on('cursorActivity', () => {
socket.emit('cursor', {
user: session.id,
position: editor.getCursor(),
color: palette[session.index],
});
});
socket.on('cursor', ({ user, position, color }) => {
if (user === session.id) return;
drawRemoteCursor(position, color);
});
}
It shipped.
50,000 customers. 47 countries.
Three people. One document. 180 days.