Why I picked Stripe + Supabase + Resend (and what I rejected) | steep
Why I picked Stripe + Supabase + Resend (and what I rejected)
stackcomparisonstripesupabaseresend
## Payments: Stripe
**What it beat**
- **PayPal**: ancient API, hostile to indie devs, terrible test mode
- **LemonSqueezy / Paddle**: handle merchant of record (saves you tax compliance work). Strong contender for non-US sellers. But you pay them ~5% on top of card processing — that adds up fast at scale.
- **GoDaddy Payments**: tiny ecosystem, niche
**Why Stripe won**
- Best test mode of any payment provider, period. The sandbox lets you simulate every edge case (3D Secure failures, network timeouts, late captures) without writing mocks.
- Webhook signature verification is built into the SDK. One line of code beats every other provider's manual signature gymnastics.
- Stripe Tax is a checkbox once you set up nexus states.
- Refunds are one API call. Disputes are surfaced in the dashboard.
- The free + paid tiers scale predictably (~3% + 30¢ per transaction, no monthly minimum).
**What I gave up**
- US-centric. International coverage is great but tax stuff is much easier in the US.
- ~3% transaction fee — not zero. LemonSqueezy's 5% includes tax compliance which is a real value if you do not have a nexus situation figured out.
## Database + auth: Supabase
**What it beat**
- **Firebase**: vendor lock-in, schema-less (more flexible early, more debt later)
- **PlanetScale + custom auth**: more pieces to assemble, no built-in auth
- **Drizzle + Clerk**: nice combo but two services to manage; Clerk gets pricey at scale
- **Self-hosted Postgres + custom auth**: too much work for a solo dev launching
**Why Supabase won**
- Postgres. Real Postgres, not a wrapper. RLS policies enforce ownership at the database layer — even buggy app code can not leak across users.
- Auth, storage, realtime, edge functions all in one. One vendor relationship, one billing line.
- Free tier is generous: 500 MB database, 1 GB storage, 50,000 monthly auth users.
- Migrations are SQL files in your repo. No vendor-locked DSL.
- The Custom Access Token Hook (Postgres function that runs on JWT signing) lets you cache role checks in claims without writing a microservice.
**What I gave up**
- Free tier projects pause after 7 days idle. Mild annoyance, but acceptable for the price.
- Some advanced auth flows (custom JWT claims, MFA UI) require dashboard config rather than API. Documented but a learning curve.
- US-only on free tier; multi-region is a paid plan thing.
## Transactional email: Resend
**What it beat**
- **AWS SES**: cheapest at scale but the worst UX I have ever encountered for indie devs. Configuring DKIM is a multi-step nightmare.
- **Mailgun**: solid but the dashboard feels stuck in 2014
- **SendGrid / Postmark**: good products. Postmark is my second choice.
**Why Resend won**
- Best DX of any email API. The Node SDK is one function, two parameters, a well-typed response.
- Domain verification is three DNS records and a clear UI. Other vendors make you feel like you are configuring a mainframe.
- React Email integration is excellent if you want to write templates as components instead of inline HTML.
- Free tier (100 emails/day) is enough to stress-test before paying.
- Audiences feature lets you do basic newsletter segmentation without setting up a separate Mailchimp.
**What I gave up**
- Volume pricing is mid-pack. AWS SES is dramatically cheaper at 100k+ emails/month.
- Newer vendor — less battle-tested for edge cases like bounces from obscure providers.
- Free tier only delivers to your registered Resend email until you verify a domain. Surprised me on day one.
## The bigger lesson
The specific picks matter less than the principle: every dependency is a tax. Three vendors, each best-in-class at their slice, was cheaper in time and money than any single all-in-one or any DIY assembly of more vendors. The temptation as a developer is to add tools because each one looks good in isolation; the discipline is to keep the count small.
If I were starting a non-US-focused store today, I would seriously consider LemonSqueezy as a fourth bundle (payments + tax + invoicing). If I were starting a high-volume B2B email-heavy product I might pick Postmark over Resend. For an indie-dev digital products store in 2026, Stripe + Supabase + Resend is hard to beat.