Quick answers to the questions we hear most. Each answer links to the full guide. Can't find what you need? Email support@code-cube.io or use Get support in the portal.
Getting started
How much work is it to set up Code-Cube.io? Do I need a developer?
Usually no. Tag Monitor is installed through Google Tag Manager in about 10–15 minutes. You import our tag template, create one tag and one trigger, and publish. You need access to GTM (preferably admin) and to the Code-Cube.io portal. DataLayer Guard is configured entirely in the portal, so nothing is added to your website.
→ Set up Tag Monitor (client-side) · Set up Tag Monitor (server-side)
How do I invite a colleague or our agency?
In the portal, go to Account & organization → User management → Invite user. The person receives an automated email to activate their account and set a password. Any invited user can invite others in turn.
I didn't receive my invitation email or 2FA code. What now?
Both come from a no-reply address, so check your spam folder first. The 2FA code is sent to the email address shown in the login pop-up. Tick Authenticate me for 30 days so you don't need a code every time. Still nothing? Contact support@code-cube.io.
Do I need to trigger checks manually, for example after a release?
No. Tag Monitor evaluates tags continuously on real traffic, and DataLayer Guard runs your scenarios on the schedule you set. New tags and triggers you publish in GTM are picked up automatically, with no extra configuration.
Tag Monitor
Which tags are monitored? Can you monitor a local or custom vendor?
Every tag in a monitored container is covered by default: Google Ads, Meta, a regional vendor or a fully custom tag. You don't need to list them.
Which pages are monitored?
Tag Monitor runs on real visitor traffic on every domain you add under General settings, so the pages your visitors actually reach are covered. Traffic on domains that aren't listed is not processed. To narrow which pages a specific alert rule looks at, such as only your checkout, add a page path or URL trigger to a Tag Volume monitoring rule.
→ Set up Tag Volume monitoring
Which sampling rate should I use?
Start with 10% and adjust from there. Low-traffic sites may need a higher rate to get reliable data. High-traffic sites can go as low as 0.5–5% to keep the load minimal. You set the rate with the built-in Random Number variable in your trigger. The setup guide has the exact values for each percentage.
Does Tag Monitor affect site speed?
Only minimally. The tag fires for a sample of your traffic only (for example 10%), and each request is about 400 bytes. That's smaller than many standard tags, such as Meta (about 700 bytes) or Google Ads (about 600 bytes).
I've set everything up, but there's no data in my dashboard. Why?
Check these four things, in order:
- The domain is listed under General settings and the container ID is added in the portal.
- Your GTM workspace is published to the right environment.
- The trigger is a Custom Event
.*with Use regex matching enabled. - The sampling rate isn't so low that a quiet site produces almost no hits.
My dashboard shows tag IDs instead of tag names. How do I fix that?
Tag names must be included in each tag's metadata. The quickest way is Start bulk editing in the portal, which updates every tag in your container through the GTM API. Alternatively, open each tag's Advanced settings, tick Include tag name and set the key to name.
→ Bulk edit tags in Google Tag Manager
Will bulk editing change my live GTM container?
Not without your approval. Bulk editing creates a separate Code-Cube.io workspace in your container (so make sure a free workspace is available). You review the changes there and publish them yourself.
What exactly counts as a tag error?
A tag counts as an error when Google Tag Manager itself reports it as failed. This covers a runtime error, a sandbox permission being denied, a timeout, or the template reporting a failure. A tag that is interrupted because the page unloads (for example during a redirect) is not counted as an error.
→ What is considered an error?
Can I monitor our server-side GTM, including the Cloud Run servers it runs on?
Yes. Server-side containers use their own template and setup guide. Cloud Run monitoring adds alerts for CPU, memory, uptime and SSL certificate expiry on your GTM servers. It needs a GCP service account key, which is used once during setup and never stored by Code-Cube.io.
→ Set up Tag Monitor (server-side) · Monitor Cloud Run
Does Tag Monitor work in our mobile app?
Yes, as long as your app uses Google Tag Manager for mobile apps. Contact support@code-cube.io to set this up.
Can I get the raw data in our own BigQuery?
Yes, on the Premium package. We share a read-only, real-time dataset (usually updated within 1–2 minutes) through BigQuery Analytics Hub. Query costs are billed to your own GCP project, and data is kept for 12 months.
→ Configure BigQuery data access
Alerts & notifications
Where can we receive alerts? Can our agency get them too?
Alerts can go to email, Slack, Microsoft Teams, Google Chat and WhatsApp. You can add contacts both inside and outside your organisation, so your agency can receive the same alerts as your team.
What's the difference between error, volume and anomaly alerts?
Alert | Tells you that… | Example |
Tag error | GTM reports a tag as failed | A tag times out after a site release |
Tag volume | A tag stopped firing or fires far less than expected | Your purchase tag hasn't fired in an hour |
Tag anomaly | A tag fires much more or much less than its normal pattern | Purchase tag fires twice per order, doubling reported revenue |
Tag anomaly alerts are part of the Code-Cube Pro and Enterprise plans.
When are alerts sent? Can I limit how many I get?
Tag error and anomaly alerts arrive as one summary every morning at 09:00, and a weekly error overview is sent every Monday. You're only alerted about new or escalated issues, not about the same problem every day. To make alerts quieter, raise the Threshold for first-time notifications, adjust the Deduplication sensitivity, or set anomaly rules to Major only.
→ Tag error notifications · Tag anomaly notifications
I see an issue in the dashboard but didn't get an alert. Why?
The most common reasons:
- The tag isn't part of a Tag Volume monitoring rule (volume and anomaly alerts only cover tags in a rule).
- The anomaly is labelled Info and your rule is set to Major only.
- You were already alerted about it earlier. You'll hear about it again only if it gets worse or is still going on after a week.
→ Set up Tag Volume monitoring
A tag keeps triggering alerts I don't need. Can I quiet it down?
Yes. Volume and anomaly alerts only cover tags that are part of a Tag Volume monitoring rule, so you can pause the rule or narrow it to the tags that matter. You can also switch Alert me on to Major only, lower the rule's check frequency, or raise the error threshold in the portal.
→ Set up Tag Volume monitoring
DataLayer Guard
What does DataLayer Guard do, and how is it different from Tag Monitor?
Tag Monitor watches your tags on real traffic. DataLayer Guard checks the data your tags depend on. A browser bot replays user journeys you define (such as "product page → add to cart") and validates every dataLayer event against the structure you expect. It runs off-site, so it adds nothing to your pages and has no impact on site speed.
→ DataLayer Guard introduction
How do I set up my first scenario?
- In General settings, add your domains, time zone and check frequency.
- Create a scenario with a starting URL.
- Add steps such as Go to page, Click on element and Collect dataLayer object.
- Define the expected template for each collected event.
- Activate the scenario.
Start with one simple flow. Each scenario takes about 15–20 minutes.
→ Monitoring via Page Scenarios
How do I get past our cookie banner or a login screen?
Switch on Cookies acceptance or Login required in the scenario and add the clicks and inputs needed. For logins, always use a dedicated test account, never a real customer's credentials.
Can I test a scenario before it goes live?
Yes. Use the Scenario Tester. You watch the bot run your scenario in a live browser and see each step pass or fail. Failed fields show the expected value next to the actual value. You can export the results as PDF or Excel.
My "Collect dataLayer" step doesn't find the event. Why?
Most often the page navigates away right after pushing the event, which is typical for purchase and form submissions. Switch the step to Collect dataLayer before navigation. Also check that the event name matches exactly. If the step fails intermittently, add a Wait until element appear step before it.
We use the same login and cookie steps in every scenario. Do I have to maintain them separately?
No. Save them once as a Reusable component and insert the component into each scenario. When your login flow or cookie banner changes, you update the component once and every scenario picks up the change.
Which checks can I set on dataLayer values?
For each key in an event template, you set the expected type (string, number, boolean, array, object), whether the key is Required, and whether the value must be an Exact match. For GA4 ecommerce events you can start from a built-in preset, such as add_to_cart or view_item.
→ Define the dataLayer template
Will DataLayer Guard's bot visits show up in our analytics?
They can, because the bot behaves like a real visitor. It runs from dedicated IP addresses, so you can filter it out. Email support@code-cube.io to get the IP list.
We don't use a dataLayer, or we want to check that data actually reaches the server. Can you help?
Yes, with Network Inspector. It uses the same scenarios but checks the network requests your site sends: status codes, headers and payloads to endpoints such as GA4, Meta or your server-side container. It's well suited to setups without a dataLayer, to third-party pixels and to server-side tracking.
Data & privacy
Is Code-Cube.io GDPR compliant? What data do you store?
Yes. Code-Cube.io is built with privacy by design. Tag Monitor stores technical metadata only, such as which tag fired, when and with what status. DataLayer Guard automatically replaces values that look like personal data (names, emails, phone numbers, addresses) with <PROTECTED VALUE> before anything is stored. Data is deleted after 12 months.