Jak měřit e-shop na FastCentriku bez vlastních analytických cookies
Trackless je cookieless analytika pro e-shopy. V prohlížeči návštěvníka neukládá vlastní měřicí identifikátor ani vlastní analytické cookies. Protože toto napojení běží přes měřicí kód v prohlížeči, právní základ, cookie lištu a případné podmínění spuštění vždy posuzujte podle celkového nastavení webu. Oficiální doplněk pro FastCentrik neexistuje - podle aktuální administrace se měření vkládá přes Google Tag Manager: ve FastCentriku uložíte ID GTM kontejneru a do GTM vložíte Trackless kódy jako vlastní HTML značky. Data zůstávají na našem serveru v EU a prvních 30 dní máte zdarma.
- Trackless neukládá vlastní analytické cookies ani vlastní měřicí identifikátor, ale u tohoto napojení běží měřicí kód v prohlížeči. Právní základ, cookie lištu a případné podmínění spuštění posuďte podle celkového nastavení webu.
- Blokování: měřicí kód běží v prohlížeči - při agresivním blokování měřicích skriptů může část návštěv chybět.
- Co změří: návštěvy i objednávky (využije datovou vrstvu FastCentriku na děkovací stránce). Když datová vrstva obsahuje položky objednávky, Trackless oddělí tržbu za produkty od dopravy a platby.
Jak to funguje
- Měřicí kód běží v prohlížeči, takže při agresivním blokování měřicích skriptů může část návštěv chybět. V běžném nastavení ale Trackless nebývá blokovaný; trendy a poměry zdrojů zůstávají vypovídající.
- Přes Google Tag Manager. Ve FastCentriku uložíte jen ID GTM kontejneru; samotný Trackless kód běží v GTM jako vlastní HTML značka na všech stránkách. Konverze se připojí z datové vrstvy na děkovací stránce.
- Data jsou jen Vaše. Měření končí na našem serveru v EU; data nepředáváme reklamním systémům.
Krok 1: Získejte měřicí token
Zaregistrujte se na trackless.cz, přihlaste se a v sekci Moje weby klikněte na Přidat web. Vyberte FastCentrik a Trackless Vám ukáže měřicí token - řetězec začínající na tlc_. V GTM použijte variantu níže, která script vytvoří dynamicky a token na něj nastaví až v prohlížeči:
<script>
(function () {
var s = document.createElement('script');
s.async = true;
s.src = 'https://c.trackless.cz/t.js';
s.setAttribute('data-token', 'VAS_MERICI_TOKEN');
document.head.appendChild(s);
})();
</script>
V běžném HTML by stačil zápis <script async src="https://c.trackless.cz/t.js" data-token="...">. U FastCentriku ale kód vkládáte přes GTM a v testu se ukázalo, že GTM může atribut data-token z externího scriptu ve výsledném DOM zahodit. Dynamické vložení tomu předchází.
Krok 2: Připojte FastCentrik ke Google Tag Manageru
Otevřete administraci FastCentriku, přejděte do Nastavení -> Aplikace 3. stran -> Google Tag Manager a vložte své GTM ID, například GTM-XXXXXXX. Pokud GTM ještě nemáte, vytvořte si v Google Tag Manageru nový webový kontejner.
Do FastCentriku se vkládá jen ID kontejneru. Samotné Trackless kódy vkládáte až v GTM jako značky Vlastní HTML.
V GTM založte značku pro návštěvnost
- Otevřete svůj GTM kontejner a klikněte na Tags -> New -> Tag Configuration -> Custom HTML / Vlastní HTML.
- Vložte základní Trackless kód z kroku 1, nahraďte
VAS_MERICI_TOKENtokenem z Trackless a značku pojmenujte například Trackless - návštěvnost. - U této značky nastavte Triggering -> All Pages. Musí běžet na všech stránkách e-shopu.
- Značku uložte. Kontejner zatím nemusíte publikovat; nejdřív přidejte objednávkovou značku v dalším kroku.
Tato první značka měří návštěvy. Objednávky bude posílat až druhá značka z kroku 3.
Krok 3: Přidejte objednávkovou značku
FastCentrik u nastavení Google Tag Manageru uvádí, že spolu s kontejnerem vkládá i datovou vrstvu a na potvrzení objednávky e-commerce data pro Google Analytics. Samostatný checkbox proto v některých administracích nemusí být vidět. Do druhé GTM značky vložte konverzní kód Trackless níže:
<script>
(function () {
window.trackless = window.trackless || function () {
(window.trackless.q = window.trackless.q || []).push(arguments);
};
var sent = false;
function num(x) {
x = String(x == null ? '' : x).replace(/[^\d,.\-]/g, '');
if (x.indexOf(',') > -1) { x = x.replace(/\./g, '').replace(',', '.'); }
return Number(x) || 0;
}
function first(obj, keys) {
if (!obj) { return null; }
for (var i = 0; i < keys.length; i++) {
if (obj[keys[i]] != null && obj[keys[i]] !== '') { return obj[keys[i]]; }
}
return null;
}
function lineTotal(items) {
if (!items || !items.length) { return null; }
var sum = 0;
var found = false;
for (var i = 0; i < items.length; i++) {
var item = items[i] || {};
var total = first(item, ['total', 'item_total', 'line_total', 'item_revenue', 'revenue', 'value']);
if (total != null) {
sum += num(total);
found = true;
continue;
}
var price = first(item, ['price', 'item_price', 'unitPrice', 'unit_price']);
if (price == null) { continue; }
var qty = first(item, ['quantity', 'qty', 'item_quantity']);
qty = qty == null ? 1 : num(qty);
if (!qty) { continue; }
sum += num(price) * qty;
found = true;
}
return found ? sum : null;
}
function order(entry) {
if (!entry) { return null; }
var isFastCentrikPurchase = entry.event === 'trackPurchase' || entry.transactionId != null;
if (isFastCentrikPurchase && entry.transactionId != null && entry.transactionId !== '') {
return {
id: entry.transactionId,
value: entry.transactionTotal,
currency: entry.transactionCurrency || 'CZK',
products: lineTotal(entry.transactionProducts),
shipping: first(entry, ['transactionShipping', 'transactionShippingTotal', 'shipping'])
};
}
if (entry.event === 'purchase' && entry.ecommerce && entry.ecommerce.transaction_id != null) {
return {
id: entry.ecommerce.transaction_id,
value: entry.ecommerce.value,
currency: entry.ecommerce.currency || 'CZK',
products: lineTotal(entry.ecommerce.items || entry.items),
shipping: first(entry.ecommerce, ['shipping', 'shipping_tax_excl', 'shipping_tax_incl'])
};
}
if (entry[1] === 'purchase' && entry[2] && entry[2].transaction_id != null) {
return {
id: entry[2].transaction_id,
value: entry[2].value,
currency: entry[2].currency || 'CZK',
products: lineTotal(entry[2].items),
shipping: first(entry[2], ['shipping', 'shipping_tax_excl', 'shipping_tax_incl'])
};
}
return null;
}
function handle(entry) {
try {
if (sent) { return; }
var o = order(entry);
if (!o || o.id == null || o.id === '') { return; }
sent = true;
var props = { type: 'order', id: String(o.id), value: num(o.value), currency: String(o.currency || 'CZK'), page_type: 'order' };
if (o.products != null) {
props.products_tax_excl = num(o.products);
props.products_tax_incl = num(o.products);
}
if (o.shipping != null && o.shipping !== '') {
props.shipping_tax_excl = num(o.shipping);
props.shipping_tax_incl = num(o.shipping);
}
window.trackless('event', props);
} catch (e) { /* nikdy neshodit dekovaci stranku */ }
}
function scan() {
var dl = window.dataLayer || [];
for (var i = 0; i < dl.length; i++) { handle(dl[i]); }
}
try {
var dl = window.dataLayer = window.dataLayer || [];
scan();
var origPush = dl.push;
dl.push = function () {
for (var i = 0; i < arguments.length; i++) { handle(arguments[i]); }
return origPush.apply(this, arguments);
};
if (document.readyState !== 'loading') { scan(); }
else { document.addEventListener('DOMContentLoaded', scan); }
window.addEventListener('load', scan);
} catch (e) { /* nikdy neshodit dekovaci stranku */ }
})();
</script>
Kód čte číslo a hodnotu objednávky z datové vrstvy FastCentriku (transactionId / transactionTotal, případně z novější události purchase pro Google Analytics 4). Pokud je dostupné transactionProducts nebo ecommerce.items, pošle zvlášť hodnotu produktů, aby se do produktových tržeb nepočítala doprava a platba. Pokud položky v datové vrstvě nejsou, Trackless použije celkovou hodnotu objednávky podobně jako u jednoduchých klientských integrací.
V GTM založte značku pro objednávky
- Klikněte znovu na Tags -> New -> Tag Configuration -> Custom HTML / Vlastní HTML, vložte konverzní kód z tohoto kroku a značku pojmenujte například Trackless - objednávka.
- U objednávkové značky vytvořte trigger Page View -> Some Page Views s pravidlem Page URL contains objednavka-dokoncena.
- Objednávkovou značku nespouštějte na All Pages. Má se spustit jen na děkovací stránce po dokončení objednávky.
- Značku uložte. Pokud v GTM používáte Consent Mode nebo vlastní pravidla podle cookie lišty, nastavte spuštění obou Trackless značek podle právního posouzení celého webu.
Po tomto kroku máte v GTM dvě značky: Trackless - návštěvnost na všechny stránky a Trackless - objednávka jen na děkovací stránku.
Krok 4: Ověřte, že měření běží
V GTM klikněte na Preview, otevřete e-shop přes náhled a projděte běžnou stránku i testovací objednávku. Pokud značky běží správně, publikujte kontejner přes Submit / Publish.
- GTM Preview: základní značka Trackless je v Tags Fired na všech stránkách a konverzní značka jen na URL
/objednavka-dokoncena. - Console: u scriptu
https://c.trackless.cz/t.jsmusí být vyplněnýdata-token. Pro kontrolu použijte tento výpis: - Network: filtr
tracklessmá ukázat nejen staženít.js, ale i další požadavek na Trackless endpoint. Samotné stažení scriptu ještě neznamená odeslané měření. - DataLayer: na děkovací stránce zkontrolujte, že
window.dataLayerobsahujetransactionId/transactionTotala ideálně takétransactionProducts, nebo událostpurchases objektemecommerceaitems.
[...document.scripts]
.filter(s => s.src.includes('c.trackless.cz/t.js'))
.map(s => ({
src: s.src,
token: s.getAttribute('data-token'),
outerHTML: s.outerHTML
}))
Reálné nasazení na FastCentriku jsme ověřili: po dynamickém vložení základní značky přes GTM dorazily návštěvy i objednávka. Pokud kontrolní výpis vrací u tokenu null, základní značka je v GTM vložená špatně - použijte dynamický kód z kroku 1. Pokud token sedí, ale v Network není další požadavek nebo v Trackless administraci nic nepřibývá, hledejte problém v blokování prohlížečem, ve tvaru dataLayer, v triggeru konverzní značky nebo ve špatném webu/tokenu v administraci Trackless.
Co budete měřit
- Měřicí kód běží v prohlížeči, takže při agresivním blokování měřicích skriptů může část návštěv chybět. V běžném nastavení ale Trackless nebývá blokovaný; trendy a poměry zdrojů zůstávají vypovídající.
- Zdroje a kanály: UTM parametry, referrery a kanály ve stylu Google Analytics 4 - včetně návštěv z AI asistentů.
- Zařízení, prohlížeče a operační systémy.
- Země a jazyky návštěvníků.
- Dokončené objednávky jako konverze - včetně hodnoty, měny, čísla objednávky a produktové tržby bez dopravy a platby, pokud ji FastCentrik v datové vrstvě předá odděleně.
Limity, ať víte, do čeho jdete
- Měřicí kód běží v prohlížeči, takže při agresivním blokování měřicích skriptů může část návštěv chybět. V běžném nastavení ale Trackless nebývá blokovaný; trendy a poměry zdrojů zůstávají vypovídající.
- GTM varianta čte jen to, co FastCentrik vloží do datové vrstvy na děkovací stránce. Když je dostupný seznam položek, Trackless oddělí produktovou tržbu od dopravy a platby; když dostupný není, použije se celková hodnota objednávky podobně jako u MioWebu. Rozpis DPH, marže, vratky a plné položky v Trackless vyžadují serverové nebo API napojení, ne samotný GTM snippet.
- Provozujete i e-shop na otevřené platformě (PrestaShop, WooCommerce, Joomla / VirtueMart, OpenCart, Magento 2, Shopware 6 nebo Sylius)? Tam použijte naše serverové moduly - měří přímo na serveru, nejsou závislé na spuštění měřicího kódu v prohlížeči a podle platformy umí i objednávky, položky a marže.
Časté dotazy
Potřebuju kvůli Tracklessu souhlas návštěvníků nebo cookie lištu?
Nejde odpovědět plošně. Trackless do prohlížeče neukládá vlastní měřicí identifikátor ani vlastní analytické cookies, ale u tohoto napojení běží měřicí kód v prohlížeči. Právní základ, cookie lištu a případné podmínění spuštění posuďte podle celého nastavení webu a dalších nástrojů.
Zpomalí měřicí kód můj e-shop?
Ne. Skript je malý a načítá se asynchronně (atribut async), takže nebrzdí vykreslování stránky. A když se nenačte, e-shop běží dál, jako by tam kód nebyl.
Můžu Trackless používat společně s Google Analytics 4?
Ano. Oba kódy mohou běžet vedle sebe a nijak se neovlivňují - Trackless dokonce čte tutéž datovou vrstvu, kterou FastCentrik připravuje pro Google. Počítejte s rozdílnými čísly: Trackless je méně závislý na vlastních analytických cookies než klientská analytika, takže může zachytit i část návštěv, které GA4 kvůli odmítnutým analytickým cookies započítá jen omezeně nebo modelem.
Kolik Trackless stojí?
Prvních 30 dní je zdarma. Potom platíte podle počtu objednávek Vašeho e-shopu - konkrétní částky najdete v ceníku.
Na webu píšete „bez JavaScriptu“ - a tohle je JavaScript. Jak to jde dohromady?
Naše serverové moduly a pluginy pro otevřené platformy (PrestaShop, WordPress/WooCommerce, Joomla / VirtueMart, OpenCart, Magento 2, Shopware 6 a Sylius) měří přímo na serveru e-shopu bez vlastního měřicího JavaScriptu. U této platformy je ale dostupná cesta přes měřicí kód v prohlížeči. Skript nebo pixel odešle URL stránky, referrer, jazyk a události na endpoint Trackless; neukládá vlastní cookies ani vlastní měřicí identifikátor. Identita návštěvníka se počítá na serveru z požadavku. To omezuje vlastní identifikátory v prohlížeči, ale právní posouzení a případné podmínění spuštění závisí na nasazení.
Vyzkoušejte to na svém e-shopu
Registrace zabere minutu, vložení kódu dalších pět. Prvních 30 dní neplatíte nic.