Currency conversion will turn on automatically with the Piwik PRO update to version 18.37.0 on February 24, 2025. In this article, we’ll explain how you can prepare for this change to ensure smooth currency conversion and accurate data.
If you don’t plan to use currency conversion, you don’t need to take any action.
Before you start
Here are some important things to keep in mind before you start:
- Currency conversion will be turned on automatically in February 24, 2025. To use this feature, make sure to set up your currency code tracking before that date. If you’re not interested in currency conversion, you don’t have to do anything.
- After the release, make sure that:
- All tracking requests with financial data include the
cur
parameter, a currency code. - The currency in your site or app settings differs from the currency in the tracking request. The site or app currency is the target currency for conversion.
- All tracking requests with financial data include the
- If the
cur
parameter is not provided, it will be set to the default currency from the site or app settings. The best is to update your tracking implementation first and then change the currency in the site or app settings. - The
local currency
is the currency used before conversion and is tracked with an event. - Currency conversion adds new dimensions, but you don’t need to do anything if you don’t plan to use it. Your existing financial data, like revenue, product price, or goal revenue, will stay in the local currency.
- Piwik PRO uses daily average exchange rates calculated based on the previous day in UTC.
Set up currency code tracking
Note: Available after the February release.
To ensure the currency is converted accurately, update your tracking implementation. Each tracking request with financial data must contain the cur parameter. To set it up, follow these steps:
1. Log in to Piwik PRO.
2. Go to Menu > Tag Manager.
3. Navigate to Tags.
4. Choose your tag from the list or create a new one (for example, ecommerce order tag).
5. In Currency, enter one of the following values based on the ecommerce setup you have on your site. The choices are:
- Data layer (Google Analytics 4):
{{ ecommerce }}.currency
- Data layer (Google Universal Analytics):
{{ ecommerce }}.currencyCode
- Google tag (Google Analytics 4):
{{ currency }}
- Google tag (Google Universal Analytics):
{{ currency }}
Note: If you are creating a new tag, and your data layer setup is based on one of Google’s standards (Google Analytics 4 or Google Universal Analytics), click Browse presets and select the appropriate option.

Note:
- If the
currency
key is not set in the data layer, thecurrency (event)
dimension is set to default currency from the site or app settings. The best is to update your tracking implementation first and then change the currency in the site or app settings. - The data layer should have a currency key, and its value must be a valid currency code, such as USD for US dollars or EUR for euros, based on the ISO 4217 standard.
6. Done.
Set up a target currency in your site or app settings
Note: Available after the February release.
To set up your target currency in site or app settings, follow these steps:
1. Log in to Piwik PRO.
2. Go to Menu > Administration.
3. Navigate to Sites & apps.
4. On the left, pick the site or app you want to set up.
5. Navigate to Data collection.
6. In Data collection, make sure that the set currency differs from the one provided in the tracking request.
Note:
- Keep in mind that the historical data is not converted when the site or app currency is changed. Changes affect only new data. After the currency conversion release, if you change the currency in your site or app settings, your historical data won’t be converted to this new currency. Historical data defaults to the site or app currency at the time of collection and can never be converted.
Example report:

