Generate a valid GA4 event name
Produces a correctly formed lowercase snake_case name, checks it against GA4's reserved prefixes and forty-character limit, and — most usefully — tells you when a recommended event already covers what you're naming. A custom event that means the same thing as purchase costs you every built-in ecommerce report, which is a high price for a name someone preferred.
Free30 minutesNo obligation
Generate a GA4 event name
Produces a correctly formed lowercase snake_case event name, checks it against GA4's reserved prefixes and 40-character limit, and tells you when a recommended event already covers what you're naming — because a custom event that means the same thing as purchase loses you every built-in report.
Fill in Action to generate the output.
Event naming · what breaks
What this tool is for — Event naming
- 01
You're adding a custom event
And want to check a standard one doesn't already fit.
- 02
Your team invents names ad hoc
And reporting has fragmented.
- 03
You're writing a data layer spec
And want consistent naming in it.
Event naming · the fix
What you get out of it — Event naming
A valid, correctly formed name
Lowercase snake_case.
Validity checks
Reserved prefixes and the character limit.
A recommended-event nudge
When one already covers your case.
Event naming · architecture
Why naming discipline is worth more than it looks
Event names are strings with no validation. Consistency is the only thing keeping triggers and reports working.
- 1
Custom events lose built-in reporting
GA4's ecommerce reports are built around the recommended names. A custom equivalent means rebuilding all of it yourself.
- 2
Casing inconsistency breaks triggers
AddToCart on one page and add_to_cart on another is two events, and a trigger matching one misses the other.
- 3
Reserved prefixes are silently rejected
Names beginning ga_, google_ or firebase_ won't work and won't necessarily tell you why.
- 4
The name has to match everywhere
Data layer, container trigger, documentation. Any divergence is a trigger that fires in some places and not others.
Event naming · diagnose
What this tool cannot tell you — Event naming
Stated up front, because a tool that implies more confidence than it has is worse than no tool. These are checks you have to run yourself.
- 01
Whether the event is worth tracking
Naming is downstream of that. Most specs are too long, not too short.
- 02
Whether it conflicts with an existing event
Check your own event list — it can't see your property.
- 03
Whether your implementation uses it consistently
Use the data layer validator against a live payload.
- 04
Whether GA4's recommended list has changed
It changes. Verify against Google's current documentation.
Event naming · prove
How to confirm the result — Event naming
Against your own records, not against the tool's output.
Source of truth
your GA4 property's actual event list
- The name confirmed absent from your existing event list before adding it.
- The same string used in the data layer, the trigger and the documentation.
- A live payload checked to confirm the name arrives as written.
- The name recorded in your data layer specification.
- Reconciled over a fully closed window, matched per record rather than on totals.
- Re-checked after your next site release, which is when most breaks happen.
Event naming · free audit
What we check in the free audit
- Whether the event is worth tracking
- Whether it conflicts with an existing event
- Whether your implementation uses it consistently
- Whether GA4's recommended list has changed
Checked against
your GA4 property's actual event list
Free30 minutesNo obligation
Event naming · when not to buy
Why this isn't gated — Event naming
There's no email form in front of it, and that's deliberate.
- A tool you have to pay for with your contact details is a lead form wearing a costume. If this is useful, it should be useful without a transaction.
- Everything it does runs in your browser. There is no endpoint, so there is nothing for us to collect even if we wanted to — open your network tab and check.
- It will tell you when you don't have a problem. That outcome costs us a sale and happens regularly, which is the point of publishing it rather than putting it behind a call.
- If it does find something and you'd rather fix it yourself, the reference pages on this site cover the how. Hiring us is one option, not the conclusion.
Event naming · what we deliver
What it checks — Event naming
Format
Lowercase snake_case, hyphens and spaces collapsed.
Reserved prefixes
ga_, google_ and firebase_ are rejected by GA4.
Length
The forty-character event name limit.
Recommended events
Whether GA4 already has a name for what you're describing.
Pricing
Pick the package that fits your ad spend
Browser-side starter
$400One-time fee · lifetime ownership
If the tool found something and you'd rather not fix it yourself: we repair the root cause in your existing setup and verify it on a live conversion.
- Root cause fixed, not worked around
- Verified on a live conversion
- Reconciled against your own records
- Written handover
1st-party server-side
Recommended$800One-time fee · most popular
Removes the class of failure rather than the instance. Money events from your own records through a first-party container on your subdomain.
- First-party server container on your own subdomain
- Events from your records, not the browser
- Deduplicated on a shared event ID at every destination
- First-party cookies beyond Safari's 7-day cap
- 95%+ accuracy and 8+ Meta EMQ, guaranteed in writing
Full 1st-party stack
$1,800One-time fee · lifetime ownership
Every paid channel server-side plus the offline loop, with monitoring so the next break surfaces in days rather than at quarter end.
- Everything in 1st-party server-side
- Pinterest, Snapchat, Reddit and LinkedIn CAPI
- CRM and offline conversion loop
- Refunds and cancellations corrected wherever each platform allows it
- Monitoring on every destination
FAQ
Event naming questions, answered
Recommended, wherever one fits. GA4's built-in reports only recognise those exact strings, and a custom equivalent loses all of it.
Forty for event names. Longer names are truncated or rejected, so check before implementing.
Because that's what GA4's recommended events use, and mixed conventions across pages produce triggers that fire inconsistently.
No — it has no access to anything. Check your own event list for conflicts before adding a new name.
Free · 30 min
Get an event taxonomy that holds up
Free30 minutesNo obligation
