How to track button clicks without writing code or touching GTM
Most click-tracking guides end with 'now add this event to Google Tag Manager.' Here's how to skip all of that.
You want to know how many people click your "Start free trial" button. Reasonable. It is probably the single most important number on your site.
So you search for how to track it, and every guide hands you the same homework:
- 1
Open Google Tag Manager
Create a container, install it on your site if you haven't already.
- 2
Create a trigger
Tell GTM which clicks count, by CSS selector, text, or URL.
- 3
Define a variable
Capture what was clicked so the event means something.
- 4
Set up a custom event
Wire the trigger and variable into an event GA4 will accept.
- 5
Test in preview mode
Click around your own site hoping the debugger lights up.
- 6
Publish the container
Ship it, then repeat all of this for the next button.
Six steps and a new tool to learn, for one button. Add a second button and you do it again.
There is a faster way, and it starts with a question nobody asks: why are you tagging clicks one at a time at all?
The manual approach, and why it doesn't scale for a solo founder
The standard GTM method works. I'm not going to pretend it doesn't. But look at what it costs a one-person business.
Every new button, every renamed CTA, every landing page test means going back into the tag manager and wiring it up again. Miss one and you have a silent gap in your data that you won't notice until you go looking for a number that isn't there. The tooling assumes you have someone whose job is to maintain it. You don't. You have a product to ship.
GTM is built for marketing teams who change tags constantly and want a sandbox to do it in without bugging a developer. If that's not your situation, you're carrying the weight of a solution to a problem you don't have.
The automatic approach
Here's the shift. Instead of declaring each button you care about ahead of time, track every meaningful click by default and decide what matters later.
The buttons and links worth tracking on a normal site follow predictable patterns. They are <a> links, <button> elements, submit inputs, and things a developer has marked as clickable for accessibility. A script can watch for clicks on all of those automatically, record what was clicked and where, and leave you to read the results.
Tag-by-tag (GTM)
- One trigger + variable + event per button
- New CTA means another GTM session
- Renamed buttons silently break history
- Preview mode to verify each tag
Automatic (usrPeek)
- One script tag, every CTA tracked from day one
- New buttons are already tracked when you ship them
- Renames show up alongside the old name in history
- Nothing to verify, there is no tag manager
What you do with the data
Tracking clicks is only useful if it answers a question. The two I reach for constantly:
Which CTA actually gets clicked. You almost always have more than one call to action, and you are usually wrong about which one carries its weight. I've shipped hero buttons I was sure about that got beaten three to one by a plain text link in the footer.
What happens after the click. Being able to follow one visitor from the button they clicked to whether they finished signing up is where the actual insight lives, and it's the part GTM-and-spreadsheets makes painful.
A click is a promise; a conversion is the payoff.
usrPeek gives you both out of the box. Automatic CTA tracking feeds straight into visitor journeys and conversion goals, so "which button gets clicked" and "did that click turn into a customer" are the same two clicks away, not a tagging project.
You have one button you care about most. You shouldn't have to build a pipeline to count it. Add usrPeek to your site and your clicks are tracked before you've finished your coffee.
See what your visitors actually do
usrPeek is dead-simple analytics for solo founders. One script tag for visitor journeys, auto-tracked clicks, AI traffic, and a daily email. No bolt-on cookie tooling.
Start for free