Every credit comes back as content.
Instories is a top-ranked Reels and story-making app with 25 million downloads. Its users are not designers — they cannot fix a bad generation, only pay for another one. Instories put the Magic API behind its AI effects, and has run 57,432 generations through it.
57,432
generations delivered through Magic
25M+
app downloads
The client
Instories is one of the leading content-creation apps on the App Store — a template aggregator for Reels, stories and short-form video. Someone with no design skill opens it, picks a template, drops in a photo, and gets something worth posting. The app runs a library of 2,500+ templates and integrates several AI providers behind the scenes. Magic is one of them — and the one Instories buys credits ahead for.
A failed generation has no good outcome
Put a generative model in front of a professional and a bad output is an inconvenience — they re-prompt, they retouch, they move on. Put it in front of a consumer and there is no recovery. They can't fix the render. They can only pay for another one. Whichever way you monetise generation, that's the worst case. If credits are an allowance inside a subscription, every retry is pure cost of goods. You paid for compute that produced nothing, and the user still feels short-changed on credits. If you sell credit packs, retries look like revenue. They aren't. That's revenue extracted from frustration — and the churn, the refund requests and the one-star reviews about wasted credits come out of the same pocket. And predictability doesn't mean your users generate less. It means they spend the same credits on five different videos instead of five attempts at one. The volume doesn't fall — the yield rises.
Why Instories buys credits months ahead
Instories integrates several AI providers. The others are general-purpose models — you send a prompt, you get a sample, you hope. Magic is not that. Magic renders come out of purpose-built templates, so the output is known before it is generated. The user isn't rolling dice against a model; they are running a scene that was designed, tested and locked. That produces three things an app operator cares about:
01
It lands first time. The credit the user spent comes back as something they posted, not something they deleted.
02
Higher yield per credit at a lower cost per render than general-purpose generation — the comparison that made buying ahead make sense.
03
Finished, not raw. The output is ready to post, not material the user is expected to fix.
They bought months of credits up front. In a business where compute is the cost of goods sold, that is the most honest review a supplier can get.
Templates built for them
Alongside the API, Magic built exclusive scenes for Instories — effects its users cannot get anywhere else, which is the whole reason a template app keeps a supplier.
Glass spheres
Fabric reveal
Aerial banner
What it looks like to the user
The user browses effects, picks one, uploads a photo and taps generate. That's the entire interaction. They never see a model name, a prompt box or a seed. They see the app's own library — and a video that comes back finished. Magic sits underneath the product, not next to it. The integration is the API; the experience stays theirs.
What comes out
A user's generations, inside the app. Each one is a finished vertical clip, five to thirteen seconds, ready to post without an edit. Note what isn't there: no near-misses, no half-formed attempts, no gallery of rejects the user paid for and deleted.
Why it matters if you run an app
Yield per credit
The number that matters isn't generations run, it's generations kept. Same credits spent, more finished content out — and a user who feels their allowance went somewhere.
Support and reviews
Failed generations arrive as support tickets and one-star reviews about wasted credits. Predictable output removes an entire category of complaint.
Something exclusive
Generic models give every app the same output. Templates built for you are effects your competitors cannot ship.