YouLetter Case Study - Mason Mitchell
← Back to Portfolio
AI Product · Case Study
YouLetter

I built this from scratch — no co-founder, no template, no agency. The idea started from a real frustration with newsletter overload and turned into a working product in six weeks.

View Live Product →
Role
Founder & Product Owner
Timeline
6 Weeks to MVP
Status
Beta · Ongoing
Cost Per Send
$0.05

The Problem

I had 11 newsletter subscriptions and read maybe two of them

That was the starting point. Not a market report — a real habit I noticed in myself and confirmed in almost everyone I talked to.

What's actually broken

Subscribing to newsletters feels productive. Keeping up with them doesn't. They pile up, subject lines blur together, and eventually you stop opening them — even the good ones.

Existing tools don't solve it. RSS readers just add more sources to manage. Aggregators give you the same generic feed as everyone else. Neither adapts to what you actually care about this week.

Why the timing made sense

  • LLMs finally make per-user content generation affordable at scale
  • 250M+ newsletter subscribers globally, growing 15% year over year
  • API costs dropped roughly 10x in two years
  • No clear winner in AI-personalized newsletters — the space was open
  • Most people I talked to immediately said "I'd use that"
The Core Insight

People don't need more newsletters. They need one that was actually written for them. YouLetter flips the model — tell it what you care about, it handles everything else.

8–12
Newsletter subscriptions the average professional has. They actively read about two.
45 min
Weekly time spent skimming and deleting instead of reading something useful.
$0.05
What it costs to generate a full personalized newsletter. That's what made this viable.

Research

I talked to people before I wrote any code

Spoke with professionals in tech, finance, and healthcare about how they actually consume content. A few things came up in almost every conversation.

What users kept saying

  • They want control over topics — not a black box they can't adjust
  • Fine with AI doing the curation as long as the output is good
  • Source attribution matters — they need to be able to verify things
  • They read on their phone, usually during a morning commute
  • Onboarding has to be fast — more than two minutes and they're gone

Business signals

  • About 70% of conversations landed on $10–15/month as a fair price
  • Email open rates on personalized content run 65%+ — strong natural retention
  • People share newsletters they like, which is free distribution
  • Multiple revenue paths: freemium, B2B licensing, API access
  • Churn stays low in personalization products when the output stays relevant
The Surprise

Nobody said "I want an AI newsletter." They said "I just want to open my inbox and find something worth reading." The AI is a detail — the value is the output. That realization shaped every UX decision I made.

What I ruled out before building

RSS aggregation

I prototyped this first. The problem: users still have to manage sources. The burden just shifts from inbox to feed. Not a real fix.

Social curation

Following what other people find interesting doesn't fix personalization. It creates another popularity contest with a different interface.

Newsletter directory

More subscriptions is the opposite of what users need. Discovery was never the bottleneck — overwhelm was.

Key Decisions

What I built, deferred, and cut — and why

These are the calls I made during scoping. I've tried to write them the way I'd explain them in a room, not just list what I decided.

Built for MVP

Build

On-demand generation, not scheduled sends

Scheduled sends need background workers, which adds infra complexity before I know if anyone wants the output. On-demand lets me answer the real question first: is the newsletter actually good? If users generate it three times without being prompted, then I build automation.

Build

Claude for generation + Tavily for search, not one or the other

Claude alone doesn't have live news. A search API alone gives you raw results, not readable prose. Together they produce something that feels like a real newsletter — current, well-written, and on topic.

Build

Email delivery, not an in-app reader

Newsletters live in email. Building a custom reader creates a new surface to maintain and asks users to change a habit they already have. SendGrid handles delivery and I stay focused on content quality.

Build

AI disclosure and source attribution from day one

Trust is the whole product. If users find out mid-use that they couldn't verify sources or didn't know it was AI-generated, I've lost them permanently. Transparency isn't a legal checkbox — it's a retention strategy.

Deferred to Phase 2

Defer

Scheduled automated sends

