Tracking set up around a page's markup breaks the day the page is rebuilt, and nobody notices for a month. Name events for the action instead and the redesign cannot touch them.
A naming scheme
Object, then action, in plain words: lead_form_submit, quote_request_start, phone_number_click. Not button_3_click or hero_cta. Put the location in a parameter, not the name, so one event can be compared across pages.
Own the list
- Keep one document of every event, what fires it and what it is for.
- Fire events from the code, not from click selectors in a tag manager, wherever you can.
- Check the list against reality once a quarter; dead events are noise.