- If you have no tracked data under the
currency (event)
dimension in your historical data, Piwik PRO uses the site or app currency from the time of historical data collection. From the currency conversion release, every event that includes financial dimensions will have a currency value assigned to thecurrency (event)
dimension. - If you have set up different currencies for individual sites and plan to use meta sites, ensure that all sites within a meta site share the same currency.
7. Done.
Exchange rate
- Piwik PRO uses daily average exchange rates calculated based on the previous day in UTC. In rare cases, exchange rates may be older due to data provider outages.
- All conversions use USD as the base currency (e.g., GBP → USD → EUR)
New dimensions
We’ve introduced new dimensions to differentiate between local, converted, and base (USD) currencies. You’ll see the dimensions with the following currency types:
local currency
– stores financial data in the local currency, the currency before the conversion, and the one tracked with the event.converted currency
– stores financial data converted to the site’s currencybase currency
– stores financial data converted to the base currency (USD)
Here’s a list of new dimensions in Piwik PRO:
Dimension name | Description |
---|---|
Abandoned cart value | The total value of abandoned carts in the local currency, excluding discounts, shipping, and taxes. Abandoned carts happen when shoppers add items to their carts but leave without completing the purchase. |
Abandoned cart value (converted) | The total value of abandoned carts, excluding discounts, shipping, and taxes, converted to the site or app currency. Abandoned carts happen when shoppers add items to their carts but leave without completing the purchase. |
Abandoned cart value (USD) | The total value of abandoned carts, excluding discounts, shipping, and taxes, converted to the base currency (USD). Abandoned carts happen when shoppers add items to their carts but leave without completing the purchase. |
Currency (event) | The local currency tracked with an event. |
Currency (site or app) | The currency set in the site or app settings at the time the event was tracked, used during data processing. |
Currency conversion date | The date of the exchange rate used for currency conversion. |
Currency conversion rate | The exchange rate used for currency conversion. |
Discount | The total discount value applied to the order in the local currency. |
Discount (converted) | The total discount value applied to the order, converted to the site or app currency. |
Discount (USD) | The total discount value applied to the order, converted to the base currency (USD). |
Goal revenue | The revenue generated by a goal in the local currency. |
Goal revenue (converted) | The revenue generated by a goal, converted to the site or app currency. |
Goal revenue (USD) | The revenue generated by a goal, converted to the base currency (USD). |
Product price | The price of the product in the local currency. |
Product price (converted) | The price of the product, converted to the site or app currency. |
Product price (USD) | The price of the product, converted to the base currency (USD). |
Product revenue | The value calculated by multiplying the product price by the product quantity in the local currency. |
Product revenue (converted) | The value calculated by multiplying the product price by the product quantity, converted to the site or app currency. |
Product revenue (USD) | The value calculated by multiplying the product price by the product quantity, converted to the base currency (USD). |
Revenue | The total order value in the local currency, including subtotal, tax, shipping, and discounts. |
Revenue (converted) | The total order value, including subtotal, tax, shipping, and discounts, converted to the site or app currency. |
Revenue (USD) | The total order value, including subtotal, tax, shipping, and discounts, converted to the base currency (USD). |
Shipping | The total shipping cost of the order in the local currency. |
Shipping | The total shipping cost of the order in the local currency. |
Shipping (converted) | The total shipping cost of the order, converted to the site or app currency. |
Shipping (USD) | The total shipping cost of the order, converted to the base currency (USD). |
Subtotal | The total order value in the local currency, excluding shipping and discounts. |
Subtotal (converted) | The total order value, excluding shipping and discounts, converted to the site or app currency. |
Subtotal (USD) | The total order value, excluding shipping and discounts, converted to the base currency (USD). |
Tax | The total tax amount of the order in the local currency. |
Tax (converted) | The total tax amount of the order, converted to the site or app currency. |
Tax (USD) | The total tax amount of the order, converted to the base currency (USD). |
Note: See the full list of ecommerce dimensions.
Supported currencies
Note: Cryptocurrencies aren’t currently supported. This may change, so let us know what cryptocurrency you use.
Here’s a list of supported currencies:
Currency code | Currency name |
---|---|
AED | Arabic dirham |
AFN | Afghani |
ALL | Albanian lek |
AMD | Armenian dram |
ANG | Netherlands Antillean guilder |
AOA | Angolan kwanza |
ARS | Argentine peso |
AUD | Australian dollar |
AWG | Aruban florin |
AZN | Azerbaijani manat |
BAM | Convertible mark |
BBD | Barbadian dollar |
BDT | Bangladeshi taka |
BGN | Bulgarian lev |
BHD | Bahrain dinar |
BIF | Burundi franc |
BMD | Bermudian dollar |
BND | Brunei dollar |
BOB | Boliviano |
BRL | Brazilian real |
BSD | Bahamian dollar |
BWP | Botswana pula |
BYN | Belarusian rubel |
CAD | Canadian dollar |
CDF | Congolese franc |
CHF | Swiss franc |
CLP | Chilean peso |
CNY | Renminbi yuán |
COP | Colombian peso |
CRC | Costa Rican colón |
CUP | Cuban peso |
CZK | Czech koruna |
DJF | Djibouti franc |
DKK | Danish krone |
DOP | Dominican peso |
DZD | Algerian dinar |
EGP | Egyptian pound |
ETB | Ethiopian birr |
EUR | Euro |
GBP | Sterling pound |
GEL | Georgian lari |
GIP | Gibraltar pound |
GNF | Guinean franc |
GTQ | Guatemalan quetzal |
GYD | Guyana dollar |
HKD | Hong Kong dollar |
HNL | Honduran lempira |
HTG | Haitian gourde |
HUF | Hungarian forint |
IDR | Indonesian rupiah |
ILS | New Israeli sheqel |
INR | Indian rupee |
IQD | Iraqi dinar |
IRR | Iranian rial |
ISK | Icelandic króna |
JMD | Jamaica dollar |
JOD | Jordanian dinar |
JPY | Japanese yen |
KES | Kenyan shilling |
KHR | Cambodian riel |
KRW | South Korean won |
KWD | Kuwaiti dinar |
KZT | Kazakh tenge |
LAK | Lao kip |
LBP | Lebanese pound |
LKR | Sri Lanka rupee |
LYD | Libyan dinar |
MAD | Moroccan dirham |
MDL | Moldovan leu |
MGA | Malagasy ariary |
MKD | Macedonian denar |
MMK | Burmese kyat |
MNT | Mongolian tugrik |
MOP | Macanese pataca |
MUR | Mauritian rupee |
MXN | Mexican peso |
MYR | Malaysian ringgit |
MZN | Mozambican metical |
NGN | Nigerian naira |
NIO | Nicaraguan córdoba oro |
NOK | Norwegian krone |
NPR | Nepalese rupee |
NZD | New Zealand dollar |
OMR | Omani rial |
PAB | Panamanian balboa |
PEN | Peruvian sol |
PGK | Papua New Guinean kina |
PHP | Philippine peso |
PKR | Pakistani rupee |
PLN | Polish zloty |
PYG | Paraguayan guaraní |
QAR | Qatari riyal |
RON | Romanian leu |
RSD | Serbian dinar |
RUB | Russian ruble |
RWF | Rwandan franc |
SAR | Saudi riyal |
SDG | Sudanese pound |
SEK | Swedish krone |
SGD | Singapore dollar |
SYP | Syrian pound |
SZL | Swazi lilangeni |
THB | Thai baht |
TMT | Turkmenistani manat |
TND | Tunisian dinar |
TRY | Turkish lira |
TTD | Trinidad and Tobago dollar |
TWD | New Taiwan dollar |
TZS | Tanzanian shilling |
UAH | Ukrainian hryvnia |
UGX | Ugandan shilling |
USD | US dollar |
UYU | Uruguayan peso |
UZS | Uzbekistani sum |
VES | Venezuelan bolívar digital |
VND | Vietnamese dong |
XAF | CFA franc BEAC |
XCD | Eastern Caribbean dollar |
XOF | CFA franc BCEAO |
XPF | CFP franc |
YER | Yemeni rial |
ZAR | South African rand |
ZMW | Zambian kwacha |
Note:
- The currency codes are compliant with ISO 4217 standards.
- Unsupported currencies in tracking requests will mark events as broken in reports. Use the tracker debugger to review these events.
Other changes in reports and UIs
With the introduction of currency conversion, you’ll notice changes to the layout and display of your reports.
Here’s what you can expect from these changes:
Goal conversion
You can’t choose the currency for goals tracked automatically. To set up currency conversions for the goal revenue, you can track a goal manually using a tag or JS methods, or you can use the following setup:
1. Go to Menu > Tag Manager.
2. Navigate to Tags.
3. Click Add a Tag or choose the existing tag from the list.
4. In Goal conversion setup, fill in a new Currency field. You can set up the desired currency for your goal conversions. This will be possible by filling out a new Currency field in Menu > Tag Manager > Tags > Add a tag > Goal conversion > Goal conversion setup. Read more
Tables
Currency symbols will be added automatically. The reports will display financial data in the local currency of each event and the converted currency based on your site or app default settings.
The unconverted data in table reports is grouped and summarized based on the currency (event)
dimension even if this dimension wasn’t added in the report.

Table rows with total values from different currencies are marked with a mixed currency icon (¤).

Charts
Unconverted data will display only numerical values without currency symbols in line, bar, and pie charts. When setting up such reports, you can use the currency (event)
dimension to filter the report by currency.
Currency symbols of the converted data will be added based on the site or app settings.
Counter widget
The counter widget will display data in local currency. Using different currencies for this report will display only values without a currency symbol.
You can use the currency (event)
dimension to filter the report by currency.
Funnels
If you use financial dimensions in the step filter, we recommend filtering by currency using the currency (event)
dimension.
Attribution and user flow
Attribution and user flow reports don’t support currency conversions and will still show data only in local currency.