Installatie en ingebruikname

Drie voorbeelden: webshoporder, reservering en lead.

Eén script op je website is de basis. Van basispixel naar een volledig ingerichte meting doe je in enkele stappen. Hieronder staat per voorbeeld wat je gebruikt, wat er als conversie telt, waar de waarde vandaan komt en hoe je de meting controleert.

De voorbeelden beschrijven alleen werking die Roots ondersteunt. Er is geen koppeling met reserverings- of boekingssystemen; formulieren, knoppen, de nummerpool en imports zijn de aangeboden wegen.

Het script haal je per site op in je Roots-account (Websites & pixel). Je plakt het vlak voor de afsluitende head-tag, zodat click-ID's bij de eerste paginaweergave worden vastgelegd.

<script async src="https://rootsmetrics.com/sr.js" data-key="JOUW_PIXELSLEUTEL"></script>

Vorm van het script, met jouw eigen pixelsleutel

Op verzoek gebruik je een eigen trackingdomein in plaats van rootsmetrics.com.

Wat de basispixel al meet

Zodra het script staat, meet Roots zonder verdere instelling:

  • Paginaweergaven, met click-ID's zoals gclid, fbclid, ttclid en li_fat_id en de utm-parameters van je campagne.
  • Verstuurde formulieren, als het event form_submit. Een zoek- of filterformulier sluit je uit met data-sr-ignore.
  • Klik op een tel: link als telefoonklik en klik op een mailto: link als e-mailklik. Dat is een klik, geen bevestigd gesprek of antwoord.
  • Klikken op knoppen of links met het kenmerk data-sr-event; de waarde daarvan is de eventnaam.
  • Bestellingen op sites met een GA4-dataLayer of Shopify-checkout: alleen het event purchase telt als conversie, met dubbele bestellingen ontdubbeld op ordernummer.
  • Nog geen waarden: zonder extra configuratie heeft een conversie geen bedrag. Roots kan bronnen eerlijk vergelijken pas zodra conversies een waarde hebben.

Wat een volledig ingerichte meting toevoegt

Van geplaatste basispixel naar ingerichte meting: dit is wat je zelf configureert in Roots.

  • Eventnamen en bedragen via data-sr-event, data-sr-value en data-sr-currency op knoppen, links en formulieren, of via srAttribution.track(...).
  • Conversietypes met vaste, geschatte of dynamische waarde in Conversies & waarde, zodat elke conversie een vergelijkbare waarde krijgt.
  • Koppelingen met Google Ads, Meta Ads, LinkedIn Ads en TikTok Ads voor kosten, klikken en impressies, en een GA4-koppeling voor sessies en kanalen.
  • Server-side doorsturen van conversies naar Meta, Google Ads, LinkedIn en TikTok met een dataset- of conversie-ID en toegangstoken. LinkedIn vereist een e-mailadres bij de conversie; Google Ads vereist een gclid of e-mailadres.
  • Bestellingen vanaf je webshopserver via de order-webhook en conversies buiten je website via CSV-import of CRM-webhook.

Drie voorbeelden

Zo werkt instellen per situatie

Per voorbeeld: welke bestaande installatie je gebruikt, welke gebeurtenis telt, waar de waarde vandaan komt, welke aanvullende configuratie nodig is en hoe je controleert of de meting werkt.

Voorbeeld 1 · Webshop

Een webshoporder

Je winkel draait op Shopify, WooCommerce, Magento of een eigen webshop. Je wilt niet alleen bezoekers maar ook echte bestellingen met orderwaarde, per kanaal.

Wat je gebruikt
De Roots-pixel in de head van je winkelthema, volgens de platformgids op de integratiepagina. De pixelsleutel en het script haal je in je Roots-account op (Websites & pixel).
Wat telt als conversie
Het event purchase op het moment dat de bestelling is afgerond. Op sites met een GA4-dataLayer of Shopify-checkout herkent de pixel dit event zelf.
Waar de waarde vandaan komt
De echte orderwaarde. Op de bedankpagina of bestelstatuspagina stuur je het bedrag mee met srAttribution.track:
Shopify: script op de bestelstatuspagina
<script>
  srAttribution.track("purchase", {
    value: {{ checkout.total_price | divided_by: 100.0 }},
    currency: "{{ shop.currency }}"
  });
</script>
Aanvullende configuratie
  • Zet in Conversies & waarde het type Webshoporder op Dynamisch. Geeft je platform geen bedrag mee, dan stel je een vaste terugvalwaarde in.
  • Wil je bestellingen van bezoekers met een adblocker of een afgebroken bedankpagina toch meenemen? Laat je webshop elke bestelling ook vanaf de server naar de Roots-order-webhook sturen (Shopify, WooCommerce, Magento). Een order die de pixel al meldde, telt niet dubbel.
  • Stuur je conversies door naar Meta, Google Ads, LinkedIn of TikTok? Vul onder server-side doorsturen per platform het dataset- of conversie-ID en het toegangstoken in. Elke conversie krijgt een uniek event-ID, zodat het platform browser- en serverevent als één conversie telt.
