Deferred revenue
Contents
We'll remove the Revenue analytics dashboard on or after June 30th, 2026.
We're not stepping away from revenue in PostHog — we're rethinking how it should work. Instead of maintaining a single, opinionated Revenue analytics dashboard, we're focusing on exposing revenue properties on persons and groups so you can use them everywhere: insights, SQL, and persons/groups profiles. Each use case (ecommerce, SaaS, recurring revenue, one-off, services, multi-tenant) can then build the dashboard it actually needs — or have PostHog AI and agents via our MCP build it for you.
When using revenue data from your Data Warehouse (like Stripe), PostHog will automatically defer revenue recognition to match your accounting practices. This is particularly useful for subscription businesses that need to recognize revenue over time rather than all at once.
This implies that our dashboard will show future revenue if you filter by a date range including dates in the future, indicating all of the revenue that will be recognized in the future.
Note: Revenue deferring is automatically applied when using Stripe as your data source. You don't need to configure anything additional if you're already filling Stripe's
periodproperty on your invoice line items - PostHog handles the calculations based on the period information in your Stripe invoices.
How PostHog processes deferred revenue
This does NOT apply to revenue data from events since we don't support informing what period a revenue event belongs to. See below for more information.
For supported sources, when PostHog imports your revenue data, it automatically:
- Detects period information: Finds the relevant
periodproperty on your invoice line items - Calculates deferral periods: Determines how many months/days the revenue should be spread across
- Distributes revenue: Splits the total amount evenly across the service period
For example, if you have an annual subscription where customers pay $1,200 upfront:
- Without deferring: All $1,200 appears in the month of payment
- With deferring: $100 appears in each of the 12 months of the subscription period
Revenue deferring for each revenue source
Revenue from event data
Revenue deferring is NOT applied to revenue data from events since we don't support informing what period a revenue event belongs to. You should manually apply revenue deferring to events on your own before sending them to PostHog.
Revenue from Stripe
PostHog's Stripe integration automatically handles revenue deferring based on the period property found in your Stripe invoice line items.
In Stripe, when you create a subscription or invoice, each line item can include a period object that defines the service period:
The period object contains:
start: Unix timestamp when the service period beginsend: Unix timestamp when the service period ends
When deferring doesn't apply
Revenue deferring only applies when:
- You're using Stripe as your data source
- Your invoice line items include a
periodproperty - The period spans multiple billing cycles
For one-time purchases or monthly subscriptions, revenue is recognized immediately in the month of payment.