How to Tell If a Website Uses Criteo
Criteo is a leading retargeting and performance-advertising platform. Detect it via the static.criteo.net OneTag, the window.criteo_q array and criteo.com / criteo.net tracking.
Criteo is a leading retargeting and performance-advertising platform, best known for the ecommerce retargeting ads that follow shoppers around the web showing products they viewed. Because it loads a distinctive tag and uses a recognisable command queue, detecting it is straightforward: look for the static.criteo.net OneTag and the global window.criteo_q array. This guide covers every reliable signal, the retargeting model behind them, the look-alikes to rule out, and what Criteo usage tells you about the business.
What is Criteo?
Criteo is a performance-advertising company specialising in retargeting (also called remarketing): showing display ads to people who previously visited a site, often featuring the exact products they browsed, to bring them back to complete a purchase. It is heavily focused on ecommerce and retail, where product-level retargeting is most valuable, and it has expanded into a broader "Commerce Media" platform. An advertiser adds Criteo's tag to its site to track which products visitors view and buy, and Criteo uses that data to serve personalised retargeting ads across its publisher network.
For detection, the key context is that Criteo is an advertiser-side tag — like the Google Ads or Meta pixel, it marks a business that spends on (retargeting) advertising, not a publisher showing ads. Finding it tells you the site is an ecommerce/retail business running performance display campaigns to recover and convert shoppers. Because Criteo loads its OneTag from a clear domain and uses a recognisable event queue, it is easy to confirm. Its presence is a strong signal of an active, ecommerce-focused advertiser.
How Criteo loads and tracks
A Criteo install loads the OneTag from static.criteo.net (Criteo's unified tag, which replaced its older separate loader and event tags) and uses the global window.criteo_q command array to queue events. The events map to the ecommerce funnel: a page/home view, a category (viewList) event, a product (viewItem) event carrying the product ID, a basket (viewBasket) event carrying cart contents, and a sales (trackTransaction) event on the order-confirmation page carrying the order and items. Each is pushed onto criteo_q, for example window.criteo_q.push({ event: 'viewItem', item: 'SKU123' }), along with the account and a hashed email where available.
These events are reported to Criteo's domains (criteo.com/criteo.net), and Criteo sets retargeting cookies to build the shopper profile. So a Criteo site shows the static.criteo.net OneTag, the criteo_q array with funnel events, and tracking to Criteo domains — with the specific events varying by page type (product pages fire viewItem, the confirmation page fires the sale). Knowing these — the static.criteo.net OneTag, the criteo_q global, the funnel events, and Criteo-domain tracking — makes detection reliable and reveals how deeply the funnel is instrumented.
How to tell if a website uses Criteo
Confirm at least one strong signal.
1. Check the Network tab. Filter for criteo. The OneTag from static.criteo.net and tracking to criteo.com/criteo.net confirm Criteo.
2. Use the console. Type criteo_q and press Enter. A returned array confirms the Criteo event queue is present.
3. View the source. Search for criteo. The static.criteo.net tag and criteo_q.push({event:...}) calls are usually visible.
4. Compare page types. On a product page you should see a viewItem event; on the cart, viewBasket; on the confirmation page, the sale event. This funnel pattern is characteristic.
5. Note the account. The account identifier in the OneTag/events identifies the Criteo advertiser configuration.
What the Criteo signals look like
<script type="text/javascript" src="//static.criteo.net/js/ld/ld.js" async></script>
<script>
window.criteo_q = window.criteo_q || [];
window.criteo_q.push(
{ event: 'setAccount', account: 12345 },
{ event: 'viewItem', item: 'SKU123' }
);
</script>
// Tracking to criteo.com / criteo.net
The combination of the static.criteo.net OneTag, the criteo_q array with funnel events, and Criteo-domain tracking is conclusive.
Criteo versus other ad tags — avoiding false positives
Keep the advertiser/publisher and retargeting distinctions clear. Criteo (advertiser retargeting) uses static.criteo.net and criteo_q; Google Ads remarketing uses an AW- ID and googleadservices/doubleclick; the Meta Pixel uses fbq and connect.facebook.net; AdSense/Taboola/Outbrain are publisher-side (showing ads), not advertiser retargeting. The criteo_q global and static.criteo.net tag are specific to Criteo. A site may run several advertiser tags together (Criteo + Google Ads + Meta Pixel) for multi-platform retargeting, so finding Criteo does not exclude the others — check for each. The funnel-event pattern (viewItem, viewBasket, sale) is characteristic of ecommerce retargeting tags generally, but the criteo_q array identifies Criteo specifically.
How reliable is each Criteo signal?
The static.criteo.net OneTag and the criteo_q global array are definitive. Tracking to criteo.com/criteo.net corroborates. The funnel events (viewItem, viewBasket, sale) confirm active ecommerce instrumentation. The weakest situation is that some events only fire on specific pages (the sale event on confirmation), so a single page view may show only the base tag — but the OneTag and criteo_q array are present site-wide. As a rule, the static.criteo.net tag or the criteo_q array settles it, and the events reveal how thoroughly the funnel is tagged.
What Criteo usage reveals about a business
Finding Criteo signals an ecommerce or retail business running retargeting and performance display advertising. Because Criteo is ecommerce-focused and its value comes from product-level retargeting, its presence almost always means an online store actively investing in paid acquisition and re-engagement — bringing back shoppers who browsed but did not buy. The depth of funnel instrumentation (product, basket and sale events) indicates a sophisticated performance-marketing setup. If you sell ecommerce marketing, retargeting, CRO, or ad-tech services, a Criteo site marks an ad-spending online retailer. The combination with other advertiser tags (Google Ads, Meta Pixel) indicates a multi-platform performance strategy. Criteo's presence is a clear "this is a performance-marketing-driven ecommerce business" signal.
What finding Criteo means for sales, agencies and competitive research
For sales and prospecting, Criteo marks an ecommerce business with a performance-advertising budget and active retargeting — a prime target for ecommerce marketing, ad-tech, CRO and retention tools.
For agencies and consultants, finding Criteo tells you the client runs retargeting, so engagements can address retargeting strategy, funnel-event accuracy, creative, or consolidating multi-platform performance advertising. It signals an ad-spending retailer focused on conversion.
For competitive and market research, Criteo reveals which ecommerce competitors invest in retargeting and how deeply they instrument their funnel. Spotting it (and the events tracked) indicates a competitor's performance-marketing sophistication, useful when benchmarking ecommerce ad strategy.
Criteo in the wider ecommerce marketing stack
Criteo sits in the performance-advertising layer of an ecommerce stack. It accompanies an ecommerce platform (Shopify, Magento, WooCommerce, etc.), GA4 (often with ecommerce tracking), frequently the Meta Pixel and Google Ads tags for multi-platform retargeting, an email/SMS retention tool (Klaviyo), and a consent-management platform (ad cookies require consent). The funnel events Criteo fires mirror the ecommerce events fed to the other platforms. For an auditor, the valuable details are the Criteo account, which funnel events fire, which other advertiser tags accompany it, and the ecommerce platform and retention tools present; together these reveal a performance-marketing-driven online retailer and the breadth of its acquisition and retargeting strategy.
A quick Criteo confirmation walkthrough
Open the store (ideally a product page) with developer tools on the Network panel and filter for criteo. Look for the OneTag from static.criteo.net and tracking to criteo.com/criteo.net. In the console, type criteo_q to confirm the array. On a product page you should see a viewItem event; check the cart and (if possible) a confirmation page for viewBasket and the sale event. View the source for criteo and criteo_q.push calls. The static.criteo.net tag or the criteo_q array confirms Criteo.
A quick Criteo detection checklist
- Filter the Network tab for
criteo; thestatic.criteo.netOneTag is conclusive. - Type
criteo_qin the console to confirm the event array. - View source for
criteo_q.push({event:...})funnel events. - Check product/cart/confirmation pages for
viewItem/viewBasket/sale events. - Distinguish Criteo (
criteo_q,static.criteo.net) from Google Ads (AW-) and the Meta Pixel (fbq). - Note the ecommerce platform and other advertiser tags for the full picture.
Detecting Criteo at scale
Checking one site is quick, but mapping retargeting adoption across many domains — to find ad-spending ecommerce businesses — calls for automation. StackOptic detects Criteo and thousands of other technologies from a real browser, reading the OneTag, the event queue and tracking traffic. Because Criteo so specifically marks an ecommerce business investing in retargeting, a market-wide scan for it builds a clean list of performance-marketing-driven online retailers — exactly the accounts that buy ecommerce ad-tech, CRO and retention tools. For related reading, see our guides to telling if a website uses the Meta (Facebook) Pixel and finding out what ecommerce platform a website uses, and the full Criteo technology profile.
Frequently asked questions
What is the fastest way to tell if a site uses Criteo?
Open the Network tab and filter for 'criteo'. You will see the OneTag load from static.criteo.net and tracking requests to criteo.com / criteo.net. In the source, the global window.criteo_q array and criteo_q.push events confirm Criteo.
What is the criteo_q array?
window.criteo_q is the global command array Criteo's OneTag uses to queue events such as page views, product views, basket contents and sales (e.g. window.criteo_q.push({event:'viewItem', item:'123'})). Finding criteo_q, alongside the static.criteo.net tag, confirms Criteo.
What is the Criteo OneTag?
OneTag is Criteo's unified JavaScript tag, loaded from static.criteo.net, that handles event collection and retargeting across a site. It replaced Criteo's older separate loader and event tags. Seeing the static.criteo.net OneTag is a definitive Criteo signal.
Where does Criteo deploy its events?
Criteo is typically deployed across ecommerce funnels: a homepage/category view event, a product (viewItem) event, a basket (viewBasket) event, and a sales (trackTransaction) event on the confirmation page. These events feed Criteo's retargeting, so you will often see different criteo_q events on different page types.
What does it mean if a site uses Criteo?
Criteo is a retargeting and performance-advertising platform focused on ecommerce. Finding it signals a retail or ecommerce business running retargeting campaigns to bring shoppers back, indicating active investment in performance display advertising.
Analyse any website with StackOptic
Get the full technology stack, performance, security and SEO report in seconds — free.
Analyse a websiteRelated articles
How to Tell If a Website Uses Heap
Heap (Heap Analytics) autocaptures product events. Detect it via the cdn.heapanalytics.com script, the global heap object, heapanalytics.com beacons and _hp2 cookies.
How to Tell If a Website Uses Foundation
Foundation (by Zurb) is a responsive front-end framework. Detect it via its grid classes (row/columns, grid-x/cell), data-* component attributes and the foundation.css/js files.
How to Tell If a Website Uses Crisp
Crisp is a developer-friendly, affordable live-chat and messaging tool. Detect it via the client.crisp.chat/l.js script, the window.$crisp object and the CRISP_WEBSITE_ID value.