Shoporama Tracking
Complete guide to Shoporama's built-in tracking engine. Set up server-side tracking and send data to Facebook, Google, Pinterest, Snapchat, TikTok and LinkedIn.
In collaboration with the agency 1260 A/S, Shoporama has developed a tracking engine that can send data from your webshop to Facebook, Google Analytics, Google Ads, Pinterest, Snapchat, TikTok and LinkedIn.
The purpose is that you as a webshop owner do not have to maintain a standard tracking setup that is otherwise the same for all webshops.
How to get started
Activate tracking
- Log in to Shoporama
- Go to Settings (the gear in the top right corner)
- Select Tracking
- Enable Enable standard data layer
Enable server-side tracking (recommended)
- Enable Enable server-side tracking
- Fill in the tracking subdomain (we recommend
a) and press Save - Set up the 2 DNS records following the instructions on the page (this can take up to 24 hours)
Consent Mode (Consent Mode)
By default, data flows freely between your online store and 3rd parties. By enabling Consent Mode, you ensure that data is not sent until the user gives consent. We use Google Consent Mode.
Only enable Consent Mode if your theme has a cookie solution that supports Consent Mode - for example Cookiebot, Cookie Information or Openli.
Connect to 3rd parties
- Activate Facebook
- Insert your Facebook Pixel ID (required)
- Insert your Facebook Access Token (required)
Events: PageView, ViewContent, AddToCart, InitiateCheckout, Purchase
Google Ads
- Activate Google Ads
- Insert your Google Ads Conversion ID (required)
- Insert your Google Ads Conversion Label (Order) (required)
Events: Purchase
- Activate Pinterest
- Insert your Pinterest Tag ID (required)
- Insert your Pinterest Access Token (required)
Events: page_visit, view_category, add_to_cart, checkout
Snapchat
- Activate Snapchat
- Insert your Snapchat Pixel ID (required)
- Insert your Snapchat API Token (required)
Events: PAGE_VIEW, LIST_VIEW, SEARCH, VIEW_CONTENT, ADD_CART, START_CHECKOUT, PURCHASE
TikTok
- Activate TikTok
- Insert your TikTok Pixel ID (required)
- Insert your TikTok Access Token (required)
Events: PageView, Search, ViewContent, AddToCart, InitiateCheckout, PlaceAnOrder
- Activate LinkedIn
- Insert your LinkedIn Insight Tag ID (required)
Frequently asked questions
Do I need to enable it if I'm already running tracking?
The setup is optional. If you enable built-in tracking, we recommend that you remove all existing tracking to avoid double tracking.
Can I decide what I track myself?
Generally no, but developers can send their own events (see section below). Out of the box, Shoporama tracks:
- Page views
- Searches *
- Category/landing page views
- Product views
- Adding to cart * Adding to cart
- Starting checkout
- Completed purchase
* If your theme uses AJAX for search or add to cart, your developer will need to implement additional code (see below).
Can I access your Tag Manager?
No, but you can use our default data layer with your own Google Tag Manager.
Can I send data to other 3rd parties?
We support the major providers. If you want others, you can contact us at support@shoporama.dk.
For developers
AJAX-based themes
If you add products to the cart via AJAX, Shoporama cannot send standard events for them. You need to implement them yourself using Google Tag Manager's GA4 syntax:
add_to_cart event:
dataLayer.push({ ecommerce: null }); dataLayer.push({ event: "add_to_cart", ecommerce: { currency: "DKK", value: 199.00, items: [{ item_id: "SKU_12345", item_name: "Product name", price: 199.00, quantity: 1 }] } });
search event:
dataLayer.push({ ecommerce: null }); dataLayer.push({ event: "search", search_term: "keyword" });
Custom events
You can send custom events through our setup with dataLayer.push(). Use custom_event as the event name and specify your own name in custom_event_name:
window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "custom_event", custom_event_name: "My Event" });
You can also include a user_data object. Example of newsletter signup:
window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "custom_event", custom_event_name: "generate_lead", user_data: { email_address: "kunde@example.com", address: { first_name: "Name" } } });