Chartsy Zapier Triggers: Every Event and Field

The Chartsy app on Zapier has 10 triggers. Each fires once per event and carries a ready-written summary field plus the raw figures, so you can drop one field into a message or map each value separately.

How to read this page#

Field names are shown as Chartsy sends them, e.g. customer_email. In the Zap editor they appear title-cased, as "Customer Email". Amounts are in the account's currency, dates are ISO 8601 in UTC. New here? Start with connecting Chartsy to Zapier.

All triggers#

Subscription CanceledInstant

Fires when: A customer cancels a subscription or schedules it to cancel at the end of the period.

Chartsy sends the cancellation to Zapier the moment your billing provider reports it, so the Zap runs within seconds. It fires on the cancel request, which usually comes before the customer loses access - that is why it includes the MRR at risk and the date access ends.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
customer_namecustomer_emailWho canceled.
plan_nameThe plan they were on.
mrr_at_riskcurrencyThe monthly recurring revenue you lose if they don't come back.
canceled_atWhen they canceled.
access_ends_atWhen their paid access ends. Same as canceled_at for an immediate cancellation.
cancellation_reasonThe reason they gave, when your billing provider records one.
providercustomer_idsubscription_idThe billing provider and its ids, for links back to Stripe or Paddle.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Alex Smith canceled Growth (49.00 USD/month at risk) - access ends 2026-11-24. Reason: Too expensive

Good to know

  • When you test the trigger, Zapier shows your recent real cancellations. If you have had none since the app went live, it shows your latest canceled subscriptions instead.

Use it to

  • Create a task to talk to the customer before their access ends. See the template
  • Post cancellations to a Slack channel so the team sees churn as it happens.
  • Start a win-back email or a CRM deal.

New Paying CustomerPolling

Fires when: Someone pays you for the first time.

Each customer triggers once, on their first payment. Customers who had paid you before (a returning customer on a new subscription) don't trigger it again.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
customer_namecustomer_emailThe new customer.
plan_namemrrcurrencyThe plan they chose and the MRR it adds.
first_payment_amountpaid_atWhat they paid and when.
sourcemediumcampaigncontentWhere the customer came from when they signed up (UTM values or the referrer Chartsy recorded).
channelSource and campaign together, e.g. "reddit / launch-week".
first_touch_channelThe channel of their very first visit.
signed_up_atsignup_sitelanding_pageWhen and where they signed up, and the first page they saw.
providercustomer_idsubscription_idBilling provider ids.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

New paying customer: Alex Smith (alex@example.com) - Growth, 49.00 USD/month - came from reddit / launch-week

Good to know

  • The channel fields are filled only when the customer's signup was recorded by Chartsy signup tracking and matched to the payment. Otherwise they are empty.

Use it to

  • Celebrate each new customer in Slack or Discord, with the channel that brought them. See the template
  • Send a personal thank-you from Gmail or Outlook. See the template
  • Add paying customers to a Brevo list so they get customer emails, not trial emails. See the template

New SignupPolling

Fires when: Someone signs up on a site you track with Chartsy.

Fires for every signup the Chartsy tracking script records, with the email and where the person came from. It needs signup tracking set up on your site; payments are not involved.

Settings

  • Tracked Site - Only signups on this site. Leave it blank for all your tracked sites.

Fields

FieldWhat it holds
emailsigned_up_atWho signed up and when.
site_nameThe tracked site.
sourcemediumcampaigncontenttermThe UTM values or referrer of the visit that led to the signup.
channelfirst_touch_channelLast-touch and first-touch channel.
referrerlanding_pagesignup_pageThe referring URL, the first page they saw and the page they signed up on.
countrydeviceWhere they were and what they used.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

New signup on acme.com: alex@example.com - came from reddit / launch-week

Use it to

  • Add signups to Mailchimp or Brevo, tagged by source, for a welcome sequence. See the template
  • Post each signup to Slack with its campaign and landing page. See the template

Payment FailedPolling

Fires when: A customer's payment fails.

