Nothing leaves the container on a hunch; every removal carries the evidence that made it safe.

When several agencies and in-house teams have worked in the same container, forgotten tags pile up quickly. We trace what still serves a purpose, what can be removed safely, and what continues to fire where it does not belong.

A GTM container with a complete inventory, confirmed duplicates resolved, and a documented reason for every item that remains.

A Zeo specialist sweeping obsolete tags out of an open GTM container

Some of the 500+ brands we've worked with

See all references
  • LC Waikiki
  • Lexus
  • Findeks
  • Mustela
  • Country Floors
  • Groupama
  • Elele

We examine the layers of tags, triggers, variables, and access that build up when a container changes hands without clear ownership. Four careful passes take the container from an uncertain inventory to a documented, understandable setup.

How we hold ourselves to it

  • Every tag, trigger, and variable gets counted — We list what exists, when it last fired, and whether anyone still recognizes it.
  • Find duplicates and conflicts — We check for the same pixel or event firing from two different tags, or triggers that silently override each other.
  • Who still has access, and should they? — We check user permissions against who's actually still working on the account and tighten what's too open.
  • Safe to remove isn't the same as forgotten — We separate tags that are clearly dead from ones that fire rarely but still matter, so nothing useful gets deleted by mistake.
  1. Pull the full inventory

    We export every tag, trigger, and variable in the container and note firing frequency where GTM exposes it.

    Container inventory

    AI assist
    Diffs the exported tag list against last quarter's export.
    Human gate
    A specialist confirms firing frequency GTM doesn't show.
    Owners
    GTM Specialist
    Illustrated figure stepping across a page of listed links
  2. Test in Preview mode

    We walk key pages with GTM Preview open to see exactly what fires, in what order, and whether anything doubles up.

    Preview test log

    AI assist
    Flags any tag that fires twice in one pass.
    Human gate
    A person walks the pages Preview can't script.
    Owners
    GTM Specialist
    Illustrated figure watching a monitor full of tracked rows
  3. Confirm with your team

    We go through anything ambiguous with whoever's been maintaining the container, so nothing gets removed that someone still relies on.

    Disposition list

    AI assist
    Drafts the disposition list from inventory and Preview notes.
    Human gate
    Whoever maintains the container signs off on each item.
    Owners
    GTM Specialist, Container Owner
    Two illustrated figures talking across a row of microphones
  4. Clean up and document

    We remove or pause what's confirmed dead, fix confirmed duplicates, and write down what's left and why.

    Cleanup log

    AI assist
    Generates the before-and-after log from the disposition list.
    Human gate
    A second person signs off before we call it done.
    Owners
    Container Owner, Access Admin
    Illustrated figure pruning excess pages from a document tree

Nothing gets deleted just because nobody remembers adding it

Automation diffs the exported tag list against the previous export, flags tags that fire twice in one pass, and drafts the disposition list. Removal is never automatic: a specialist walks the pages Preview cannot script, the container owner signs off item by item, and a second person reviews before anything is called done.

The final container is organized and documented so a new owner can understand it without relying on institutional memory.

  • Working document

    Full container inventory

    Every tag, trigger, and variable, with its purpose and status noted.

    Accepted when

    Every tag, trigger, and variable in the export appears in the inventory with a status.

    Cadence: Taken from the export at audit time

  • Change log

    Before-and-after cleanup log

    What we removed, paused, or fixed, and why, so the change is traceable later.

    Accepted when

    Any single change in the log can be reversed from what the log records.

    Cadence: Appended at every change

  • Access report

    Access review

    Who has access to the container and whether that access still makes sense.

    Accepted when

    Each account with access is matched to a current responsibility or flagged for removal.

    Cadence: Repeated each access cycle

We call it done when: every item is either kept with a documented reason or removed with a sign-off, and the before-and-after log lets someone reverse any single change.

A container passed through three sets of hands rarely has one clear owner left. Sound familiar?

A good fit when

  • Multiple agencies, freelancers, or in-house teams have touched your container and nobody has the full picture.
  • You suspect duplicate tags are double-firing, but nobody has confirmed it or measured the impact.
  • A new agency or team member is about to join, but container access no longer reflects who still owns the tags and triggers.
  • Container access is available and past maintainers can be named, but nobody has matched those users to current responsibilities.

Better handled as other work when

  • You need a new container with a fresh folder, naming, and environment structure. That belongs in GTM Web Container Architecture.
  • The tags and triggers causing the problem live in a server-side container. That belongs in Server-Side GTM & Cloud Setup.

If one of these is closer to your situation, start here instead: All Google Tag Manager Consulting tasks

We call it done when: the full inventory is out and someone has confirmed the firing frequency GTM's own screens do not show.

  • Google Tag Manager

    the container itself, read through its own publish history to date every tag found

  • Google Tag Assistant

    the Preview-mode pass that shows what actually still fires, before anything gets deleted

  • Omnibug

    an independent log of every outbound tag request, so a tag GTM's own preview panel undercounts doesn't get missed

Give us access and we'll separate what is safe to remove from confirmed duplicates and anything that still needs a person's decision.
Plan a GTM cleanup

No. We confirm every uncertain tag with your team before making a change. Leaving one unused tag in place is safer than removing something a team still depends on.