If users are manually generating three or four times, that's the signal to automate. I don't want to build infrastructure for a habit that hasn't been validated yet.

Defer

Analytics dashboard

Open rates and click data are meaningful at scale. With fewer than 100 beta users, qualitative feedback will tell me more, faster.

Defer

Paid tiers and B2B licensing

Willingness to pay is validated — that came up clearly in research. But building billing infrastructure before proving retention is backwards. I want 50 beta users with strong NPS first.

Cut entirely

Cut

Social sharing features

YouLetter is a personal utility, not a social platform. Adding sharing mechanics pulls the product toward a completely different set of incentives and design problems.

Cut

Custom brand templates

That's a B2B feature in a product targeting individual users. Adds UI complexity that doesn't serve anyone in the beta cohort.

MVP Scope

Four things that prove the idea — nothing more

I scoped everything around one question: can a user go from signup to a newsletter in their inbox in under 30 seconds? Everything that didn't serve that got cut.

The Core Flow

Pick topics. Choose tone. Hit generate. YouLetter pulls current news, writes a full newsletter, and sends it to your inbox. No manual curation. No template to fill out. Just relevant content, fast.

Preference Setup

Topic selection, tone preference, and frequency — two-minute onboarding with smart defaults so users aren't starting from blank.

AI Generation

Claude searches for current news via Tavily and writes a 3–4 section newsletter with real sources and links, matched to the user's tone preference.

Email Delivery

SendGrid sends a formatted HTML email with AI disclosure and source attribution built in. CAN-SPAM compliant from the start, not patched in later.

Subscription Management

Users can update preferences, pause, or unsubscribe. Terms of Service and AI disclaimer are woven into the product, not buried in a footer.

How I'll know if it's working

Green flags

  • Newsletter generated in under 30 seconds
  • 60%+ open rate on generated content
  • 50 beta users in the first month
  • NPS of 30+ from early users
  • Unsubscribe rate below 5%

Red flags that would change direction

  • Open rates below 30% — the content isn't landing
  • Users generate once and don't come back — no repeat value
  • Cost per generation above $0.10 — economics break
  • NPS below 0 — something fundamental is wrong

How It's Built

Every stack choice was made to move fast and stay cheap

I wasn't trying to build for scale on day one. I was trying to ship something real without betting on infrastructure I hadn't earned yet.

Frontend

  • Next.js 13+ (App Router) — fast, Vercel-native, production-ready out of the box
  • TypeScript — saves time debugging API response shapes, especially across multiple integrations
  • Tailwind CSS — I can move quickly without writing custom CSS for every component
  • JWT auth — stateless, simple, no session management overhead

Backend & Infrastructure

  • Next.js API routes — serverless, no separate backend service to run
  • PostgreSQL on Railway — managed database, no ops work at this stage
  • Claude API — best prose quality per dollar at the volume I'm running
  • Tavily API — built for LLM pipelines, real-time search results
  • SendGrid — reliable delivery, compliance tooling included, free tier covers early beta
  • Vercel — zero-config deploys, preview environments on every branch
The Economics

Claude runs about $0.03–0.05 per generation. Tavily adds ~$0.01. SendGrid covers the first 100 sends/day free. Total cost to deliver one newsletter: under $0.06. At $12/month with four newsletters per month, that's north of 98% gross margin before fixed costs. The unit economics work.

How it came together

Wk 1–2

Research & Architecture

User interviews, competitive landscape, stack decision, database schema, API selection and testing.

Wk 3

Auth + Preference Flow

Authentication, onboarding, topic and tone preference storage, subscription management.

Wk 4

Generation Pipeline

Claude + Tavily integration, prompt engineering, response parsing, HTML newsletter templating.

Wk 5

Email Delivery + Compliance

SendGrid integration, email formatting, AI disclosure, unsubscribe flow, Terms of Service.

Ongoing

Beta & Iteration Live

QA, beta outreach, user feedback loops, cost optimization, and roadmap updates based on what's actually being used.

Scroll to Top