Each failed charge triggers once. Use it to reach the customer while there is still time before the subscription lapses. Failures from before you switched the Zap on are skipped.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
customer_namecustomer_emailWhose payment failed.
amountcurrencyThe amount that didn't go through.
plan_nameThe plan the payment was for.
failure_codefailure_reasonThe decline code and message, e.g. "card_declined" / "Your card was declined."
failed_payments_last_30_daysHow many payments from this customer failed in the last 30 days.
failed_atWhen it failed.
subscription_statusThe subscription's status now, e.g. past_due.
providertransaction_idcustomer_idsubscription_idBilling provider ids.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Alex Smith: payment of 49.00 USD for Growth failed - Your card was declined.

Good to know

  • Works with Stripe, Paddle, Lemon Squeezy and Creem. Polar and Freemius don't report failed payments to Chartsy, so the trigger never fires for them.
  • Paddle doesn't send a decline reason, so failure_reason is empty. Paddle also keeps retrying a failed transaction; if a retry succeeds before Zapier next checks, the failure is never reported.

Use it to

Payment RecoveredPolling

Fires when: A payment goes through after failing.

The pair to Payment Failed: use it to stop the reminders you started, so nobody keeps emailing a customer who has already paid. For Stripe, Lemon Squeezy and Creem it is a paid charge within 30 days of a failed one; several failures before the success count as one recovery.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
customer_namecustomer_emailWhose payment recovered.
amountcurrencyplan_nameWhat was paid and for which plan.
failed_attemptsHow many attempts failed before it went through.
first_failed_atrecovered_atdays_to_recoverWhen it first failed, when it was paid and the days in between.
subscription_statusThe subscription's status now, usually active.
providertransaction_idcustomer_idsubscription_idBilling provider ids.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Alex Smith: payment of 49.00 USD for Growth went through after 2 failed attempts

Good to know

  • Paddle: only transactions retried from 4 November 2026 onward are reported, and first_failed_at is empty because Paddle doesn't give the time of the first failure.
  • Not available for Polar or Freemius, for the same reason as Payment Failed.

Use it to

New At-Risk CustomerPolling

Fires when: A customer pauses their subscription, or has 2 or more failed payments in the current quarter.

Catches customers who are likely to churn but haven't canceled. A paused subscription triggers once; a customer with repeated failed payments triggers once per quarter.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
reason"paused" or "failed_payments".
customer_idsubscription_idThe billing provider ids. Customers are identified by id only, with no name or email.
failed_payments_this_quarterSet when the reason is failed_payments.
paused_datedays_pausedSet when the reason is paused.
account_nameThe billing account.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Customer cus_Q1w2e3r4 has 2 failed payments this quarter (Acme (Stripe))

Good to know

  • To get the customer's email, use the customer id to look them up in your billing provider or CRM in the next step.

Use it to

  • Add a task or CRM note to check in with the customer.
  • Post a private Slack message to whoever owns retention.

New Daily SnapshotPolling

Fires when: Once a day, after 02:00 UTC, when the previous day's figures are complete.

One item per account per day with yesterday's revenue, MRR, subscribers, churn, refunds and traffic, compared with the day before and the 7-day average. Each day triggers once. Days missed while the Zap was off are not replayed.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
dateaccount_namecurrencyThe day and account.
mrrMRR at the end of the day.
revenuerevenue_previous_dayrevenue_trailing_daily_averageRevenue collected that day, the day before and on an average day.
revenue_change_vs_previous_day_percentrevenue_change_vs_trailing_average_percentThe same comparisons as percentages - handy in a Filter step.
new_subscriberschurned_customerschurn_rate_percentSubscriber movements.
refund_counttotal_refundedRefunds that day.
visitsunique_visitorssignupstop_sourceTraffic across all your tracked sites.
warning_countwarningsAnything Chartsy flagged, e.g. a sync that didn't finish.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Chartsy daily summary for 2026-10-16 (Acme (Stripe))
Revenue: 312.50 USD (+30.1%) vs 7-day average
MRR: 4,250.00 USD
New subscribers: 3 - churned: 0 - refunds: 0
Visits: 1820 - signups: 22

