ProductPage traffic and UTM-tagged landings, Apr 4–17 (current 2w, green) against Mar 21–Apr 3 (prior 2w, purple). The last bar in each current-window series is Apr 17, a partial day — totals are reported both raw and excluding the partial day.
Every active UTM campaign, ranked by how many of its landers reached ProductPage. Reach volume is the 30-day ProductPage-visitor count; reach rate is that volume divided by total landings for the campaign over the same window.
?utm_campaign=X and visited the ProductPage anywhere in their session. Totals span a 30-day window because 2-week cells are too sparse for smaller campaigns. Rates are stable week-over-week; the trends in Section 01 apply uniformly.
| Campaign | Total Landings (30d) | Reached PDP (30d) | Reach Rate | Share of PDP |
|---|---|---|---|---|
| vip_launch_2025 | 2,401 | 909 | 37.9% ▲ | 22.1% |
| summer_sale_2024 | 2,158 | 629 | 29.1% ▲ | 15.3% |
| back_to_school_2025 | 401 | 92 | 22.9% | 2.2% |
| spring_collection_2025 | 456 | 103 | 22.6% | 2.5% |
| display_2025 | 1,520 | 338 | 22.2% | 8.2% |
| flash_sale_2025 | 452 | 99 | 21.9% | 2.4% |
| cargo_rental_2025 | 4,677 | 1,020 | 21.8% | 24.8% |
| content_2025 | 1,532 | 322 | 21.0% | 7.8% |
| weekend_special_2025 | 464 | 93 | 20.0% | 2.3% |
| electric_rental | 440 | 88 | 20.0% | 2.1% |
| seasonal | 247 | 48 | 19.4% ▼ | 1.2% |
| affiliate_2025 | 1,528 | 296 | 19.4% ▼ | 7.2% |
| holiday_promo_2025 | 414 | 79 | 19.1% ▼ | 1.9% |
| All campaigns | 16,690 | 4,116 | 24.7% | 100% |
The Campaign Leaderboard stops at ProductPage. This section follows the same users all the way through checkout to the Revenue Event, and compares UTM-tagged users against the rest of the site.
UTM-tagged users
All users (non-UTM baseline)
Revenue by campaign — top 3
| Campaign | Unique Users (30d) | Reached PDP | Revenue Users | Landing → Revenue | Share of UTM Revenue |
|---|---|---|---|---|---|
| vip_launch_2025 | 2,340 | 909 | 646 | 27.6% ▲ | 33.4% |
| summer_sale_2024 | 1,992 | 629 | 387 | 19.4% | 20.0% |
| cargo_rental_2025 | 3,934 | 1,020 | 425 | 10.8% ▼ | 22.0% |
| Top 3 combined | 8,266 | 2,558 | 1,458 | 17.6% | 75.4% |
utm_campaign=<value>. "Share of UTM Revenue" is % of the 1,933 UTM-driven Revenue Events attributable to each top campaign.Revenue by source — newsletter vs google
| Source | Unique Users (30d) | Reached PDP | Revenue Users | Landing → Revenue | Lift vs site avg (2.0%) |
|---|---|---|---|---|---|
| newsletter | 4,137 | 1,375 | 820 | 19.8% ▲ | 9.9× |
| 4,873 | 1,367 | 702 | 14.4% | 7.2× |
💰 What this unlocks
Campaign ROI is clearer than it looks
The per-campaign revenue rates (27.6% / 19.4% / 10.8% for the top 3) are real end-to-end conversion rates, not proxy metrics. This is the number to use for media-mix and budget decisions.
vip_launch_2025 — 2.6× cargo_rental_2025 on revenue
Both drive comparable absolute revenue (646 vs 425 users), but vip_launch_2025 does it on 40% fewer sessions. Scaling vip_launch spend (or cloning its approach) has much higher marginal ROI than scaling cargo_rental.
Newsletter is a 9.9× revenue multiplier
Against the site-wide 2.0% revenue rate, newsletter delivers 19.8% — a 9.9× lift. This is the single highest-leverage channel the marketing team controls. A 20% cadence increase likely outperforms a 20% CPC budget increase.
⚠ What the funnel hides
Revenue > Checkout?
1,933 UTM-tagged users fired Revenue Event; only 2,060 reached a URL with "checkout" in the path. That's 93.8% — very tight, likely because Revenue Event fires server-side or from a confirmation page outside the checkout URL pattern. Sanity-check the event definition before using landing-to-revenue as a primary KPI.
Attribution model is last-UTM-in-URL
A user who landed with utm_campaign=X and later revisited with utm_campaign=Y counts toward both segments. This overstates combined totals by a small amount. For precise attribution, model in a warehouse using first-touch or multi-touch.
Revenue Event may include test/demo firings
CarGo is a demo environment. The 2.0% site-wide revenue rate is high for a live rental product — some of the volume likely comes from internal demos, scripted bots, or QA. Real-world rates would differ; the relative ratios between campaigns should still hold.
Campaign-level results, zoomed out. Top referrer sources and mediums driving qualified ProductPage traffic. Same methodology as Section 02 — 30-day window, PDP-reach filter applied via segment.
| Top utm_source (by PDP reach) | |||
|---|---|---|---|
| Source | Landings | PDP Reach | Rate |
| newsletter | 4,588 | 1,375 | 30.0% |
| 5,456 | 1,367 | 25.1% | |
| bing | 1,379 | 282 | 20.4% |
| 500 | 99 | 19.8% | |
| cargo_email | 440 | 88 | 20.0% |
| 484 | 86 | 17.8% | |
| youtube_tutorial | 315 | 71 | 22.5% |
| guest_post | 332 | 70 | 21.1% |
| blog | 291 | 63 | 21.6% |
| infographic | 306 | 60 | 19.6% |
| utm_medium (by PDP reach) | |||
|---|---|---|---|
| Medium | Landings | PDP Reach | Rate |
| cpc | 6,835 | 1,649 | 24.1% |
| 5,028 | 1,463 | 29.1% | |
| display | 1,520 | 338 | 22.2% |
| content | 1,532 | 322 | 21.0% |
| referral | 1,375 | 266 | 19.3% |
| social | 1,219 | 243 | 19.9% |
| paid | 247 | 48 | 19.4% |
| affiliate | 153 | 30 | 19.6% |
| All | 17,909 | 4,359 | 24.3% |
Where to lean in and where to cut. The table in Section 02 is dense — this section tells the story.
🏆 Winners — double down
vip_launch_2025 — 37.9% reach rate
Best ratio in the portfolio. 909 of 2,401 landers reach ProductPage. Creative and targeting are clearly aligned — the people clicking through show rental intent. Extending this campaign or lifting its budget is a high-confidence bet.
summer_sale_2024 — 29.1% reach rate
Still running into 2026 and still outperforming most newer campaigns. Likely strong seasonal audience fit. Consider spinning a summer_sale_2026 variant with the same creative DNA.
Newsletter > Google for PDP reach
Newsletter delivers 1,375 PDP visits vs Google's 1,367, on 16% fewer landings. Email medium hits 29.1% overall vs 24.1% for CPC. Email list is a high-leverage channel right now.
cargo_rental_2025 — largest contributor
Only a 21.8% reach rate, but sheer volume (4,677 landings) makes it the single biggest source of campaign-driven PDP traffic (24.8% of all UTM-driven PDP visits). Keep it running at current spend; investigate whether rate can be lifted without volume loss.
⚠ Laggards — review or cut
holiday_promo_2025 — 19.1% reach rate
Lowest rate of any active campaign. 414 landings, only 79 reach PDP. Off-season (we're in April) — likely a stale campaign still funded. Candidate to pause or refresh for a summer angle.
affiliate_2025 — 19.4% reach rate
1,528 landings produce only 296 PDP visits. Meaningful volume but poor conversion — affiliates may be sending low-intent traffic. Audit top affiliate sources; consider cap-per-affiliate or renegotiate payout structure.
seasonal — 19.4% reach rate
Small campaign (247 landings) and the worst rate tie. Unclear what "seasonal" maps to in 2026-04. Either clarify targeting or sunset.
electric_rental — 20.0% reach rate
Niche product, small volume (440). Low rate suggests the landing experience isn't matching ad expectations — users arriving from EV-focused ads may not find an obvious EV subset on the search page.
Product issues, errors, and UX friction that are holding the funnel back independently of any campaign. A product fix here lifts every campaign's conversion simultaneously — this is the common-denominator ceiling on everything in Sections 02–05.
🆕 New regressions — current 2w only
These signals spiked in the current 2-week window vs the prior. Anything with delta_pct > 100% is effectively brand new.
| Signal | Category | Users (2w) | Δ vs prior 2w | Why it matters |
|---|---|---|---|---|
| TypeError: n is not a function | JS error · main.000620b5.js |
48 | +345% | Brand-new exception in the main bundle. Strongly suggests a recent deploy regression. Line numbers map to a minified function — needs source-map lookup. |
| Error clicks on [SH] Purchase Complete | Terminal checkout button | 26 | +100% | Users reach the final "complete purchase" button and it errors. Direct revenue loss. Zero prior-2w occurrences. |
| City API: St. Louis | Network error · /v2/cars/getAllCarsInOrgInCity |
151 | +176% | City inventory API degraded. Was 3.0% of funnel users prior 2w, now 8.2%. Users in this city dead-ended in search. |
| City API: Austin | Network error · same path | 146 | +107% | Same failure mode. 8.0% of funnel users now affected (up from 3.8%). |
| City API: Raleigh | Network error · same path | 120 | +94% | 6.5% of funnel users now affected. |
iOS SwiftUI addToCartButton error clicks |
Mobile · 3 controller hashes | 16 | +100% | New mobile regression in CarSelectionViewController. Three distinct controller memory-address hashes suggest a re-instantiation pattern — likely a fresh build with broken action binding. |
| error Insufficient Funds | Console · Payment-side | 7 | +134% | Small absolute count but climbing fast. Could indicate payment-processor contract change or a new class of declines. |
| error Transaction Denied | Console · Payment-side | 18 | +100% | Payment rejections doubled. Silent-failure pattern from the prior UX report may still apply — users may not see the error. |
| Cannot read properties of undefined (reading 'firstname') | Uncaught exception | 3 | new | Likely a checkout personalization bug — code assumes a user object that isn't always present. Small count but a pure-crash signature. |
⏳ Ongoing friction — stable, still costly
These issues are not new, but they're affecting large user counts and putting a ceiling on the entire funnel. Documented in the prior CarGo UX Report; restated here because they directly cap campaign ROI.
| Signal | Stage | Users (2w) | Δ | Fix complexity |
|---|---|---|---|---|
| "Car is not available" error on Add to Cart | PDP → Cart | 2,346 | −5% (flat) | Hard · inventory data quality · 88% of funnel entrants |
| Share button dead clicks (SVG line intercepts) | PDP | 968 | +22% | Trivial · single CSS rule (pointer-events: none on svg>line) |
| Pickup Location dead clicks | Home / Search | 322 | +32% | Medium · field appears interactive but isn't; needs focus behavior |
| Total Price dead clicks (users expect detail) | PDP sidebar | 341 | +28% | Medium · add price breakdown modal or tooltip |
| FAQ Item dead clicks | Support / Info | 253 | +58% | Small · FAQ accordion not expanding — JS handler bug |
| Login modal dead clicks | PDP | 17 | +121% | Medium · modal appears but click handlers mis-wired |
✅ Improving — what's getting better
Good news worth naming — these indicate that something in the product pipeline is working.
Prioritized by impact on revenue over the next cycle. Product fixes listed separately from marketing moves — different owners, different cadences.
Product fixes — lift the ceiling for every channel
These are engineering/product items, not marketing. Every one of them raises the conversion rate on every row in the Campaign Leaderboard simultaneously. Owners: engineering, product, design.
Investigate the new TypeError: n is not a function regression
+345% in 2 weeks in main.000620b5.js. Brand-new signature. Correlate to deploy history. If it maps to a known release, this is a hotfix candidate; if not, attach a source map and traceback. 48 users per 2w is small but climbing fast.
Fix the Purchase Complete error-click regression
26 users clicked the final terminal checkout button and got an error — zero occurrences in the prior 2w. Terminal-step failures directly cost revenue. Investigate the click-handler or the API call behind it; this one rolls up to the Wall 2 payment issues from the prior UX report and may be related.
Investigate city inventory API degradation (Austin, St. Louis, Raleigh)
Three cities jumped 94–176% in network-error rate this 2w. 417 users across just these three cities hit the error. Known issue from the prior UX report but it got worse — suggests either a new deploy touched this endpoint or an upstream data source changed. Start with server-side logs on /v2/cars/getAllCarsInOrgInCity.
iOS SwiftUI Add to Cart error-click regression
16 users across three distinct controller memory-address hashes. Only 16 users but every one is abandoning on mobile. If a mobile release shipped in the last 2 weeks, that's the regression window. Correlate to App Store/TestFlight deploy timestamps.
Fix the share-button dead-click — trivial, 968 users
SVG <line> inside the share button is intercepting clicks. One CSS rule: button#share-button svg * { pointer-events: none; }. Ships in a 5-minute PR. Affects 28% of ProductPage users.
Monitor payment-side signals — Transaction Denied +100%, Insufficient Funds +134%
Payment-processor anomalies are doubling. Not campaign-related but could reflect a gateway contract change, a fraud rule update, or a new customer segment. Loop in whoever owns the payment integration.
Marketing moves — reallocate toward what's working
Owners: marketing team. Assumes the product fixes above ship in parallel — the upside numbers below compound with those fixes.
Pause or rework the bottom four (holiday, affiliate, seasonal, electric_rental)
All converting below 20% to PDP. Combined budget is likely non-trivial. Auditing these four alone could free budget for vip_launch extension or a summer variant. Start with holiday_promo_2025 — it's temporally off.
Extend vip_launch_2025 or clone its creative brief
27.6% of landers fire Revenue Event — the highest rate in the portfolio and 2.6× cargo_rental_2025's revenue rate despite similar absolute volume. Whatever targeting, copy, and landing experience this campaign uses, document it and apply to a second parallel campaign. Biggest upside lever in the portfolio.
Increase newsletter send cadence or segmentation testing
Email already converts at 29.1% to PDP and 19.8% to Revenue — 9.9× the site baseline. A second weekly send, or a segmentation A/B, is low-effort experimentation with a known-good channel.
Investigate the organic/direct decline separately
ProductPage −38% vs UTM −26% means 12pp of the gap lives outside campaigns. Before judging marketing alone, someone should look at: SEO rankings on core rental keywords, referrer drop-off from partner sites, and repeat-visit behavior (is session frequency dropping, or just new-visitor acquisition?).
Audit cargo_rental_2025 landing experience for rate lift
It's the largest single source of campaign PDP traffic (24.8% of all UTM PDP reach), but its 21.8% PDP rate and 10.8% Revenue rate are both below portfolio average. Even a 5pp rate lift here would add ~235 PDP visits and ~115 revenue conversions/month without any budget change.
Instrument the utm_campaign page variable for accurate per-PDP-visit attribution
Right now the report relies on landing-page URL detection; once the user SPA-navigates to the PDP the UTM leaves the URL. Pushing utm_campaign into the Fullstory page variable on every route (and adding a server-side capture) would unlock per-campaign PDP conversion trends at the day level — which would let us do exact 2w comparisons per campaign, not just per-portfolio.
Every metric in this report is computed via the Fullstory MCP on the CarGo demo org. Click through for live data.
Windowing
Current 2w
2026-04-04 → 2026-04-17. Apr 17 is a partial day (report was generated mid-day); totals are reported raw and with the partial day excluded.
Prior 2w
2026-03-21 → 2026-04-03. 14 complete days.
Campaign breakdowns
Campaign/source/medium tables use a 30-day window (Mar 19 → Apr 17) because 2-week cells are too sparse for smaller campaigns. Rates are stable within noise across the two windows.
Definitions
Landing
A page view whose URL contains the relevant UTM substring (utm_campaign=, etc.).
PDP Reach
A landing event from a user whose session also included a visit to page_id 2 (ProductPage). Implemented as a Fullstory segment attached to the landing metric.
Reach Rate
PDP-reach landings ÷ total landings for the same campaign/source/medium. Read as: "Of the users who came in with this UTM, what % reached the ProductPage."
Saved Fullstory Objects
Segment: ProductPage visitors (30d)
Metric: ProductPage daily
Metric: UTM landings by campaign (PDP-scoped)
Metric: UTM landings by source (PDP-scoped)
Metric: UTM landings by medium (PDP-scoped)
Metric: Revenue Event (unique users)
↗ 491581852 · Event ID KSNijoJTTEpe
Metric: Unique Checkout visitors
Segment: UTM-tagged users
Campaign cohorts (per-campaign revenue)
vip_launch_2025: qwpqkP6FLbZE
cargo_rental_2025: ykGRcuQPPUKm
summer_sale_2024: 8kIAWmrDUVSm
newsletter source: xoQDSVtbZ2BE
google source: LkepNzd0GxRX