GTM Ultimate Stack

Apply a naming convention across every brand with find & replace

Turn a naming rule into a precise selection, preview the new names, and stage one reviewed rename across every container that needs it.

Write the rule in plain language first

Bulk renaming is useful when the change is repetitive and the rule is clear. It is risky when a broad match catches items with different purposes. Before you touch the find box, write down three things:

  • The result: for example, GA4 event tags are named 'GA4 - Event - ' followed by the event name, unchanged.
  • The scope: which entity, which types, which brands.
  • The exclusions: for example, the paused promo tags, or anything owned by another team.

If you don't have an agreed convention yet, agree one with the account owners first. Write it down with examples of good names and the exceptions you will allow.

The rule in words on the left; the same rule as a selection and a find & replace on the right.

Two panels: a plain-language naming rule with an exclusion, and the matching filter, regex find and replace pattern.

Build the selection

Extract every brand the rule applies to, then filter until the table shows exactly the items you mean, for example Type: Google Analytics: GA4 Event and Status: Active. Look at the start and end of the list and a few awkward rows in the middle.

Open Rename… from the selection bar. The rename panel works on one of two scopes:

  • Selected rows: only the rows you have ticked.
  • All shown rows: every row the current filter shows.

All shown rows never touches a row the filter hides. Selected rows includes every selected row, including any selected earlier and now hidden. The selection bar's (N hidden by filter) count tells you if that applies. If the scope you are using becomes empty, the panel closes.

All shown rows leaves hidden rows alone. Selected rows means every selected row, so check the hidden-by-filter count first.

A rename scope switch between selected rows and all shown rows over five tag rows, one dimmed as hidden by filter.

Find and replace

Type what to find and what to replace it with. Two toggles control how the match works:

  • .* treats Find as a regular expression. Capture groups can be used in the replacement as $1, $2 and so on.
  • Aa makes the match case-sensitive. Off by default.

The panel counts how many names will change and previews the first few. A worked example for the rule above:

  • Find: ^ga4[ _-]*(.+)$ with .* on and Aa off.
  • Replace with: GA4 - Event - $1
  • Result: ga4 form submit → GA4 - Event - form submit, GA4_purchase → GA4 - Event - purchase.

Apply to names stages the renames in the table. Nothing is written yet. For a one-off correction, double-click a name in the table and edit it directly.

A regex with a capture group turns three inconsistent names into the convention. The panel counts the changes before you stage them.

A find and replace bar types a regex and a replacement, then three tag names are struck through and replaced with GA4 - Event - names.

Check the awkward cases

Rules that look tidy can produce untidy names. Before you review, scan the staged names for:

  • Double prefixes: names that already followed the convention and now have it twice.
  • Separators and spaces: form submit and form_submit become two different names for the same thing.
  • Near duplicates: two items that become indistinguishable.
  • The wrong vendor: a broad match that caught something like GA4 Ads Remarketing.

If a selection needs several exceptions, split it into smaller batches rather than relying on a clever rule that is hard to explain. Select the odd rows and press Revert to put their names back.

Four ways a tidy rule produces untidy names: a double prefix, kept spaces, a near duplicate and the wrong vendor.

Four proposed renames flagged as double prefix, spaces kept, near duplicate and wrong vendor.

Review the renames per container

Press Review & apply. Each container lists its would rename lines as old name → new name, and shows the workspace they will go into. Check that the number of renames matches the number you intended.

Display names onlyRenaming changes the name you see in GTM. It doesn't change the event names or parameter values a tag sends. If what you really want is to change the measurement itself, give that its own specification and test plan.
Renames are listed per container as old → new, with the workspace each one lands in.

A review dialog with would-rename lines across three containers, all going to a workspace named Naming Q4.

Apply, publish and confirm

Apply the reviewed batch. In GTM, open each container's workspace and check that it holds only your renames, not someone else's pending changes. Then publish.

Extract again and filter by the new prefix to confirm the names are live in every brand. To check the convention across all your accounts from then on, use Standardization Audit: its exceptions become your next, smaller rename batch.

After publishing, a standards check across brands shows what still breaks the rule. That becomes the next batch.

A grid of naming checks against four brands with ticks and a few exception badges.

ODDVX for Windows

Build once. Stage it in every brand.

Start free on one GTM account. Premium adds several accounts in one run, exports and scheduled reports.