Conversion events
Conversion events are the events that count as conversions for your campaigns. Each of them can also track revenue, which Pushwoosh collects in one uniform format for attribution, analytics, and segmentation.
What are conversion events
Anchor link toRevenue events rarely come in one shape. Your SDK might fire PW_InAppPurchase, your backend might send a custom OrderPlaced event, and Stripe or Shopify deliver their own webhook events. Without a shared format, targeting or reporting on revenue means writing separate logic for every source.
Pushwoosh solves this with PW_Conversion, a built-in event with a fixed set of fields:
value: the transaction amountcurrency: ISO 4217 currency codetransaction_idandproduct_id: optional identifiers
PW_Conversion covers purchases, subscription renewals, and payments from third-party platforms, regardless of where the original money event comes from. Once revenue lands as PW_Conversion, RFM segmentation, Customer Journeys, dashboards, and ManyMoney AI all read the same normalized data, no matter which source produced it.
On this page, conversion events means PW_Conversion plus the default and custom events you choose to count as conversions.
Conversions and revenue
Anchor link toEvery conversion event is counted on the Conversions tab of Project overview, where you see which campaigns led to it. An event you choose is counted in one of two ways:
- Conversion only: Pushwoosh counts how many times the event happened after your messages, for example
signup_completedortrial_started. - Conversion with revenue: Pushwoosh also reads the price and currency from the event’s attributes and records the amount as
PW_Conversion.
PW_Conversion is always on the list and always tracks revenue. You can’t remove it.
How revenue reaches Pushwoosh
Anchor link toYou get a PW_Conversion record in one of three ways:
- Send it directly from your code: your app or backend sends
PW_Conversionafter a purchase. - Track revenue for an existing event in the Control Panel: point Pushwoosh at the price and currency attributes of a purchase event you already send, and it generates
PW_Conversionrecords without changing your code. You can track revenue for more than one event per application. - Send
__amountand__currencyattributes on any event: the first time such an event arrives, Pushwoosh adds it to your conversion events with revenue tracking already on, with no setup in the Control Panel. See Automatic revenue mapping.
Use cases
Anchor link toOnce conversion events are set up, that data becomes usable everywhere revenue matters in Pushwoosh:
- See which campaigns and journeys lead to conversions and how much revenue they bring on the Conversions tab of Project overview.
- Build RFM segments for high-value users based on spend amount and recency, without custom revenue logic for each event.
- Set
PW_Conversionas a Conversion Goal in a Customer Journey to see which flows actually drive purchases, not just clicks or opens. - View revenue in dashboards and reporting without building custom logic for each purchase event.
- Combine revenue from SDK purchase events and payment webhooks (Stripe, Shopify) into one dataset instead of analyzing each source separately.
- Let ManyMoney AI use real transaction data in its recommendations and campaign optimizations.
How to set up conversion events
Anchor link toConversion events are configured per application. Revenue can come from your code, from events you already send, or from both. Follow the instructions for the path that fits your implementation.
Send PW_Conversion from your code
Anchor link toThis path fits when you can add or change event code in your app or backend. After each purchase, send PW_Conversion through the postEvent method. Its revenue reaches RFM segmentation, journeys, and dashboards without any setup in the Control Panel. With only PW_Conversion, the Conversions tab of Project overview shows the See which campaigns lead to conversions banner instead of statistics. To see conversions on this tab, choose at least one other event as described below.
Add the postEvent call wherever a purchase completes in your app or backend.
Example for JavaScript:
Pushwoosh.postEvent("PW_Conversion", { value: 49.99, currency: "USD", transaction_id: "ord_18274", product_id: "sku_premium_m"});Once you’ve set up conversion events in the Control Panel, samples for JavaScript, Swift, Objective-C, and Java are also available under View code on the Conversion events tracking banner in Audience > Events.
Attributes for the postEvent call
Anchor link toThe following table lists the attributes you can pass when sending PW_Conversion.
| Field | Type | Required | Description |
|---|---|---|---|
value | number | Yes | The monetary amount of the transaction. |
currency | string (ISO 4217) | Yes | The transaction currency code, for example USD or EUR. |
transaction_id | string | No | A unique identifier for the transaction. Recommended for your own record-keeping. Pushwoosh stores it as-is but does not use it to deduplicate revenue on its own. |
product_id | string | No | The identifier of the purchased product or plan. |
Choose conversion events and track their revenue
Anchor link toThis path fits when conversion or purchase data already flows through events you send, and you do not want to change your code. You can choose up to 100 events per application, not counting PW_Conversion. If you select more, Save fails with an error.
-
Go to Audience > Events and click Set up events on the See which campaigns lead to conversions banner. You can also start from the Conversions tab in Project overview.

-
In Choose conversion events, select at least one event that counts as a conversion and click Next.

Events that already carry a price and a currency are listed first, and the Price and currency found column shows their attribute names. Pushwoosh looks for such events once a day.
-
In Conversion events list, set up revenue for the events that carry a price.
PW_Conversionis listed first with the Default badge and always tracks revenue. For events with a price and currency found, Pushwoosh fills in those attributes for you, and they’re saved with the list. You don’t need to open the dialog for them.
To set up revenue for any other event, click Track revenue (or Edit revenue to change it) and fill in the Revenue tracking for event dialog:
- In Price, select the attribute that stores the transaction amount.
- In Currency, select the attribute that stores the currency code.
- Optionally, select the Transaction ID and Product ID attributes.

Click Apply. Events without revenue still count as conversions.
-
Click Save.
To change the list later, click the Conversion events settings (gear) icon on the Conversion events tracking banner in Audience > Events. There you can:
- Add another event with Add event.
- Stop tracking revenue for an event with Stop revenue tracking… in the event’s actions menu. It still counts as a conversion.
- Remove an event with Remove event… in the event’s actions menu. It no longer counts as a conversion.
Monitor conversion events
Anchor link toOnce you’ve chosen at least one event, the Conversion events tracking banner on Audience > Events summarizes conversion activity for the selected application:
- How many conversion events track revenue, including
PW_Conversion. - How many count as conversions only.
- How many times all conversion events fired in the last 7 days.

From the banner, you can:
- Click the View code icon to open the
PW_Conversionintegration samples. - Click the Conversion events settings icon to edit the list.
- Click Conversions dashboard to see which campaigns led to conversions on the Conversions tab of Project overview.