Lesson 4 of 4
Tie-Breakers & Trade-Offs
The ladder gives the ideal; reality adds constraints. A few rules of thumb for when the clean answer collides with a deadline.
Ship now (patch)
- Need it live today, dev backlog is weeks.
- DOM scrape or built-in trigger to capture data now.
- Log a ticket for the proper dataLayer push.
- Accept the brittleness, knowingly and temporarily.
Build right (durable)
- High-value or ad-spend-driving conversion.
- Push for a real dataLayer event from the dev.
- Worth the wait, fragility here is expensive.
- Document the spec so it's built once, correctly.
When to escalate to a developer
- The value isn't in the dataLayer or the DOM (e.g. it only exists server-side).
- The data is sensitive and must be handled/hashed correctly.
- You're scraping something fragile for a conversion that drives spend.
Don't over-engineer
The opposite failure is writing a clever listener when a one-line Click Text trigger would do. The highest rung you can reach beats the most sophisticated one you could build.
Decision in one line: Highest reliable rung that's available now, + a ticket to climb higher if you had to settle.
Key takeaway
Patch with a lower rung when speed matters, but log the fix; insist on a dataLayer push for high-value conversions; escalate when data lives outside the page; and never build more than the job needs.