How to Connect Creem.io to Chartsy
To connect Creem to Chartsy, you paste your Creem API key into Chartsy and check the fee rate. Chartsy then imports your products, customers, subscriptions and payments, adds a webhook to your store so new payments show up as they happen, and turns it all into MRR, churn, LTV and net revenue - across subscriptions, seat-based plans and one-time sales.
Each Creem store is connected as its own data source. Run more than one? Connect each one, and All Accounts adds them up - together with any Stripe, Paddle, Freemius, Polar or Lemon Squeezy accounts you have connected.
Before You Start
- A live Creem store you can see the API keys of
- Your Creem fee rate, if you agreed one other than the standard 3.9% + $0.40
- A Chartsy account (sign up free)
Match Creem Revenue to Marketing Channels
If you track your website with Chartsy, set the site's Revenue account to your Creem source under Settings → domains. Then pick whichever fits how you sell:
Success URL - no code
In Creem, set each product's Success URL (or the success_url of checkouts you create) to a page on your site that has the Chartsy tag - for example https://yoursite.com/thank-you. Creem adds ?checkout_id=… to it by itself. When the buyer lands, Chartsy looks up the payment and credits it to the visit that brought them, even if they never signed up.
Checkouts created from your server
Add the visitor's chartsy_visitor_id cookie to the checkout's metadata:
// Creem keeps checkout metadata on the subscription and payment it creates
await fetch('https://api.creem.io/v1/checkouts', {
method: 'POST',
headers: { 'x-api-key': process.env.CREEM_API_KEY, 'Content-Type': 'application/json' },
body: JSON.stringify({
product_id: '<your product id>',
// ...your existing options
metadata: { chartsy_visitor_id: req.cookies.chartsy_visitor_id || '' },
}),
});Both methods match by visitor id, so they keep working with GDPR Mode on. Buyers are also matched by email to people who signed up, unless GDPR Mode is on. Limits and details are in the revenue attribution guide.
Troubleshooting
- "Creem rejected this API key" - copy the key again from Creem → Settings → API Keys and paste it in full.
- "That's a test-mode key" - switch Creem out of test mode, then copy the key from Settings → API Keys again.
- "This API key can't add webhooks" - Chartsy needs the webhook to stay up to date. Use a key with webhook access.
- "This Creem store is already connected" - each store can be connected once, even with a new key, so its numbers are never doubled.
- Net revenue looks off - check the fee rate on the source's card against a payment in Creem → Transactions.
- New payments stopped showing up - the webhook may have been removed or switched off in Creem. Click Sync now to restore it and catch up.
What's Next?
- See what Chartsy tracks for Creem on the Creem analytics page
- Check exactly what is synced in Creem data models
- Learn how data sources combine under All Accounts
- Ask questions with the Chartsy AI chatbot


