I just added this to a comment so sharing for visibility:
Billing has Stripe. Analytics has Amplitude. Feature flags have LaunchDarkly. Etc. But the system that decides when to upsell a user, what usage limit to enforce, or which paywall variant to show? That usually lives in a tangle of product code, feature flags, and duct tape...
A few things that have came up:
- The fragmentation problem is worse than most teams realize. Entitlement logic ends up duplicated across billing, product code, and feature flags. A simple pricing test that should take a day takes weeks because three systems need to stay in sync. My CTO (ex-Atlassian, Dropbox) is really good at explaining the risks/headaches from this "brittleness" to technical folks!
- Mobile solved this years ago. RevenueCat and Superwall own the monetization layer for iOS/Android apps. Web SaaS has no equivalent — most teams are still stitching it together manually. The above content is really resonating with an ex-Revenue Cat guy who is now Head of Product at a web SaaS business.
- The main benefit of getting it right (in-house or via tooling) is experiment velocity