We have a SaaS app with monthly and yearly subscriptions where people can subscribe and pay using their credit cards. We use Stripe for our billing system, and have connected Amplitude through Segment.
Today we only track one type of revenue event to Amplitude, something we’ve called `Added Payment Details`. This fires the first time someone adds their credit card, and includes event properties such as the plan selected and the total price.
In addition, we also have a user property called `company_spend` and a group property called `monthlySpend` that shows the current price paid per month (in other words: MRR) for a user / group.
However, with this approach we’re not able to capture new charges that happen after the initial credit card was added, for example when the subscription renews, the account adds another seat (we charge on a per seat basis), or upgrades to a higher plan.
To solve this, I currently see two options:
- Send an event from our backend via the HTTP API to Segment/Amplitude every time a customer is charged.
- Connect Stripe directly with Amplitude or Segment.
What is the recommended practice here? How do other SaaS companies track revenue in Amplitude?
Best answer by jarren.pataoView original