Your new Canva App deserves:
The missing infrastructure for Canva App developers.
No credit card required.
Set up in minutes
Set up your App
Link your Canva App to CanUp and create your first action.
New App
New Action
Each action can have server-side code. Write and deploy it from the dashboard editor.
Production-ready,
instantly.
Credits, subscriptions, cloud backend —
all enabled.
That's the whole setup. No infra. No accounts. No DevOps.
Add CanUp to your App
Drop in two React components. Credits, billing, and upgrade prompts — handled.
import { ActionButton, CreditCounter } from "canup";
<ActionButton
action="enhance-design"
onResult={({ result }) => applyEnhancement(result.enhanced)}
>
Enhance
</ActionButton>
<CreditCounter action="enhance-design" />Used 3 of 10 credits. Credits refresh monthly. Upgrade for more credits
Plans enforced. Credits deducted. Upgrades prompted. All from two components.
Charge for your App
Create plans in your dashboard. Your users get your pricing page.
New Plan
enhance-design100 / monthPick a plan
Free
$0
Pro
$9/mo
Connect Stripe. Create plans. Customers subscribe. Zero payment code.
Your app's command center
Home
30dTotal Executions
24.8K
↑ +23%
Success Rate
99.2%
↑ +0.3%
MRR
$2,184
↑ +14%
Subscribers
156
↑ +9%
Your Apps
12.4K
executions
$1,247
MRR
84
subscribers
8.1K
executions
$723
MRR
52
subscribers
4.3K
executions
$214
MRR
20
subscribers
Everything at a glance
All your apps, all your metrics. One screen.
Home
30dTotal Executions
24.8K
↑ +23%
Success Rate
99.2%
↑ +0.3%
MRR
$2,184
↑ +14%
Subscribers
156
↑ +9%
Your Apps
12.4K
executions
$1,247
MRR
84
subscribers
8.1K
executions
$723
MRR
52
subscribers
4.3K
executions
$214
MRR
20
subscribers
Your backend, in your browser
Write your functions, test them live, deploy in one click.
enhance-design
const handler = async (params, context) => {
const design = await fetchDesign(params.designId)
const enhanced = applyFilters(design, params.style)
console.log('Enhanced design for', context.user_id)
return { enhanced, appliedAt: new Date() }
}
export default handlerSee who's paying
Revenue, subscribers, plan performance — your app's business in real time.
Subscribers
30dMRR
$1,247
↑ +18%
Subscribers
84
↑ +12%
Earnings
$1,122
post-fees
↑ +15%
Churn Rate
2.4%
↓ −0.8%
Revenue Trend
| Subscriber | Plan | MRR |
|---|---|---|
| [email protected] | Pro | $14.99 |
| [email protected] | Pro | $14.99 |
| [email protected] | Pro | $14.99 |
| [email protected] | Pro | $14.99 |
Everything built in
Your stack
TypeScript & Python
Write functions in the language you know.
Any dependency
npm and pip packages, built and deployed automatically.
Encrypted secrets
API keys and tokens stored securely.
Already handled
Automatic identity
Your Canva users are recognized. Zero auth code.
Flexible quotas
Per action, per plan. Daily, weekly, monthly, or lifetime.
Billing lifecycle
Upgrades, cancellations, credit resets. Zero webhook code.
In production
Execution logs
Every run tracked. Errors, stack traces, print output.
Live execution traces
Watch runs as they happen. Inputs, timing, print output — live.
Full CLI
Everything the dashboard does, scriptable from your terminal.
Pricing is a conversation.
You're early — and you're trusting our infra with your business.
We take that seriously. Pricing changes for early customers happen in a conversation, not an announcement. If something we propose doesn't work for you, we work it out together. For as long as you're here.
— Cesco, founder
Building on Canva? Let's talk.
Every early customer talks to a real person. Pricing, integration, what you need to ship — tell us what you're building.