Event currency is the three-letter ISO 4217 code you attach to a conversion event in ChatGPT Ads, telling OpenAI which currency the event's amount is denominated in. It is not the ad account's billing currency; it rides with each individual conversion so revenue and return on ad spend are valued correctly.
Set it wrong and your reported revenue can be off by orders of magnitude, which quietly corrupts every bidding and budget decision you make. Get it right and ChatGPT Ads can compare spend against real revenue across markets, so you can scale the campaigns that actually earn.
In ChatGPT Ads conversion tracking, event currency is the currency field that travels with every purchase, lead, or subscription event you report through the Measurement Pixel or Conversions API. OpenAI pairs it with the event amount so a bare integer is interpreted as a real monetary value instead of a meaningless number. Without it, the platform cannot turn a conversion into revenue or calculate return on ad spend.
Event currency depends on two linked fields: the amount and the currency code. OpenAI expects the amount as an integer in the currency's smallest unit, so most currencies send cents, zero-decimal currencies like the Japanese yen send whole units, and three-decimal currencies like the Kuwaiti dinar send thousandths.
Event currency sits beside conversion value and event type in the same payload, and it differs from your account billing currency, which never changes per event. OpenAI converts reported values into your account currency, so an accurate per-event code keeps multi-market numbers comparable. AirOps helps teams track how their brand shows up across ChatGPT and other answer engines, giving context for the demand these ads capture.
Resources: see how to structure ChatGPT Ads campaigns for measurable pipeline
Event currency travels with a conversion from the moment it fires on your site to the moment ChatGPT Ads reports revenue. Each step has to preserve both the amount and its currency code, or the final number breaks.
Capture the sale: When a user converts, your site or tag records the transaction value and the currency the customer actually paid in.
Format the amount: Convert that value into an integer in the currency's smallest unit, so a decimal price becomes a whole number.
Attach the currency: Add the matching ISO 4217 code to the event, so the integer can be read back as a real price.
Send the event: Fire the event through the Measurement Pixel or the Conversions API with the amount, currency, and a unique event ID for deduplication.
Reconcile in reporting: OpenAI converts the value into your account currency and attributes it to the ad click through the oppref identifier.
Reported revenue and return on ad spend tell you which campaigns pay back. They do not tell you whether the currency was formatted correctly, so a silent minor-unit error can look like a real performance swing.
Event currency decides whether the revenue numbers in your ChatGPT Ads account are real. Those numbers drive how much you bid, which campaigns you fund, and how you justify the channel to finance, so an error here spreads into decisions far beyond the reporting screen, often without anyone realizing the root cause.
Accurate return on ad spend: ROAS only means something when the conversion value is denominated correctly, so the currency code is what makes spend-versus-revenue comparisons trustworthy.
Clean multi-market reporting: When you sell in several currencies, a correct per-event code lets the platform normalize everything into one account currency, so regional performance stays comparable.
Protection from a silent failure mode: Sending a zero-decimal currency like yen as if it had cents inflates revenue by a large factor, and because nothing errors out, the inflated ROAS can push you to overspend before anyone notices.
Growth marketers use event currency to make sure ChatGPT Ads values every purchase correctly before they scale spend across markets.
SEO managers use event currency to confirm that leads and sign-ups from their landing pages carry the right value into ad reporting.
Demand gen leads use event currency to keep pipeline-value reporting consistent when the same campaign runs in dollars, euros, and pounds.
Most currencies expect amounts as an integer number of their smallest unit, such as cents, so a price has to be multiplied before it is sent and divided again when it is read back, and getting that conversion wrong is the root of most currency bugs.
Some currencies, like the Japanese yen and Korean won, have no minor unit, so their amounts are sent as whole numbers and must skip the usual multiplication step that cent-based currencies require, and forgetting this is a frequent source of inflated revenue.
The currency code and the amount are a pair, and the code must describe the exact currency the amount was formatted in, or the platform will value the conversion against the wrong denomination entirely.
Keeps ChatGPT Ads return-on-ad-spend figures trustworthy enough to bid on.
Lets OpenAI normalize revenue from many currencies into one account currency.
Prevents silent revenue inflation caused by minor-unit formatting mismatches.
Makes regional performance comparisons meaningful across every market you sell in.
Supports accurate budget and bidding decisions that depend on real revenue.
Speeds up conversion-tracking QA by giving you one clear value to reconcile.
Send the currency code with every valued conversion event, because an amount without a currency cannot be valued.
Format amounts in the currency's smallest unit, so the integer OpenAI receives matches the real price.
Handle zero-decimal and three-decimal currencies explicitly, since treating every currency as if it had cents breaks them.
Pull the currency from the order record and never hardcode it, so multi-currency stores stay accurate automatically.
Run a test conversion in each major currency and confirm the reported value matches the real sale before scaling spend.
Keep the currency consistent across the pixel and the Conversions API, so deduplicated events always agree.
Avoid the most common mistake: multiplying every amount as if all currencies used cents. That single shortcut inflates revenue for yen and understates it for dinar, and because the platform never throws an error, the broken ROAS can look like a genuine trend for weeks before anyone catches it.
AirOps: Tracks how your brand appears across ChatGPT and other answer engines, so you can connect the demand your ads capture to your wider AI-search visibility.
Google Tag Manager: Fires the conversion event and injects the correct amount and currency into the ChatGPT Ads pixel without hardcoding values in your site.
Google Analytics 4: Cross-checks the value and currency recorded for each conversion, so you can spot a minor-unit error before it corrupts ad reporting.
Audit your current events: This week, open your ChatGPT Ads setup and list every conversion event you send, noting whether each one includes an amount and a currency code. No budget or developer ticket is needed to produce this list.
Confirm the amount format: Check that each amount is an integer in the currency's smallest unit, and flag any currency your code scales incorrectly.
Map your currencies: List every currency you sell in and mark which are zero-decimal or three-decimal, so your formatting logic can handle them. Currencies you only sell in occasionally are the ones most often missed.
Wire the currency dynamically: Update your tags or server code to read the currency from each order record instead of a fixed value.
Test and reconcile: Run a real transaction in each major currency, then confirm the reported value in ChatGPT Ads matches the actual sale before you increase spend.
Event currency is the ISO 4217 code attached to each ChatGPT Ads conversion event, telling OpenAI how to value the amount.
It is set per event in the Measurement Pixel or Conversions API, paired with an amount in the currency's smallest unit.
The main constraint is that zero-decimal and three-decimal currencies need their own formatting instead of a universal multiply.
The main risk is a silent minor-unit error that inflates or understates revenue without ever triggering a warning.
The leverage is accurate return on ad spend, which lets you scale the campaigns that genuinely earn across every market.
Event currency and your account billing currency do different jobs. Event currency is the code you attach to an individual conversion, describing the money the customer actually spent on that sale. Your account billing currency is the single currency OpenAI charges you in and reports your aggregate spend and revenue in. The two only connect at the reporting stage, where the platform converts each event's reported value into your account currency so totals line up. This separation is what lets a store selling in euros, pounds, and dollars report each sale in its real currency while still seeing one consolidated revenue figure. If you confuse the two and send your billing currency on every event, conversions made in other currencies get valued against the wrong denomination, and your return on ad spend drifts away from reality without any obvious signal that something is wrong.
Set event currency every single time you send a conversion event that carries a monetary amount, which in practice means on every purchase, subscription, or valued lead. There is no situation where you send an amount without its currency; the two fields are meant to travel together, and an amount alone cannot be valued. For events with no monetary value, such as a page view or a simple registration, the amount and currency are optional and you can leave them out. The moment you attach any value you want ChatGPT Ads to optimize toward, though, the currency has to come with it. The safest habit is to treat currency as a required field in your tag or server event template, pulled automatically from the order record, so no event ever fires with a value and a missing or default currency code.
Event currency causes revenue to vary between markets mainly because of how different currencies encode their smallest unit. OpenAI expects the amount as an integer in a currency's minor unit, so dollars and euros are sent as cents and multiplied accordingly. Currencies with no decimal places, like the Japanese yen, and currencies with three decimal places, like the Kuwaiti dinar, break that assumption. If your tag applies the same multiplication to every currency, the yen amount comes out far too high and the dinar amount far too low, so the same product looks wildly more or less valuable depending only on where it sold. The variation is not genuine performance; it is a formatting artifact. Handling each currency's unit correctly removes the swing and leaves you with revenue differences that reflect real market behavior instead of a bug in how the amount was prepared.
Yes, you control event currency directly, because it is a value your own site or server sends with each conversion. Nothing about it is decided by OpenAI; the platform simply reads whatever currency code you attach and trusts it. That means the accuracy of your currency data is entirely your responsibility. You influence it by deciding where the code comes from, and the reliable choice is to read it straight from the order or transaction record instead of hardcoding a single value. You also influence it through how you format the paired amount, since a correct code with a wrongly scaled amount still produces bad revenue. Because you hold this control completely, a test is the fastest way to verify it: run a real transaction, look at what ChatGPT Ads reports, and confirm both the currency and the value match the sale exactly.
Correctly configured event currency looks almost invisible, because nothing about your reported revenue looks surprising. Every conversion event carries a currency code that matches the currency the customer actually paid in, and the paired amount is an integer in that currency's smallest unit. When you run a test sale, the value ChatGPT Ads reports matches the real transaction to the cent, in every market you operate in. Your return on ad spend moves in line with what your own order system shows, with no single region inflated or crushed relative to the others. Zero-decimal and three-decimal currencies are handled by their own rules instead of a blanket multiplication. The clearest sign of a healthy setup is boring, reconcilable numbers: ad-reported revenue and store-recorded revenue agree closely enough that you trust the ROAS figure to make budget decisions on it.