Scott Krukowski Scott Krukowski

Case Study · Paid Media + Attribution

Live

From flying-blind to revenue-per-channel.

Inherited ~$24K/yr in Google Ads spend with zero conversion tracking, zero GCLID capture, and zero defined conversions. Installed the full attribution stack end-to-end — GA4 events, CRM webhook, WooCommerce purchase tracking — and shipped the Craft & Sign promo landing page as the first measurable campaign. The company can now say which dollar made which sale.

Demo Reel · Coming

Craft & Sign Promo · Landing Page Walkthrough

15-20 second recording: land on page → scroll to form → fill and submit → success state → CRM confirmation. Audio stripped for silent loop.

Placeholder

The rebuild, in five stages

Each stage is a separate fix that the prior one depended on. Scroll through — on desktop the visual locks on the right and updates as you move. On mobile, scroll stacks.

Step 01 · Starting point

Zero attribution.

Inherited ~$24K/yr in Google Ads spend with no conversion tracking, no GCLID capture, and no defined conversions. Every campaign, every click, every dollar — unmeasurable.

Step 02 · Foundation

Install GA4 + conversion events.

Stood up GA4 properties per vertical, defined promo_claimed, form_submit, and purchase as conversions. Linked GA4 to Google Ads for auto-tagging. Verified via debug view.

Step 03 · Attribution

GCLID stamping + CRM webhook.

Captured GCLID on landing pages, persisted to the lead record, fired a Zoho Flow webhook on form submission. Google Ads now sees every offline conversion — down to the originating click.

Step 04 · Commerce

Google for WooCommerce.

Wired the e-commerce backend so purchase events flow straight into Ads as revenue conversions. First time the team could see not just clicks, not just leads — but closed revenue per campaign.

Step 05 · Outcome

First measurable ROI per channel.

Craft & Sign promo launched with full UTM tracking, CRM attribution, and GA4 events. Reports now ladder: channel → campaign → landing page → conversion → revenue. Budget reallocated against real return.

Scrollytelling · Screenshots Coming

Attribution stack before → after

Each scroll step will lock a matching screenshot here — the empty GA4 view, then GCLID landing the lead, then the closed-loop revenue report. Currently placeholder until we capture.

The problem

Twenty-four thousand dollars a year in Google Ads, running across multiple verticals, with no conversion events defined, no GCLID capture on the landing pages, no CRM webhook on form submit, and no e-commerce purchase tracking. The account was effectively untrackable. Nobody could say which campaign drove a sale because the infrastructure that would tell them had never been installed. Rebuilding this before buying more media was the only honest move.

The Craft & Sign launch

With the stack in place, Craft & Sign became the first fully-measured campaign: a Next.js landing page that captured email + GCLID, revealed a coupon, fired a promo_claimed GA4 event, posted to Zoho Flow, and redirected the user into the WooCommerce storefront. When the purchase closed, Google for WooCommerce reported the revenue back to Ads against the originating click.

For the first time, the campaign report answered real questions: what did this ad spend? What did it make? What's the CAC? Is this vertical worth doubling? Questions the team had effectively given up on asking.

Why it matters

Attribution is the difference between a marketing budget and a marketing investment. Without it you're running on opinion. With it, every dollar defends itself or gets reallocated. This was the fix that had to come before the next ad dollar — the kind of infrastructure work that rarely gets celebrated but compounds for years.

Outcomes

  • First measurable ROI per channel — previously impossible
  • GCLID-to-CRM closed-loop: every click attributable down to the lead record
  • Shipped Craft & Sign promo as the template — reusable for any future campaign
  • Zero net-new SaaS spend; entire stack built on existing Google + CRM tooling

Stack

Next.jsVercelGA4Google Ads APIZoho FlowWooCommerceOAuth 2.0