Ecommerce platform
Product MetricswithMagento
Server-side tracking for Magento, built for POAS bidding on Google Ads and Meta.
Install the Product Metrics module for your Magento line: 2.4, 2.0, or 1.9 and OpenMage. Every order then reaches Google Ads and Meta from your own domain, confirmed from Magento, with its revenue, profit, customer type and lifetime value.
Log in with Google, no credit card
- Every ad blocker
- Your own store domain
- Included in Pro
What every Magento order sends
Order #1042Paid
- Revenue
- €139.99
- Profit
- €50.91
- Customer
- New
- Lifetime value
- €420
- Sent fromyourstore.com/…
- Through every ad blocker
- Google AdsReceived
- MetaReceived
POAS bidding on both
Illustrative data
Compare
A browser tag or Product Metrics on Magento. What reaches Google Ads and Meta.
| What counts | Product Metrics on MagentoFull Signal Tracking, server-side | A browser tag / GTMGoogle tag, Google Tag Manager or Meta Pixel |
|---|---|---|
| Ad blockers | Gets through every ad blocker | Blocked, also behind Google tag gateway or server-side GTMSee the ad blocker test |
| Safari ITP | First-party cookie lasts 30 days | Tags load, cookies cut to 7 days |
| Where it runs | Server-side, from your own domain | In the visitor’s browser |
| Purchases | Confirmed from the Magento order; refunds adjust | As the browser reports them |
| Profit | From the item cost on each Magento order | Order value only |
| New customers | Marked new or returning, with lifetime value | Not marked by default |
| POAS bidding | On Google Ads and MetaGoogle AdsMeta | Not without profit in the conversion |
- Yes
- Partly or not by default
- No
Why it pays
What it adds to your Magento store. Profit, every purchase, new customers.
Bid on profit with POAS
Google AdsMetaEach order reaches Google Ads and Meta with its profit, so both can bid on POAS. It works on ROAS right away; connect margins to switch to POAS.
POAS vs ROASEvery purchase counts
Full Signal Tracking gets through every ad blocker. It runs on a unique endpoint on your own domain that auto-rotates if it is ever blocked.
How Full Signal Tracking worksWin new customers
Google AdsMetaEach purchase is marked new or returning, with its lifetime value, so Google Ads and Meta can tell first orders apart and bid for new customers.
MER and nCAC calculator
Trusted by ecommerce teams running Google Shopping at
- DocHorse
- Rajapack
- Soundimports
- FDX.com
- beterwitgoed.nl
- snackje.nl
- 1M+ products analysed
- €750K+ monthly Shopping spend under management
- Founder's work nominated at the Dutch Search Awards: Best Measurement Campaign 2023 · Best Use of Data 2024
POAS
Same ROAS, different profit. POAS shows which product pays.
POAS = ROAS × contribution margin %. At a POAS of 1 a product breaks even; above 1 it earns more than its ads cost.
Product A
- ROAS
- 4
- Contribution margin
- 40%
- POAS
- 1.6
After €100 of ads:Earns €60
Product B
- ROAS
- 4
- Contribution margin
- 20%
- POAS
- 0.8
After €100 of ads:Loses €20
Illustrative data
Work out your POASInstall
Live in 5 easy steps. One for 2.4, 2.0, or 1.9 and OpenMage.
Log in with Google, no credit card
- Install the Product Metrics module
- Save your configuration file
- Run Magento cron
- Allow the script in your CSP
- Pick your purchase conversion action
Step details and who does it
- 1.Install the Product Metrics moduleFrom the Adobe Commerce Marketplace, as a ZIP or with Composer. Install the one module that matches your Magento line, then run setup, compile and refresh the cache.
- 2.Save your configuration fileProduct Metrics generates one configuration file per store view. Save it on the server where the module expects it.
- 3.Run Magento cronCron sends order changes to Product Metrics every two minutes, so keep it running.
- 4.Allow the script in your CSPIf your store sets a Content Security Policy, allow its own script path.
- 5.Pick your purchase conversion actionConnect Google Ads in Workspace → Tracking and choose where purchases land.
Who does it
A developer or admin with shell access to the Magento server.
At a glance
How it runs on Magento. What runs where.
- Install
- Module from the Adobe Commerce Marketplace, as a ZIP or with Composer, plus a configuration file and Magento cron
- Tracking endpoint
- Script and collector on random paths on your own domain, served by the module
- Consent
- Cookiebot, OneTrust, Usercentrics, Osano or your own setConsent call
- Orders and refunds
- Change notices sent by cron, then a separately signed read of the order; credit memos included
- Cost price
- The item cost stored on the Magento order
- New customers
- The first paid order per store view, by customer account or guest email
- Versions
- Tested on Magento 2.4.7-p8, 2.0.18, 1.9.4.5 and OpenMage 20.15.0
Your endpoint is a random path on your own domain. No tracking names in the URL.
The module serves the Product Metrics script and collector from your own domain, each on a random path with no words like “track”, “collect” or “analytics” in it. An adblocker sees a request to your own shop.
The script tag in the page head carries no customer data; the script itself is never cached. The order success block isn’t cached either.
- Adblocker benchmark: which blockers stop the standard Google tags, tested with the real extensions.
Consent comes from your consent tool. Denied until the visitor agrees.
Pick Cookiebot, OneTrust, Usercentrics or Osano, or call ProductMetrics.setConsent from your own banner. The choices reach Google Ads as Consent Mode v2 signals; until the visitor chooses, everything stays denied.
Magento’s built-in cookie restriction notice on its own doesn’t count as consent.
Orders come from Magento, not from the browser. Credit memos make a new revision.
When an order changes, the module notes only its ID. Cron sends that notice, signed, to Product Metrics, which then reads the order back from your store through a separately signed request: totals, tax, discounts, shipping, refunds and lines, with configurable products resolved to the child product.
A credit memo creates a new revision of the order, and a cancelled order is marked cancelled. Cron also re-checks orders, so a missed notice is picked up.
Magento’s order cost becomes profit per order. A profit report Magento doesn’t give you.
Magento stores a cost on each order item. Product Metrics reads it with the order, so profit uses the cost the order was placed with, and each purchase reaches Google Ads and Meta with its profit.
Product Segmentation works on ROAS straight away. Connect margins to switch it to POAS.
- Break-even ROAS calculator: the return each product needs from its price and costs.
New customers are marked before Google Ads and Meta see them. Per store view.
The module checks for an earlier paid order in the same store view, by customer account or by guest email. The first paid order makes a new customer; every later one is returning. Cancelled orders don’t count.
Each purchase reaches Google Ads and Meta marked new or returning, with its revenue, profit and lifetime value. In Google Ads, that is eight conversion actions Product Metrics creates and manages for you:
- Product Metrics - New Customer
- New Customer Profit
- Returning Customer
- Returning Customer Profit
- Revenue
- Profit
- Revenue LTV
- Profit LTV
Product Metrics shows nCAC, what you pay for a new customer, per product and as an average, so you can increase priority on products that bring in first orders.
- MER and nCAC calculator: work out nCAC from your own totals.
Magento and Google Shopping: keep your feed, add the signal. Product Metrics is not a feed tool.
Getting Magento products into Google Shopping takes a feed extension that sends them to Merchant Center. Keep the one you use.
Product Metrics works on top of it. Product Segmentation segments your products by clicks and return and writes the labels you approve to Merchant Center, so your Shopping and Performance Max campaigns can increase or lower each product’s priority. Full Signal Tracking sends every Magento order back to Google Ads with its profit.
- Product Segmentation: products segmented by clicks and return, written to Merchant Center labels.
Requirements and limits. What to check before you install.
- Magento 2.4, 2.0, or 1.9 and OpenMage. Tested on 2.4.7-p8 (PHP 8.2), 2.0.18 (PHP 5.6), 1.9.4.5 (PHP 5.6) and OpenMage 20.15.0 (PHP 8.2).
- One module per Magento installation, and one installation per store view.
- Shell access to save the configuration file, and Magento cron running.
- A Content Security Policy that allows the store’s own script path.
- Order cost is read when the order currency matches the base currency.
- Refunded orders are sent without a profit figure, because Magento doesn’t record what happened to the returned items.
Questions about Magento. Short answers.
Does it send Magento orders to Meta too?
Do I need margin data to start?
Which Magento versions does Product Metrics support?
Does it replace my Magento Google Shopping feed extension?
Does the module need an admin user or API token?
Will Google Ads count orders twice next to my current tag?
Is Product Metrics an attribution tool?
Does it get through adblockers?
Other platforms
Product Metrics on other platforms. Same tracking, each platform’s own setup.
Shopify
Install the app from the Shopify App Store. Orders go to Google Ads and Meta from your own store domain, with profit from the costs you keep in Shopify.
WooCommerce
Install a WordPress plugin and paste a token. Orders go to Google Ads and Meta from your own domain, with profit from your WooCommerce costs.
Lightspeed
Connect your Lightspeed eCom shop. Orders go to Google Ads and Meta from your own shop domain, with profit from the cost prices in Lightspeed.
Shopware 6
Install the Shopware 6 plugin and paste a token. Orders go to Google Ads and Meta from your own domain, with profit from your Shopware purchase prices.
Keep exploring
Related pages.
Full Signal Tracking
How server-side, auto-rotating tracking works on every platform.
Adblocker benchmark
Which blockers stop the standard Google tags, tested with the real extensions.
Product Segmentation
Products segmented by clicks and return, written to Merchant Center labels.
Break-even ROAS calculator
The return each product needs from its price and costs.
See your products’ profit in Google Ads. Start with a free analysis.
Not ready to connect? Book a demo: a video call with Berend, then a demo account.