Every product has dozens of build-vs-buy decisions. Authentication, payments, email, analytics, file storage, search — the list goes on. Making the wrong call either wastes months building commodity infrastructure or locks you into a vendor that doesn't fit.
Here's the framework we use at Yuke to make these decisions quickly and consistently.
The Core Question: Is It Your Moat?
Your moat is the thing that makes your product defensible — the unique value that competitors can't easily replicate. Everything else is plumbing.
Build your moat. Buy your plumbing.
If authentication isn't what makes your product special (it almost never is), use Auth0 or Clerk. If payments aren't your differentiator (unless you're a fintech), use Stripe. Free your engineering time for the features that actually matter.
The Decision Matrix
For each component, ask these four questions:
1. Is it core to your value proposition?
If yes, build it. You need full control over the thing that defines your product. If Figma had used a third-party canvas library, they wouldn't be Figma.
2. Does an off-the-shelf solution cover 80%+ of your needs?
If yes, buy it. The last 20% of customization usually isn't worth 6 months of engineering. Wrap the third-party service in an adapter layer so you can swap it later if needed.
3. Will the integration cost exceed the build cost within 2 years?
Sometimes vendor pricing doesn't scale with your business. If you're going to hit pricing tiers that make the vendor more expensive than a custom solution, plan the migration early — but still start with the vendor to validate the market first.
4. Does it require specialized expertise your team doesn't have?
Building a payment processing system from scratch requires deep knowledge of PCI compliance, fraud detection, and financial regulations. Unless you have that expertise in-house, the risk of getting it wrong far outweighs the cost of buying.
Common Decisions We See
| Component | Our Default | Why |
| Auth | Buy (Clerk/Auth0) | Commodity. Security-critical. Not your moat. |
| Payments | Buy (Stripe) | Regulatory complexity. Excellent ecosystem. |
| Email sending | Buy (Resend/Postmark) | Deliverability is hard. Don't DIY. |
| Analytics | Buy (PostHog) | Self-hostable, generous free tier. |
| Search | Depends | Postgres full-text for simple cases, Typesense for complex. |
| File storage | Buy (S3/Cloudflare R2) | Commodity infrastructure. |
| Core business logic | Build | This is always your moat. |
The Adapter Pattern
Whichever direction you go, wrap third-party services behind an interface. This lets you swap vendors without touching business logic. It takes an hour to set up and can save months of migration work down the road.
The Bottom Line
Default to buying. Only build when the component is genuinely core to your product's differentiation. Your engineering time is the most expensive resource you have — spend it where it creates the most value.