Use it to

  • Post the morning numbers to Slack or email them to a co-founder. See the template
  • Add a Filter step to alert only on a bad day, e.g. revenue down more than 30% on the average.

New Weekly Growth SummaryPolling

Fires when: Every Monday after 02:00 UTC, for the week that just ended (Monday to Sunday).

Last week's visits, signups and new MRR against the week before, broken down by channel: which brought the most of each, which grew or slowed down, and which one to focus on next. The focus pick looks at which channel's signups turned into paying customers over the last 90 days.

Settings

  • Channel - How to group traffic: Source (default), Medium, Campaign or Content (post). Campaign and Content need UTM tags on your links.
  • Tracked Site - Limit the figures to one site that has the Chartsy tracking script. Leave it blank for all of them.

Fields

FieldWhat it holds
week_startweek_endscopeThe week and which sites it covers.
visitssignupssignup_rate_percentLast week's totals.
visits_change_percentsignups_change_percentChange against the week before.
new_paying_customersnew_mrrCustomers who first paid last week and the MRR they added.
most_new_mrr_channelmost_visits_channelmost_signups_channelThe top channel for each.
fastest_growing_channelslowing_channelThe biggest rise and fall in signups.
best_signup_rate_channelbest_converting_channelBest visit-to-signup rate last week, and best signup-to-paid rate over 90 days.
focus_channelfocus_reasonWhere to spend more time next, and why.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Chartsy weekly growth, 2026-10-26 to 2026-11-01 (All sites)
Visits: 3,100 (+12.3%) - Signups: 42 (+16.7%) - New paying customers: 4 (196.00 USD new MRR)
- Most new MRR: producthunt, 98.00 USD from 2 new paying customers
- Most signups: reddit, 14 signups (+9 vs last week)
Focus next: reddit - its signups convert to paying customers best (9.52% over the last 90 days).

Good to know

  • Needs the Chartsy tracking script on your site. The new MRR figures also need signup tracking, so payments can be matched to channels.

Use it to

Goal ReachedPolling

Fires when: One of the revenue or growth goals you set in Chartsy is achieved.

Each goal triggers once, when Chartsy marks it achieved. Set goals in the Chartsy dashboard; without any, the trigger never fires.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
titlegoal_type_labelThe goal, e.g. "Monthly Recurring Revenue target of 5,000.00".
target_valuebaseline_valueThe target and where you started.
deadlineachieved_atWhen it was due and when you hit it.
account_namecurrencyThe billing account.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Goal reached: Monthly Recurring Revenue target of 5,000.00 (Acme (Stripe))

Use it to

  • Share the win in your team or community channel.

MRR Milestone ReachedPolling

Fires when: Your MRR passes a round milestone, such as 1,000, 5,000 or 10,000, for the first time.

Each milestone triggers once per account, the first time MRR crosses it. Dipping below and crossing it again doesn't trigger it twice. No setup needed.

Settings

  • Account - Which connected billing account to read. Leave it blank if you have only one.

Fields

FieldWhat it holds
milestoneThe milestone passed, e.g. 5000.
mrrcurrencyYour MRR when it was passed.
account_nameThe billing account.
summaryThe event in one or two plain lines, ready for Slack or email.

Example summary

Acme (Stripe) passed 5,000 USD MRR (now 5,012.40)

Use it to

  • Post the milestone to Slack or Discord, or draft a build-in-public post.

Related articles

Chartsy Team

Written by

Chartsy Team

Analytics team at Chartsy

The Chartsy Team writes guides, product updates, and resources to help SaaS and eCommerce founders make sense of their metrics, without SQL or spreadsheets.

Chartsy
Ministry of Economy and Innovation
Startup Albania

The Chartsy program is realized with the financial support of the Albanian Government through the Ministry of Economy and Innovation, under the Grant 2026 scheme, and is implemented by the Innovation4Albania Agency.