Plans, add-ons, limits, and feature flags for SaaS and AI products, defined as data and enforced inside your product. Works with Stripe.
Ask anything about your accounts. A research run uses up to 25 credits.
Every if plan == "pro" becomes a catalog entry. New tiers and limits ship without a deploy.
Sales promises become company overrides with an end date, not hand-edited rows someone has to remember.
Stripe says Pro, the product shows Pro. A two-way sync replaces the webhook glue.
A usage warning in your app, a webhook at the soft limit, and a hard stop you never had to code.
From a feature in your product to a plan a customer can buy, in four steps and one check.
Boolean (SSO on or off), event-based (API calls a month), or trait-based (seats).
Feature types →One plan per company, any number of add-ons. Where they overlap, the most permissive entitlement applies.
Concepts →Pass a company key and a flag key. Schematic already knows the plan, overrides, and traits.
Flags →Map Stripe products to plans. A subscription provisions entitlements; a cancellation removes them.
Provisioning →import { useSchematicFlag } from "@schematichq/schematic-react"const canExport = useSchematicFlag("bulk-export")if (!canExport) {return <UpgradePrompt feature="bulk-export" />}// acme-robotics → true via plan entitlement (Pro)
One flag check. The answer already reflects the company's plan, overrides, and usage.
Under 50 msPlans, limits, flags, and overrides become data you change without a deploy.
The SDK keeps your catalog, overrides, and usage in process and decides each check there. Changes stream to your app, so a check reflects them in real time.
Warnings, limit webhooks, and preflight checks.
A boolean entitlement is a feature flag that reads the subscription. Turn a feature on for a plan, an add-on, or one company.
Grant one company an override with an end date, or a custom plan, without a ticket.
Legacy and current pricing run side by side. You decide if and when each company moves.
A two-way sync keeps Stripe and Schematic aligned. Auth and CRM data arrive through the integrations below.
Schematic syncs with Stripe, no migration or parallel billing required.
Entitlements are automatically provisioned according to the subscription.
Plan changes made in Schematic update the subscription. Metered usage lands as meter events.
Most teams arrive with a plan column and a pile of if-statements. Move them one check at a time, with the old branch still in place until the new one is live.
// settings/sso.tsxconst plan = company.plan // from your own tableconst legacy = company.legacyTier // the 2023 plansconst sso = plan === 'enterprise' || plan === 'enterprise-legacy' || legacy === 'business' || company.ssoOverride // added for one dealconst seatCap = plan === 'enterprise' ? Infinity : plan === 'team' ? 25 : company.seatCapOverride ?? 5const onTrial = company.trialEndsAt > Date.now()const canExport = sso || onTrial || company.exportBetaif (company.seats >= seatCap) { throw new SeatLimitError(plan)}// every new tier, every exception, a deploySame catalog, same check. Four ways teams use it in production.
Gate SSO and audit logs to Enterprise, cap seats on Pro, and change either without a deploy.
Give a prospect a time-boxed run of the tier above. Access reverts on its own; a closed deal converts.
Track usage per user, people and agents alike, against one company pool. Preflight expensive runs.
A negotiated contract becomes a custom plan with its own limits, synced to its Stripe subscription.
“We chose Schematic because it provided the flexibility to launch, package, meter, and monitor features from one place without having to continue maintaining a homegrown system or constantly involve engineering.”

Pricing and packaging were hard-coded in application code, and a new tier took over three months to launch.
Read the Automox story →Build it, bolt it onto Stripe, stretch a flag tool, or use Schematic. Billing tools and release flag tools do different jobs. Entitlements sit between them.
Build in-house | Stripe Billing + Entitlements | Release flag tool | ||
|---|---|---|---|---|
Plans, add-ons, and limits as config | Schematic✓Yes, one catalog | Build in-houseYou build it | Stripe Billing + EntitlementsFeatures on products; limits in your code | Release flag toolLong-lived targeting on segments, maintained by hand or synced |
Runtime access check | Schematic✓One SDK call, under 50ms with local caching | Build in-houseYou build it and the cache | Stripe Billing + EntitlementsYour app provisions from a webhook | Release flag toolYes, built for releases |
Usage limits per plan | Schematic✓Event- and trait-based | Build in-houseYou build it | Stripe Billing + EntitlementsIn your code | Release flag toolNot in the flag model |
Overrides with expiry | Schematic✓Yes | Build in-houseYou build it | Stripe Billing + EntitlementsEdit the subscription | Release flag toolPer-customer targeting |
Plan versions and migration | Schematic✓Choose who moves | Build in-houseYou build it | Stripe Billing + EntitlementsFeature changes apply next billing period | Release flag toolA different job |
Credits held for in-flight work | Schematic✓Leases and reservations | Build in-houseYou build the ledger | Stripe Billing + EntitlementsNot built in | Release flag toolNot in the flag model |
Spend caps per hour or per user | Schematic✓Hourly, daily, and per-draw | Build in-houseYou build it | Stripe Billing + EntitlementsNot built in | Release flag toolNot in the flag model |
Trials that convert or revert | Schematic✓Converts or moves to a fallback plan | Build in-houseYou build it | Stripe Billing + EntitlementsSubscription trials; access in your code | Release flag toolTargeting removed by hand |
Stripe subscription sync | Schematic✓Two-way | Build in-houseYou build the webhooks | Stripe Billing + EntitlementsNative | Release flag toolNot built in |
Best for | SchematicAccess tied to what customers pay | Build in-houseUnusual needs, spare engineers | Stripe Billing + EntitlementsPayments, invoices, and tax | Release flag toolRelease safety and experiments |
“We were looking for an entitlement platform, and if we had to build one ourselves we would have to relearn all the lessons Schematic has over the years. It is not really Schematic versus anyone else. It is Schematic versus being dumb and building it.”
Fast, secure, reliable.
Short answers, each one backed by the docs. Still stuck? The docs and the demo both go deeper.
Start free with unlimited feature flags and up to 10 monetized subscriptions. Paid plans from $400 a month.
Pick a time with the Schematic team. 30 minutes, straight to your questions.