Google Analytics 4 event limits: when custom tracking stops recording

Chart view in timeonsite.js with date filter applied to analytics dashboard.png

Written by

in

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Google Analytics 4 event limits: when custom tracking stops recording
Photo: Saleemkce via Wikimedia Commons (CC BY-SA 4.0)

Google Analytics 4 enforces a hard limit of 500 distinct event names per property. Cross that threshold and GA4 stops recording new events entirely—no warning in the interface, no email alert, just silent data loss.

Most solo operators discover this limit only after noticing gaps in their conversion funnels or realizing a new tracking event never logged a single hit. If you’ve layered on custom events for lead magnets, course enrollments, affiliate clicks, and content upgrades over months or years, you’re closer to the ceiling than you think.

How the 500-event cap actually works

GA4 counts every unique event name you send. That includes automatically collected events like page_view and session_start, recommended events like purchase and sign_up, and every custom event you’ve created.

Once you hit 500, GA4 stops processing new event names. Existing events continue to log normally, but any event name it hasn’t seen before gets dropped. Parameters on existing events still work—so if you send button_click with a new button_id parameter, that logs fine. But a brand-new event called webinar_registration won’t appear anywhere.

The limit applies at the property level, not per data stream. If you run multiple sites under one GA4 property, all domains share the same 500-event budget.

Where event bloat comes from

Three patterns push operators toward the limit faster than expected:

Plugin-generated events. WordPress analytics plugins, form tools, and membership platforms often fire custom events for every interaction type. Install three plugins that each create 20 events, and you’ve burned through 60 slots without writing a single line of custom code.

Developer handoffs. A contractor adds tracking for a product launch, then another developer implements event tracking for a new funnel six months later. No one audits what’s already there. Event names proliferate with slight variations—email_signup, email_sub, newsletter_subscribe—each consuming a separate slot.

Abandoned experiments. You test a new lead magnet, set up tracking, then retire the offer. The event stays in your GA4 property forever, even if it hasn’t fired in a year. GA4 doesn’t archive or expire old event names automatically.

How to audit your current event count

GA4 doesn’t surface your total event count in the main interface. To see where you stand, open the Admin panel, navigate to Data display under the Property column, and click Events. Scroll through the list and count manually, or export the table to a spreadsheet.

Pay attention to events with zero occurrences in the last 30 days—those are prime candidates for archiving. If an event hasn’t fired in three months and isn’t tied to a seasonal campaign, you probably don’t need it.

Check your GTM container too. Tag Manager configurations often include events that were set up for A/B tests or one-off promotions and never removed. Each orphaned tag still counts against your limit if it ever fires, even once.

What to do when you’re near the cap

GA4 lets you mark events as archived, but archiving doesn’t free up slots. Archived events still count toward your 500-event limit—they just stop appearing in some reports. To actually reclaim space, you need to stop sending the event entirely and wait 24 hours for GA4’s backend to recognize it’s gone.

The better fix: consolidate events using parameters. Instead of creating separate event names like download_ebook_seo, download_ebook_email, and download_ebook_productivity, send a single download_ebook event with a topic parameter. You’ll preserve granular reporting while using one event slot instead of dozens.

For operators running multi-brand properties, consider splitting into separate GA4 properties. Each property gets its own 500-event limit, and you avoid cross-contamination between unrelated sites. The tradeoff: you lose consolidated reporting and need to manage multiple configurations.

Before you hit the limit, document your event taxonomy. A simple spreadsheet listing every event name, what it tracks, and which tool or script sends it will save hours of forensic work later. Update it whenever you add new tracking, and review it quarterly to prune dead events.

If you’re building a new analytics setup or migrating properties, start with a naming convention that uses parameters heavily. It’s easier to prevent event bloat than to clean it up after the fact.

Spotted a gap in your GA4 setup or hit a tracking limit that cost you data? Reply and tell us—we cover the operational details other newsletters skip.

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Other newsletters you might like

One Two Three AI

One Two Three AI — in your inbox AI news, practical tips and how-to guides. One useful idea a day.

Subscribe

Love France

Your guide to travelling in France — itineraries, regional guides, food, wine, and everything you need to plan your trip.

Subscribe

How To Move To Ireland

A daily newsletter and blog for people moving to Ireland — visas and immigration, finding work, housing, healthcare, cost of living, banking, driving, schools and settling in.

Subscribe

Love Netherlands

Canal towns, hidden villages, Dutch stories — a slow, loving look at the Netherlands, written by the people who love it most.

Subscribe

Newsletters via the One Two Three Send network.  ·  Want your newsletter featured here? Click here