Starter Story · 2026-10-28
I Make $30K/Month From the Most Boring Website on the Internet
Jake, a finance grad who taught himself to code, built Excel Exercises, a 'Duolingo for Excel' site teaching functions and shortcuts through hands-on in-browser exercises. Built as a nights-and-weekends side project 5-6 years ago, it got its first $50 sale before he promoted it. A 1,500-2,000-word landing page drove SEO growth to $10K/month; paid ads plus university/corporate team deals took it to $30-35K/month with ~2,500 paying subscribers. Segmenting LTV by monthly vs annual led him to double the monthly price, after which growth took off.
Play the episode11 tactics
Numbers mentioned
| Who | Metric | Value | Context | When |
|---|---|---|---|---|
| Excel Exercises | revenue | USD 30K–35K/month approximate | 0:57 | |
| Excel Exercises | revenue | USD 30K/month approximate | Past 4 weeks, 'a little over' $30K; shown on dashboard | 2:22 |
| Excel Exercises | users | 50K visitors/month approximate | Website visitors over the past 4 weeks | 2:22 |
| Excel Exercises | paying users | 2,500 subscribers approximate | Active paying subscribers | 2:22 |
| Excel Exercises | growth rate | +5 x approximate | Growth over the two years since going full-time | 0:57 |
| Excel Exercises | revenue | USD 50/one-time | First sale, before any promotion | 4:57 |
| Excel Exercises | cost | USD 100/month approximate | GCP hosting bill, usually under $100/month | 6:23 |
| Excel Exercises | cost | USD 35/month | SendGrid email marketing, the only regular recurring expense | 6:23 |
| Excel Exercises | ltv cac | 3 x approximate | Blended average LTV to average CAC across all subscriptions, before segmenting | 11:19 |
| Excel Exercises | payback period | 4–5 monthsper customer approximate | Monthly-plan customers before the monthly price was doubled | 11:50 |
| Excel Exercises | price | +100% | Monthly plan price doubled; annual price unchanged | 11:50 |
| Excel Exercises | count | 50 seatsper deal illustrative | Example size of a team signup request from a boss | 8:26 |