← Help Center
Install
Google Tag Manager
Two tag templates: the capture script on all pages, and conversions from data layer events.
Not yet checked in a live Tag Manager container.
Two tag templates. Import each in Tag Manager: Templates > Tag Templates > New > (menu) Import. Both files are also served by OrcLink:
| Template | File | Download |
|---|---|---|
| OrcLink capture script | orclink-template.tpl | /api/capture/gtm-template |
| OrcLink conversion | orclink-conversion.tpl | /api/capture/gtm-template?t=conversion |
1. The capture script (all pages)
- Import
orclink-template.tpl. On the template's Permissions tab, change "Injects scripts" to your own tracking subdomain, for examplehttps://t.yourdomain.com/t.js*. - New tag from the template: tracking subdomain and workspace id (Conversions > Install). Trigger: All Pages (or Consent Initialization order: load your consent manager first).
The script decides consent itself (Google Consent Mode, CookieYes, OneTrust, Cookiebot, IAB TCF, Global Privacy Control).
2. Conversions from data layer events
Use this when your site already pushes an event to the data layer on a lead or a sale, for example:
dataLayer.push({ event: 'form_submit', email: '[email protected]', lead_id: 'L-7781' });
dataLayer.push({ event: 'purchase', transaction_id: 'A-10042', value: 120, currency: 'USD' });
// map: order_id = {{DLV - transaction_id}}, value, currency (no kind needed)- Import
orclink-conversion.tpl. It needs no permission change: it only callswindow.orc.trackConversion. - Create Data Layer Variables for the values (for example
DLV - email,DLV - transaction_id). - New tag from OrcLink conversion:
- Fields: one row per key. At least one of
email,phone,order_id,lead_id. Optional:kind(lead, form, appointment or order),stage(used only for a stage you allowed in Capture > Rules > Stages a page may set; any other stage is recorded as a claim and not used),value,currency(the value on the page is recorded as a claim; revenue comes from your store, payment or CRM connection (or the revenue API); it is never summed or sent to an ad platform). Any other key only if you allowed it in Capture > Rules > trackConversion fields (with its type): a value of that type is stored with the conversion; the server drops all others and counts them by name in the test tool. - An
order_idmakes the conversion an order, whateverkindsays;kind: orderwithout anorder_idis an order too. With your store or payment source connected, every browser order is recorded as a duplicate of that source's order (the store's record is the one counted and sent to ad platforms); without one it is counted and sent by click id, with no value. If the stage the conversion reaches is set to relay and has a default value, ad platforms receive YOUR default value for that stage, never the number the page sent. - Event id (optional but recommended): a value that is the same for one conversion, for example
{{DLV - transaction_id}}. The same id twice is one conversion. - Test conversion: tick while you test.
- Fields: one row per key. At least one of
- Trigger: Custom Event with the event name (
form_submit,purchase, ...). Fire it after the capture script tag (tag sequencing, or the same trigger on a later event). - Check with Capture > Test tool: one row of kind "trackConversion" with the field names read, hashed and dropped.
What is sent
- Only the fields you map. The template reads nothing from the page itself.
- Nothing before advertising consent: the capture script returns without sending while consent is pending or refused, and the tag still finishes.
- The OrcLink server hashes email and phone on arrival and never stores them raw.
order_id/lead_idare stored only as a keyed hash on the visit (so a later CRM or API record with the same id joins the same click). Allowed keys are stored with the conversion as typed values (number, enum value, ISO date, id; text up to 500 characters outside HIPAA mode). A key name that looks like personal or health data cannot be allowed, a number with 9 or more digits before the decimal point (an SSN or a phone written as digits) is never stored, and an id of 7 or more digits only is stored as a keyed hash. Do not list values that are names or conditions: OrcLink cannot tell. In HIPAA mode no free text is kept: text keys are dropped, a number keeps at most 6 digits before the decimal point, an id is stored only as a keyed hash and a date only as its month.
Known limits
- Connecting a store or payment source while a browser order is in flight can send that one sale to ad platforms twice.
- If your store's webhook is broken (the integration shows an error on the Integrations page), its orders are not counted until it works again; the browser copies stay marked as duplicates.
Not yet checked in a live Tag Manager container (no access when written): the template follows the documented .tpl format and its own test scenario passes against a stand-in of the sandbox APIs.