Three.js From Zero · Article s15-08
Selling a Paid Three.js Course
Selling a Paid Three.js Course is Article s15-08 of Three.js From Zero, a MasterAllArts free interactive lesson for artists learning creative 3D on the web.
Season 15 · Article 08 · Portfolio & Career
Bruno Simon's Three.js Journey reportedly does seven figures. That number isn't impossible to approach if you ship the right thing to the right people the right way. The economics, the platforms, the launch playbook.
The economics
A Three.js course at $99 with 1000 sales is $99k. With 5000, it's half a million. The maker's economics shake out roughly:
- Production — 100-300 hours for a real, polished course.
- Marketing — ongoing, 5-10 hr/week forever.
- Hosting / platform fees — 5-15% of revenue.
- Taxes — 25-40% in your country's bracket.
- Refunds — 2-5% of sales typically.
Net: a $99 course that sells 1000 copies nets you $50-70k after all costs. Realistic for someone with a small audience (~5k Twitter followers, an established blog).
Platforms compared
| Platform | Fee | Pros |
|---|---|---|
| Gumroad | 10% + Stripe | Easiest to launch. Bundle videos + downloads. Built-in coupon tools. |
| Lemon Squeezy | 5% + Stripe | Merchant of record (handles VAT). Cleaner checkout. |
| Teachable / Thinkific | 5-15% + monthly fee | Built for courses. Drip content, quizzes, certificates. |
| Self-host (Stripe + your site) | Stripe 2.9% only | Full margin, full control. Most work. |
Bruno self-hosts. Most beginners should not — the operational overhead (VAT, refunds, fraud, hosting reliability) is more work than producing the course. Start on Gumroad or Lemon Squeezy. Migrate later if it makes sense.
Pricing
Bruno charges ~$95 for a 90-hour course. That's roughly $1/hour of content, which is the price-anchor for tech courses.
Your launch price options:
- Below $30 — low-status. People assume it's a small/incomplete course.
- $50-100 — beginner-friendly. Wide reach. Good if your audience is students.
- $150-300 — premium. Smaller audience but higher conversion of qualified buyers.
- $500+ — enterprise / corporate training. Different market entirely.
You can also tier — $79 base, $149 with code/community, $299 with 1:1 review. Different psychology, different revenue.
The pre-launch list
Six months before launch:
- Pick a topic narrow enough to be the "best in the world" at. ("Three.js" is too broad. "Three.js shaders for designers" is right.)
- Publish free content weekly on that topic — articles, YouTube, tweets.
- Build an email list. Free content → newsletter signup. Aim for 500-1000 before launch.
- Talk publicly about building the course ("week 3 of recording — here's the shader chapter").
- Pre-launch the course at 30% off to your email list. 7-day window.
- Ship.
Launch week
- Day 0 (launch day) — email list, X/Twitter announcement, ProductHunt, HackerNews ("Show HN"), Reddit r/threejs.
- Day 1 — reply to every comment, every email. Build social proof.
- Day 3 — first testimonials. Get screenshots, share publicly.
- Day 5 — "ending tonight" launch-discount reminder.
- Day 7 — close the discount. Resume normal pricing.
Then sustain: monthly drumbeat content, occasional sales, affiliate program.
What sells the course
Buyers want:
- A clear outcome. "After 30 days, you'll have shipped X." Not "you'll learn Y."
- Social proof. 5-10 testimonials with names + photos visible on landing page.
- Free preview. Two full lessons unlocked. Bruno does this. So do all serious paid courses.
- A money-back guarantee. 30-day no-questions-asked. Refund rate stays low; conversion jumps.
Refunds, taxes, support
You will refund. Honor every request without arguing. Bad reviews from refused refunds cost more than the refund.
Taxes: VAT in EU, GST in some regions. If you sell internationally, use a merchant-of-record (Lemon Squeezy, Paddle) — they handle all of it. Self-host means you handle it.
Support: budget 5 hours/week. Most questions repeat — build a FAQ as you go.
Common first-time pitfalls
Exercises
- Validate a niche. Pick a Three.js sub-topic you're great at. Tweet about it weekly for a month. Track engagement — if people care, you have your topic.
- Build the landing page first. Outcome, curriculum, instructor, FAQ, testimonials (use placeholders for now), price, CTA. If this page doesn't excite YOU, the course won't sell.
- Pre-sell V0. 30 seats at 50% off, payment now, course delivered in 8 weeks. If you fill them, build it. If you don't, learn what's missing.
THE END
You've finished Three.js From Zero — 168 articles across 16 seasons. Foundation, depth, specialization, career. Most learners stop at S1. You went all the way. Now build something worth shipping.