Your analytics say traffic is fine. Your revenue says otherwise. Somewhere between the landing page and the thank-you screen, people are struggling — and the tools you already pay for probably know where. This practice makes them say it out loud.
What this covers
- Customer journey analysis and mapping, friction and funnel audits
- Digital measurement strategy: event taxonomies, data-layer design, tracking plans, analytics QA
- Adobe Analytics and Customer Journey Analytics, Google Analytics, and Tag Manager implementation
- Session analytics and voice-of-customer integration — Glassbox, Qualtrics, and friends
- Personalization and recommendation strategy: segmentation, next-best-action, experimentation
- Conversion and engagement optimization, with measurement governance behind it
How the work runs
It starts with one number somebody already distrusts. A conversion rate, a completion rate, an enrollment count — whichever gets argued about in the meeting. I trace it backward: from the figure on the dashboard, to the report definition, to the tag that fired, to the interaction that did or did not happen. That trace is the cheapest way to learn whether your measurement describes the product or describes itself. The scope identifies the metric, systems, and evidence needed to investigate it.
Then the journey — not the flow in the design file, but the sequence a real person moves through, including the steps that leave your site. The confirmation email nobody owns. The phone call that ends the digital journey entirely. Session replay and support transcripts are usually more honest than the funnel report, and where the two disagree, the disagreement is the finding. I write down what happens, in order, with the system that holds each step named beside it.
Instrumentation comes third, on purpose. Once you know which moments decide the outcome, the event taxonomy nearly writes itself: what fires, when, with which properties, and who owns each definition. A taxonomy built first is complete and irrelevant. One built after the journey is smaller and answers the questions people actually ask.
Personalization and experimentation sit on top, last. A recommendation engine multiplies whatever your segmentation believes — and if the segmentation is a guess, you have automated the guess and made it harder to see. The first pass can include a traced number, journey map, and ranked gap list. Deliverables and timing are agreed from the available evidence; implementation is scoped separately.
What you get
Artifacts, not a deck of observations. What comes out of this work:
- A traced number. One metric followed from the screen it appears on back to the event that produced it, with every filter, join and transformation named.
- A friction map. The journey in order, which system owns each step, where people stall, and what the stall costs in abandoned sessions, support contacts, or revenue.
- A measurement gap list, ranked. What is not captured, what is captured wrong, and what is captured twice — ordered by what fixing it would change.
- A tracking plan engineers can build from. Event names, triggers, properties and owners, plus the QA check that proves each one fires when it should.
- Metric definitions that survive an argument. Written once, owned by a named person, precise enough that two teams reporting the same thing agree.
- A personalization scope somebody can sign. Which segment, which surface, which decision, and what evidence would mean it worked — agreed before anything is built.
Each fits on a page or two. If a finding needs forty slides, I have not finished thinking about it.
Inspect a measurement brief
This fictional example shows how a measurement question becomes a testable plan. It is not a client result. The question: “People click Submit, but how many inquiries actually reach the team?”
Separate intent from delivery
A click records an attempt, not a received inquiry. In this example, the form sends a request, the server saves it, and a notification is sent to the team. Those are three different events. A notification failure must not erase a successfully saved lead or cause a retry to create a duplicate.
- Inquiry attempted: record the form action after local validation. Do not include the visitor’s message, email address, or other form contents in analytics.
- Inquiry accepted: record only after the server acknowledges a saved inquiry. Count each accepted inquiry once, including after a retry.
- Notification status: track this in operational records. “Queued” and “delivered” are different states; neither proves a person has read the message.
Test the gaps before changing the design
Try an invalid form, a rejected server request, a lost connection after saving, and a notification failure. Check which records exist and what the visitor sees in each case. Reconcile accepted inquiries with the lead store for the same reporting period, excluding named test records. Where analytics depends on consent, report its coverage rather than treating every missing event as an abandoned inquiry.
The resulting brief defines the metric, event triggers, privacy boundaries, failure scenarios, and an owner for delivery problems. It does not assume a conversion increase. Bring a journey or disputed metric to Kenny; access, implementation, and measurement scope are agreed before work starts.
When this is not the right call
Skip this work if nothing can change as a result of it. Measurement earns its cost only when a finding can move a roadmap. If the next two quarters are locked and fully staffed, better instrumentation buys you better-informed regret. Wait until there is room to act, then call.
Skip it if the problem is upstream. When three versions of the same number exist because three pipelines compute it differently, no amount of front-end event work settles the argument — it only moves the argument. That is data platform work, and it goes first.
Be skeptical of experimentation at low volume. A test needs enough traffic to separate a real effect from ordinary variation, and on a small funnel that can take longer than the decision can wait. Watching ten recorded sessions and calling five customers will usually tell you more, faster, for less. You can do that yourself this week, and you should.
Start with the digital measurement audit
An investigation of what your measurement captures, what it misses, and which decisions the evidence supports. Agree on the funnel, systems, deliverables, access, timing, and fees before work begins.
Agree on the engagement
Start by describing the problem and what would make the work useful. The proposal defines the deliverables, responsibilities, access needed, acceptance criteria, fees, and timing before paid work begins. Implementation, third-party tools, production changes, and ongoing support are included only when explicitly scoped.
Work with Kenny. Sending an inquiry does not commit you to an engagement or require permission to publish your work.
Explore the method
Work through the method in the lessons below. Free lessons require an account; Series lessons also require eligible learning access. Each lesson link is labelled so you can check the requirement before starting. Learning paths may contain lessons with different access requirements.
- Why two dashboards disagree (Series access required) — the four ordinary causes behind almost every mismatch, and how to tell which one you have.
- Trace one number end to end (Series access required) — how to follow a figure from the screen back to the row that made it, the exercise this practice is built on.
- Define a metric so it survives an argument (Series access required) — the six things a definition needs before it goes on a dashboard anyone decides from.
- Design a dashboard around one decision (Series access required) — why most dashboards get opened twice, and what makes one get opened on a Tuesday.
Those four sit inside one path, Make the numbers hold up, if you would rather work the sequence than pick one.
Strategy to implementation
Kenny can carry the work from assessment into requirements and delivery support when those stages are included in the agreed scope. See all six service families, or start a conversation.