2.8x
Corrected ROAS vs 1.65x reported
How a wellness retreat discovered its Facebook ROAS was 70% higher than reported — and why a 27% revenue drop had nothing to do with ad creative.
A multi-program wellness retreat running 12–20 immersive programs per year had three data platforms reporting three different stories. Their marketing consultant reported a 1.65x ROAS — technically profitable, but not enough to justify a budget increase. Over eight weeks, paid social revenue had fallen 27%. Lets Viz ran the investigation before building a single dashboard.
Ad Spend (90d)
$26,573
Facebook Ads
GA4 Sessions
54,210
▼ 41.6% uncaptured
iOS gap
Reported ROAS
1.65x
▼ incomplete data
GA4 only
Corrected ROAS
~2.8x
▲ +70% recovery
ATT adjusted
Attributed Revenue
$43,874
▼ excl. 41.6% iOS
GA4 reported
ROAS — Reported vs Corrected
ROASReported
1.65x
Corrected
~2.8x
ROAS trend after correction model applied
Session Attribution Gap
GA441.6%
~38,500 sessions lost
Revenue by Channel
FB AdsPaid Social understated — excludes iOS conversions
Campaign Performance (90d)
FB Ads| Campaign | Spend | Sessions | ROAS |
|---|---|---|---|
| Retreat Prospecting | $14,200 | 19,800 | 1.42x |
| Retargeting — WCA | $8,100 | 12,400 | 2.10x |
| Retreat Awareness | $4,273 | 22,010 | 1.85x |
ROAS figures are GA4 reported values — understated by iOS gap
Spend vs GA4 Sessions (90d)
GA4▼ Session capture rate fell 9.1pp — clicks flat, GA4 declining
2.8x
Corrected ROAS vs 1.65x reported
41.6%
Sessions invisible to GA4 (iOS ATT)
27%
Revenue drop fully explained
6
Zoho Analytics dashboards built
GA4, Facebook Ads Manager, and Retreat Guru were each reporting different numbers. The marketing consultant reported a blended ROAS of 1.65x — technically profitable, but not convincing enough to justify increasing budget. Over eight weeks, paid social purchase revenue had fallen 27%, and the executive team was asking whether Facebook advertising was still working. Three independent failures were making every number unreliable.
Lets Viz designed a pipeline that pulled all three data sources into a single unified Zoho Analytics consultant workspace — without any third-party middleware. GA4 data was pulled weekly via Google Apps Script into four structured Google Sheets tabs. Retreat Guru bookings were integrated via API export. All tabs sync daily into Zoho Analytics.
| Cause | Est. Impact | What Happened |
|---|---|---|
| Audience mix shift | 10–15 pp | Aug 2025 retargeting budget cut 49.5%. Oct 2025 cold-prospecting budget up 12.6%. High-converting return visitors replaced by lower-intent new audiences. |
| Attribution degradation | 9–12 pp | Session capture rate fell from 44.3% to 35.2% (-9.1pp) over three weeks. Clicks stayed flat while GA4 sessions dropped — attribution worsened, not traffic. |
| Purchase event loss | 3–5 pp | Purchase events fell 11pp more than Add-to-Cart events, indicating a purchase-pixel-specific failure on top of the broader session gap. |
| Issue | Finding | Fix |
|---|---|---|
| generate_lead event | Firing on /contact-us page load — 107% conversion rate (physically impossible) | Move GTM trigger to form submission confirmation — 1-hour fix |
| GA4 conversion flag | generate_lead not marked as a conversion event in GA4 Admin | Toggle in GA4 Admin > Events — 5-minute fix |
| Facebook Conversions API | Not enabled — every iOS 14.5+ purchase invisible to FB optimisation algorithm | Server-side CAPI via GTM server container — scoped as Phase 2 |
| TikTok UTM gap | $0 attributed revenue on 1,380 sessions — all landing as Direct in GA4 | Add UTM parameters to all TikTok ad destination URLs |
With the iOS attribution gap quantified, a correction model was applied to the 90-day revenue figures. At 68% iOS mobile audience share and a 41.6% overall session gap, the conservative recovery factor shifted the conversation from 'should we cut the Facebook budget?' to 'how quickly can we enable Conversions API to recover the remaining attribution gap?'
A 1.65x ROAS triggers a budget review. A 2.8x ROAS triggers a budget increase. Same campaign. Different measurement.
Midway through the project, the retreat owner questioned whether the analytics investment was justified — the dashboards were showing numbers he did not recognise from his own intuition. Lets Viz responded with a structured data briefing, not a sales pitch. Within 48 hours, the marketing consultant had moved from defensive to collaborative — asking for the specific GTM tags to fix and the priority order for tracking corrections.
The problem this client had is not unique to wellness retreats. Any business running paid digital advertising and measuring results in GA4 faces the same iOS attribution gap. Any business with multiple data sources faces the same reconciliation problem. What is missing is a team that will run the investigation before drafting the dashboard — and report what the data actually says, even when it contradicts the client's intuition.
Delivered Work
Wellness Retreat
Last 90 days · refreshed daily 03:00
Last 90 days
refreshed daily 03:00
Total Revenue
$319,777
▲ +2.1%
Transactions
454
▲ +12.1%
Sessions
74,835
▲ +3.2%
Avg. Order Val.
$704
▼ -2.1%
Rev / Session
$4.29
▲ +6.8%
Revenue by Channel (90d)
Weekly Revenue Trend (12w)
Channel Mix by Revenue
Discuss a similar Hospitality & Experiences project
Lets Viz runs a paid discovery audit ($500–1,000, credited toward the project) to scope your requirements, data model, and architecture before writing a line of code.
From Lets Viz
Experience superior data analysis with our custom dashboards. Specialising in all tools and technologies, we turn data into visually compelling, actionable insights.
NDA-safe · No obligation · Clear next steps