Google Ads & Tracking Conversion Values in Multiple Currencies

Topic summary

A Shopify merchant is experiencing issues with Google Ads conversion tracking across multiple European currencies. While their store operates in Euros with local currency options (SEK, DKK, PLN), Google Ads receives conversion values in the original local currency rather than converted to Euros.

The Problem:

  • Example: A 2000 SEK order (~180 EUR) registers as 2000 EUR in Google Ads
  • This distorts ROAS calculations and potentially affects algorithm performance
  • Facebook/Meta ads and Google Analytics correctly show Euro conversions

Proposed Solutions:

One responder (J_mah) suggested implementing a custom data layer/GTM script via Google Tag Manager, providing screenshots showing:

  • Custom pixel setup for e-commerce events
  • Purchase event variables configuration
  • Google Ads conversion tag setup

The original poster proposed an alternative approach using conditional Shopify Liquid code with hardcoded currency conversion multipliers (0.09 for SEK, 0.13 for DKK, 0.23 for PLN) to manually convert values to Euros before sending to Google Ads.

Current Status:
The merchant opted to try the simpler conditional script approach first. The discussion remains open with a follow-up question about whether the issue was resolved.

Summarized with AI on October 25. AI used: claude-sonnet-4-5-20250929.

Hiya!

I am advertising & selling in quite a few different countries in Europe, and I have the local currencies activated on my Shopify store (main currency and payouts are all in Euros). I’m having an issue with the conversion value being passed in the original ‘local’ currency amount into a Google Ads account that is in Euros. I’ve asked my Google account manager about this, but didn’t get a response so I thought I’d ask if anyone could guide me towards on how to do this.

Example: Someone places an order for 2000 SEK - Google Ads gets the conversion as 2000 Euros rather than the real Euro amount which is closer to 180. This obviously throws the ROAS calculations out of whack and makes things a bit hard to manage, and I’d expect this to throw the algorithm off as well.

I’m currently using the following script on checkout - seems to work fine for everything apart from the local currency orders (that do still get converted into Euros in our payouts):

Is there any other Shopify parameter that I could use in the script for the conversion, such as the payout amount which would be in Euros? Or is there something I could use here to let Google Ads know that they may need to do the conversion on the purchase value.

For context, Facebook / Meta ads and the tracking of the values are working perfectly and the ROAS is easy to track as it’s being shown correctly in Euros - even if the original purchase amount was in SEK / DKK / PLN / etc. My Google Analytics property also shows the correct Euro amount for the conversions.

Many thanks in advance for any ideas on how I could do this!

Hi Kabelbinders,

Thanks for your query.

Could you please share your website URL? I would love to check the data layer.

The script you are using is unable to detect the currencies when someone orders pass the value with purchase event.

To get rid of this, you would need to implement a custom data layer/GTM script on a custom pixel to get all the e-commerce events with event data like value, currency(all currencies), transaction ID and so on.

Then configure the google ads conversion tracking via Google Tag Manager using google ads tracking template.

Feel free to ask if you have any questions.

Thanks

1 Like

Many thanks for the reply! I suspected this might be the case, although it’s beyond me why this is easy on GA / Meta etc…

Anyways, I don’t mind a bit of if-this-then-that and it’s pretty straightforward sounding.

Just to clarify, is the below what you meant? Thanks!

{% if order.currency == ‘SEK’ %}

{% elsif order.currency == ‘DKK’ %}

{% elsif order.currency == ‘PLN’ %}

{% else %}

{% endif %}

Many thanks for the reply. I’m giving the other suggestion a go first, as it seemed pretty straightforward to implement. :slightly_smiling_face:

1 Like

Any update about that? did you able to figure out the issue?