Controleer of het werkt
  • Open je winkel in een privévenster en plaats een testbestelling.
  • Controleer in Websites & pixel of de stappen Script geplaatst, Events ontvangen, Conversies gemeten en Conversiewaarde ingesteld groen worden.
  • Controleer in Test je tracking of het event purchase met de juiste waarde in de eventstroom staat.

Voorbeeld 2 · Horeca

Een restaurantreservering

Bezoekers reserveren via een formulier of een reserveringsknop op je site. Je wilt weten welk kanaal aanvragen oplevert, ook zonder bedrag in het formulier.

Wat je gebruikt
De Roots-pixel in de head via de platformgids. Het reserveringsformulier telt automatisch als form_submit; met data-sr-event="reservering" geef je het formulier of de knop een eigen naam.
Wat telt als conversie
Het versturen van het reserveringsformulier, of de klik op de knop met data-sr-event="reservering".
Een ingediend formulier is een aanvraag, geen bevestigde tafel. Roots meet de aanvraag zoals je die configureert.
Waar de waarde vandaan komt
Geen bedrag uit het formulier. Het conversietype Reservering (horeca) rekent met een schatting: couverts × gemiddelde besteding, gewogen over lunch en diner.
Voorbeeld: eigen eventnaam op het formulier
<form data-sr-event="reservering"> ... </form>
Aanvullende configuratie
  • Stel in Conversies & waarde je gemiddelde besteding bij lunch en diner in en het aandeel diner in het totaal.
  • Roots heeft geen koppeling met reserverings- of boekingssystemen. Wil je alleen geplaatste reserveringen meetellen? Meet dan niet het formulier, maar voeg bevestigde reserveringen toe via CSV-import of de CRM-webhook, met external_id om dubbeltelling tegen pixel-events te voorkomen.
  • Reserveringen die per telefoon binnenkomen, voeg je op dezelfde manier toe; Roots koppelt ze aan het eerste bekende bezoek van die bezoeker.
Controleer of het werkt
  • Open je site in een privévenster en verstuur een testreservering.
  • Controleer in Test je tracking welke eventnaam binnenkomt en of het formulier niet met data-sr-ignore is uitgezonderd.
  • Check in Conversies & waarde of het type Reservering (horeca) de juiste rekenregel heeft.

Voorbeeld 3 · B2B of dienstverlening

Een gekwalificeerde lead

Bezoekers vragen een offerte of demo aan via een formulier. Je wilt aanvragen en later gesloten deals aan het juiste kanaal toeschrijven, zonder de aanvraag automatisch als gekwalificeerde lead te presenteren.

Wat je gebruikt
De Roots-pixel in de head via de platformgids. Het formulier telt automatisch als form_submit; met data-sr-event="offerte_aanvraag" kies je je eigen eventnaam.
Wat telt als conversie
De formulierinzending als lead-aanvraag. Of een lead gekwalificeerd is, bepaal je in je CRM; Roots beoordeelt dat niet.
Een klik op een tel: link is een telefoonklik, geen bevestigd gesprek. Met de nummerpool (data-sr-phone) en de webhook van je telefooncentrale telt een beantwoord gesprek met duur.
Waar de waarde vandaan komt
Geen bedrag uit het formulier. Het conversietype Formulier / offerte rekent met: gemiddelde dealwaarde × scoringskans, zodat aanvragen eerlijk vergelijkbaar zijn met orders.
Voorbeeld: eventnaam en e-mailadres meegeven
<form data-sr-event="offerte_aanvraag" data-sr-email="{{ je e-mailveld }}"> ... </form>
Aanvullende configuratie
  • Stel in Conversies & waarde de gemiddelde dealwaarde en de scoringskans in.
  • Wil je dat de aanvraag in je CRM landt met de conversiebron? Stel HubSpot als bestemming in of gebruik je eigen webhook met een filter op de eventnaam.
  • Stuur gesloten deals terug met CSV-import of de CRM-webhook, met visitor_id of external_id; Roots koppelt ze aan het eerste bekende bezoek. Maximaal 5.000 rijen per import.
  • Ga je conversies doorsturen naar LinkedIn? Dan is een e-mailadres bij de conversie vereist; geef het mee met data-sr-email of via je eigen integratie.
Controleer of het werkt
  • Verstuur een testformulier in een privévenster en controleer de eventnaam in Test je tracking.
  • Check of het formulier niet met data-sr-ignore is uitgezonderd en of het juiste conversietype de waarde bepaalt.
  • Zet bij server-side doorsturen naar Meta of TikTok de testcode aan, zodat je de doorgifte in het Events Manager van het platform controleert.

Ingebruikname

De volgorde in je Roots-account

  1. 1Voeg je website toe en plaats het script vlak voor de afsluitende head-tag, zonder tag manager ertussen.
  2. 2Controleer in Websites & pixel dat Script geplaatst en Events ontvangen groen worden.
  3. 3Geef in Conversies & waarde elk event de juiste naam en waarde.
  4. 4Verbind je advertentieaccounts voor kosten, klikken en impressies.
  5. 5Zet eventueel server-side doorsturen, de order-webhook of offline-import aan.

Elke stap staat ook in je Roots-account, onder Websites & pixel, Conversies & waarde en Test je tracking. Dit overzicht beschrijft werking die in het product bestaat; instellingen en platformvereisten kunnen per omgeving verschillen.