Executive Summary
- The organic decline stopped in April and June is the best month since. Real GSC clicks: 17,899 (Mar) → 13,181 (Apr) → 12,614 (May) → 13,131 (Jun). The Mar→Apr drop was real (~26%), but it has not continued — June ticked up from May and average position improved (10.16 → 9.18).
- Four of five core tracked keywords are healthier than previously reported. A prior draft of this report used Ahrefs' estimated positions, which were meaningfully wrong for this site. Real June GSC data shows "post renovation cleaning" at position 4.5 (not 13) and "sofa cleaning singapore" at position 4.3 (not 18). Only one keyword shows a genuine, confirmed problem.
- "Aircon servicing" is a real, confirmed cannibalization case, and it's also the category with the clearest missed opportunity. The commercial page (
/aircon-services) sits at position 18.8 with nearly the same impression volume (2,741) as the blog guide beating it (/aircon-servicing-guide, position 8.9, 2,902 impressions). Category-level revenue data below shows Air Conditioning demand is real and growing (YoY +50-100% most months) — but almost none of it is reaching SEO. - Revenue-side picture is more nuanced than "declining." GA4's organic revenue figures (SGD 48,450 → 27,055) are not the full story — GA4 is only tracking a partial, web-checkout slice of real bookings (see Data-Quality Findings). Using Helpling's own Customer Insights data instead, corrected for a snapshot-noise error made earlier in this report: revenue by category is genuinely mixed — some categories (Cleaning, Air Conditioning) are up year-over-year even while down sequentially since January 2026; others (Elderly Care, Furniture & Furnishings) are down both sequentially and YoY.
- The GA4 traffic table has been corrected — the property was blending in Germany, France, Switzerland, and Australia traffic. A full audit found this GA4 property is a global rollup, not SG-scoped, and that Germany's traffic was merged into it starting January 2026, inflating the "growth" the property appeared to show. Filtered to genuine Singapore hostnames, GA4 sessions actually declined -31.2% from the January peak to the May low — matching the direction and timing of the GSC clicks decline in this same report, rather than contradicting it. See Data-Quality Finding 9.
- This is a visibility problem, not a demand or reputation problem. Phase 3 checked all three alternative explanations directly: search demand for Helpling's core category terms and both brand terms held flat-to-growing through the entire decline window (no synchronized drop); Google Business Profile ratings and review volume stayed healthy throughout; and Helpling is already being cited across every major AI-search surface (Google AI Overviews, ChatGPT, Gemini, etc.) at a real, non-trivial rate. None of these explain the decline — it confirms the fix is squarely the visibility/technical/trust-signal work already underway (backlinks, schema, crawl, redirects), not a demand-side or reputation pivot.
Traffic — Jan–Jun 2026 (verified, calendar-month aligned, live pulls)
| Month | GSC Clicks | GSC Impressions | Avg Position | GA4 Organic Sessions (SG-corrected) | GA4 Organic Users (SG-corrected) |
|---|---|---|---|---|---|
| Jan | 17,729 | 1,248,741 | 11.83 | 35,067 | 22,192 |
| Feb | 16,335 | 1,191,264 | 8.91 | 30,105 | 19,438 |
| Mar | 17,899 | 2,264,502 | 6.82 | 31,131 | 20,566 |
| Apr | 13,181 | 1,393,053 | 7.87 | 24,341 | 15,841 |
| May | 12,614 | 1,175,840 | 10.16 | 22,995 | 15,290 |
| Jun | 13,131 | 1,263,529 | 9.18 | 24,121 | 15,650 |
GSC: live Search Console API, siteUrl=helpling.com.sg, exact calendar-month date ranges, pulled 2026-07-08. GA4: live GA4 Data API, property 306688855, sessionDefaultChannelGroup = Organic Search, filtered to hostName IN (www.helpling.com.sg, app.helpling.com.sg) — corrected as of 2026-07-09 (see Data-Quality Findings). The previous version of this table used the property's unfiltered global total, which blends in helpling.de, helpling.fr, helpling.ch, and helpling.com.au traffic and materially overstates and reverses the trend direction from April onward. GA4 revenue and transaction figures below are unaffected by this issue — confirmed identical whether filtered to SG hostnames or not, since ecommerce tracking is already properly SG-scoped.
March's impression spike (2.26M vs a ~1.2–1.4M baseline) coincides with the March 2026 Google Spam Update's rollout window (per deliverables/2026-05/organic-decline-forensic-diagnosis.md). The corrected GA4 sessions column now tells the same story as GSC clicks: a peak in Jan/Mar, a real decline into April-May, and a slight recovery in June (22,995 → 24,121, +4.9%) — matching GSC's own May→June uptick (12,614 → 13,131). This is the first GA4-based cross-source corroboration of the GSC-documented decline in this report; the uncorrected figures previously showed the opposite (an unexplained rise straight through June), which didn't reconcile with anything else in this report and should not have been presented as-is.
GA4 Revenue — Why It Doesn't Match Customer Insights GMV
| Month | GA4 Organic Revenue (SGD) | GA4 Total Site Revenue (SGD) |
|---|---|---|
| Jan | 48,450 | 231,175 |
| Feb | 33,885 | 149,970 |
| Mar | 33,085 | 161,825 |
| Apr | 29,085 | 131,550 |
| May | 28,855 | 129,215 |
| Jun | 27,055 | 130,185 |
GA4 organic revenue has declined every month since January, but this is not the same measurement as Customer Insights GMV, and the two should not be compared directly. Checked this cycle: GA4 shows 5,360 transactions in January at an implied AOV of SGD 43. Customer Insights shows ~20,300 total orders that same month (655/day average × 31 days) — roughly 3.8x more orders than GA4 counts as transactions, and total company GMV of ~EUR 399K (≈SGD 586K, at the property's confirmed SGD currency and a standard EUR/SGD rate) against GA4's tracked SGD 231K. The most likely explanation: most real bookings complete via Helpling's app, which GA4's web-based purchase tracking doesn't see — GA4 is measuring a partial, web-checkout-only slice of the business, not true company or true organic revenue. This is a hypothesis based on the order-count and revenue-scale gap, not yet confirmed directly with Helpling — worth asking their data team to verify. Customer Insights is the more complete revenue source and is used for everything below.
GMV Methodology (read before trusting any number below)
gmv_30_days_eur in Helpling's Customer Insights sheet is a trailing 30-day rolling figure per day, not a daily-additive one, and it is genuinely volatile day to day — daily values swung from €483 to €2,537 within the same week in early June. An earlier pass of this report compared two single-day snapshots (May 31 vs June 5) and reported a "jump" that was not real — it was sampling noise. Every GMV figure below is instead a monthly average of the daily rolling figure, which is far more stable and defensible. June 2026 has real GMV data for only 5 days (June 1-5; June 6 onward reads exactly 0.0 at the source — see Data-Quality Findings) — June figures are marked as partial everywhere and should not be read with the same confidence as a full month.
Revenue Trend — Jan–Jun 2026 (monthly average of daily GMV, EUR)
| Month | Avg Daily SEO-channel GMV | Avg Daily Total GMV | Avg Daily Orders (all channels) |
|---|---|---|---|
| Jan | 2,094 | 12,864 | 655 |
| Feb | 1,226 | 8,220 | 499 |
| Mar | 1,457 | 10,063 | 498 |
| Apr | 1,375 | 8,540 | 414 |
| May | 1,250 | 7,732 | 389 |
| Jun (5 days only) | 1,600 | 8,523 | 412 |
Real pattern: a gradual decline in both GMV and order volume from January through May (-40% on orders), then a slight uptick in the 5 real June days — directionally consistent with the GSC/GA4 stabilization above, though the small June sample means this shouldn't be over-read.
Revenue Category Landscape — What We Actually Have
Classified across the full 24-month history in the lake (2024-07 to 2026-06), by how consistently each of the 26 tracked categories shows meaningful (>€5/day average) revenue:
Core recurring (meaningful revenue in nearly every month, 23-24 of 24): Cleaning, Air Conditioning, Elderly Care, Furniture And Furnishings, Move out Cleaning, Renovation Cleaning, Deep Cleaning.
Seasonal but real (recurring presence, revenue concentrated around specific calendar windows): Spring Cleaning (spikes around Chinese New Year in January; a "Raya Spring Cleaning" variant appears briefly around May, tied to Hari Raya).
Intermittent (present most months, but revenue is sub-threshold or missing in a third or more of them): Disinfection (19/24 months active), Handyman (14/24), Landscaping (12/24), Moving Service (10/24).
Sporadic / effectively one-time (2-6 active months out of 24): Floor Polishing, Painter Service, Pest Control.
No real recorded revenue at any point (11 categories): All Professional Verticals, Car Washing, Care, Carpet Cleaning, Furniture Assembly, Home Desinfection, Moving Hauling, Providers, Technician Service, Vertical Services, Window Cleaning. These look like placeholder or legacy category labels in the sheet rather than active revenue lines.
Notable gap found: Elderly Care — a genuine, consistent, meaningful recurring category (€300-750/day) — shows exactly €0 in SEO-channel GMV in every single month of the entire dataset, both 2025 and 2026. Organic search is credited with zero influence on this category's bookings in Helpling's attribution model. Worth understanding directly with Helpling's team whether that's accurate (e.g. Elderly Care converts entirely through referral/partnerships/word-of-mouth) or a tracking gap.
Year-over-Year by Category (2025 vs 2026, avg daily GMV, all channels, EUR)
| Category | Jan YoY | Feb YoY | Mar YoY | Apr YoY | May YoY | Jun YoY* |
|---|---|---|---|---|---|---|
| Air Conditioning | -18.6% | +49.1% | +66.8% | +67.4% | +63.2% | +103.7% |
| Cleaning | +26.3% | +21.3% | +3.5% | +4.1% | +3.2% | +6.6% |
| Elderly Care | -51.0% | -44.2% | -33.2% | -44.1% | -36.3% | -41.9% |
| Furniture And Furnishings | +22.3% | -28.4% | -26.1% | -43.7% | -70.1% | -35.1% |
| Move out Cleaning | +22.5% | -9.9% | -22.4% | -24.2% | -53.5% | -23.0% |
| Renovation Cleaning | +111.0% | -12.9% | -20.1% | -33.0% | -27.3% | -17.2% |
| Deep Cleaning | +95.2% | -43.3% | -1.3% | -48.1% | -49.7% | n/a* |
| Spring Cleaning | +159.4% | +165.3% | -42.0% | +31.5% | +52.3% | n/a* |
June 2026 = only 5 real days of GMV data. Deep Cleaning and Spring Cleaning show as "0" in that 5-day window purely because a low-volume category can easily have zero bookings across 5 specific days — this is a sample-size artifact, not a real -100% collapse*, and is marked n/a rather than reported as a YoY figure. Air Conditioning and Cleaning's June YoY figures are more trustworthy since they're higher-volume categories less sensitive to a small sample, but should still be treated as preliminary until a full June is available.
Reading this table takes two lenses at once, and they don't contradict each other: - Cleaning is up year-over-year every single month (+3-26%), even though it has been declining sequentially within 2026 since January (see the main revenue trend table — this is a business that's bigger than a year ago but has softened since the start of this year). - Air Conditioning shows the strongest, accelerating YoY growth of any recurring category (+49% to +104% every month since February) — but per the organic-category breakdown below, almost none of this growth is reaching SEO. This is the clearest "real demand, SEO isn't capturing it" case in the data, and it's the same category the ranking cannibalization diagnosis already flagged. - Elderly Care is down YoY every month, consistently around -35% to -51% — the worst and most consistent YoY decline of any recurring category. Combined with its zero organic attribution, this looks like a category-health issue outside SEO's reach, not something a content/technical fix addresses. - Move out Cleaning and Renovation Cleaning are both down YoY for most of the period (after strong Januarys), despite Move out Cleaning showing organic month-over-month improvement within 2026 (see below) — it's recovering from a 2026 low point, but hasn't yet caught back up to 2025's levels.
Category Performance — Organic vs. Overall, Within 2026
Top categories by average daily GMV, SEO-channel only vs. all channels, month by month (2026):
Organically (SEO channel_group):
- Move out Cleaning is the clear organic standout — has held the #1 or #2 organic spot every month (Jan €512/day → Jun €748/day, partial), and its June figure is the largest organic mover of any category this year. This corroborates an independent GSC finding: /move-out-in-cleaning was one of the biggest page-level click gainers (213→316 clicks, Apr→Jun). Caveat from the YoY table above: this is a recovery within 2026, not yet back to 2025's organic levels for this category.
- Cleaning (the flagship category) is organically softening — €577/day in January down to the €350-490 range since February, a smaller decline than its all-channel drop.
- Air Conditioning is organically almost invisible — only €42/day in the partial June data, the smallest of any top-category figure in this whole period, despite being the fastest-growing category overall (see YoY table). This is the clearest, most quantifiable gap between real demand and SEO's current share of it.
Overall (all channels): - Cleaning remains by far the largest category in absolute terms (€5,500-9,100/day) despite its within-2026 decline. - Air Conditioning jumped to €593/day in June (partial) vs. a typical €310-360 — nearly double — driven almost entirely by non-organic channels.
Page-Level SEO Audit — Aircon, Elderly Care, Spring Cleaning, Homepage Check
Full detail in deliverables/2026-07/page-level-seo-audit.md. Using a query-count-by-position-band diagnostic (non-brand queries only), with a site-wide check run before drawing any per-page conclusions:
- Site-wide finding, the most important result of this audit: sampled 8 URLs across unrelated categories — 7 of 8 show a -35% to -66% decline in total non-brand query count (Mar-May 2025 vs Apr-Jun 2026). By definition this is site-wide domain devaluation, not isolated page problems — strong independent confirmation of the March 2026 Google Spam Update diagnosis, now evidenced at the query-count level.
/maidsis the one page that grew (+8.5%) over this window — but see the new §"Technical Crawl Health" below: the most recent 3 months show/maidsreversing to -32%. - Concrete remediation plan now built and run against real data: per the agency's internal methodology, index cleanup must happen before content rewrites, since it has a compounding site-wide effect. Ran the exact PQI (dead/weak/good) classification against Helpling's full 16-month GSC page inventory: of 391 true content pages (after excluding image assets and app/infrastructure URLs), 36 are Dead (410 candidates) and 92 are Weak (renovation candidates) — 32.7% combined, a real but moderate cleanup scope, not the site's majority. Full list and exact next steps in
deliverables/2026-07/page-level-seo-audit.md§0. Expected recovery timeline once remediation starts: 3-6 months minimum, per the methodology's own conservative estimate. /aircon-services: carries the same site-wide pattern (-43%, in line with the range above) plus an independent, confirmed cannibalization layer (mid-tier bands 11-20/21-30 growing as the guide competed for position) — that specific piece is now fixed via the redirect. Still the highest-confidence incremental revenue opportunity — Air Conditioning is the fastest-growing category YoY (+49% to +104%) with organic capturing almost none of it.- Homepage vs.
/cleaning-services: not real cannibalization —/cleaning-servicescorrectly outranks the homepage on commercial queries, which is healthy. The one anomaly is the pure brand term "helpling," where/cleaning-services(pos 1.1) marginally beats the homepage (pos 1.6) — a minor technical fix, not a revenue issue. /elderly-care: its -47% query decline is in line with the site-wide range, not a distinctly worse page-level problem as an earlier pass of this audit implied. What remains genuinely notable is unrelated to query counts: zero organic GMV attribution and a YoY revenue decline, both needing Helpling's input on their attribution model before any content investment decision./spring-cleaning: an 84% query-count drop, well beyond the site-wide range, so seasonality (CNY-driven category, compared across an off-season window) is clearly the dominant driver, not devaluation — core terms are still ranking well (position 2.7-3.5). Don't over-invest mid-year; time any refresh for pre-CNY season.
Technical Crawl Health — Urgent Finding (founder-provided GSC exports, 2026-07-09)
Full detail in deliverables/2026-07/urgent-technical-crawl-issues.md (standalone, meant to be forwarded to Bhavin's dev team directly). Summary:
app.helpling.com.sg'srobots.txtis returning a live HTTP 500 error (verified directly, right now) — and has been failing in GSC's own Crawl Stats since roughly mid-April 2026, about 12 weeks continuous. This subdomain carries 93%+ of the site's total Google crawl volume. Per Google's documented behavior, sustained robots.txt fetch failures beyond ~30 days can lead to restricted crawling of the host — this has run four times longer than that. This is a fast, cheap, dev-level fix and is now the single most urgent item in this entire report — recommend escalating immediately, ahead of the phased recovery plan's sequencing.blog.helpling.com.sgis functionally dead — 83% of crawl requests return 404, confirming and quantifying the broken-backlink finding already in the Phase 1 audit.- GSC's own "Trending Down" (last 3 months) data surfaced a page never before seen in this engagement — "Geylang Serai Market 2026: Ramadan Bazaar Guide" (
/geylang-serai-bazaar-2026-guide) down 97%, -3,550 clicks, the single largest raw-click loss of any page on the site — likely seasonal, but the scale warrants confirming rather than assuming. It also shows/maidsreversing to -32% (-961 clicks) in the most recent quarter, despite growing over the full 16-month window used elsewhere in this report — this reversal lines up with the same April-2026 window as the robots.txt breakage and the active backlink campaign found in Phase 1 (see below). - Good news from the same batch of founder-provided exports: GSC's own internal-links and anchor-text data (full detail in
page-level-seo-audit.md§6.4) rule out internal linking as the bottleneck for any flagged page — including/elderly-care, which also has real external backlinks, not just internal support — and confirm the site's top-ranked anchor text is healthy and diverse, with none of the Phase 1 spam clusters showing up in it. Also caught one small technical item:/upholstery-clean(singular) is a duplicate URL of/upholstery-cleaningwith its own real backlinks, worth folding into the consolidation redirect map.
Phase 3 — Revenue Growth Layer: Demand vs. Visibility, Reviews, AI-Search (2026-07-09)
Per the master plan's final phase, run after the Phase 1 (backlinks) and Phase 2 (site-wide technical/PQI recovery) work above. Three questions, each with a decisive answer.
Is this a demand problem or a visibility problem?
Pulled Ahrefs Volume History (Mar 2025 – Jul 2026, Singapore) for the 5 core tracked keywords plus both brand terms:
| Keyword | Mar 2025 volume | Low point in window | Jul 2026 volume | Timing of any decline |
|---|---|---|---|---|
| cleaning services singapore | 7,091 | 2,811 (Jun 2025) | 2,877 | Declined through 2025, flat since Jan 2026 |
| home cleaning services singapore | 1,493 | 610 (Jun 2025) | 774 | Declined through 2025, flat Feb-Jul 2026 |
| post renovation cleaning | 1,346 | 972 (Feb 2026) | 1,180 | No decline — flat-to-growing throughout |
| aircon servicing | 8,175 | 3,578 (Nov 2025) | 4,255 | Declined through 2025, bottomed out and flat since Dec 2025 |
| sofa cleaning singapore | 999 | 525 (Nov 2025) | 809 | Noisy but flat, no trend |
| helpling (brand) | 3,632 | 2,073 (Feb 2026, one-month outlier) | 4,726 | Endpoint comparison shows +30%, but the 2025-average vs. 2026-average comparison shows -5.6% — noisy, no consistent trend |
| helpling singapore (brand) | 5,078 | 3,474 (Apr 2025) | 4,532 | Endpoint comparison shows -11%, but the 2025-average vs. 2026-average comparison shows +8.4% — noisy, no consistent trend |
Answer: this is a visibility problem, not a demand problem. Two of five category terms show no decline at all. The two that do (cleaning services singapore, aircon servicing) had already bottomed out and flattened by late 2025 — before the March 2026 event that hit Helpling's own rankings. None of the five shows a demand drop timed to March 2026. Both brand terms are volatile month-to-month with no consistent trend either way (see the caveat in the table above — this was checked two different ways precisely because an initial single-endpoint read looked like clean growth and didn't survive a second method), but critically, neither shows a sustained decline — which is the part that actually matters for ruling out brand erosion. Whatever caused Helpling's ranking and click collapse, people did not stop searching for what Helpling sells — the site simply stopped showing up as often for searches that kept happening at a stable rate. This validates the entire recovery plan above: the fix is visibility (backlinks, schema, crawl, technical), not a demand-side pivot.
Did reviews or reputation dip alongside the ranking decline?
Pulled monthly Google Business Profile review count and average star rating (gbp_reviews, full history through July 2026). Clean, decisive negative result: rating stayed in a healthy 4.6–4.93 band through the entire March–July 2026 window (4.64 in March, the lowest point, still solidly positive), and review volume was elevated relative to most of 2025, not declining (84–259 reviews/month in the recent window vs. a typical 20–100/month through most of 2024–early 2025). One anomaly worth a footnote: February 2026 shows an isolated spike to 899 reviews (vs. a 84–259 typical range) — ratings stayed high through it (4.93), so it doesn't read as manipulation, but it's unexplained and worth a quick sanity check with whoever pulls this data, in case it's a one-time ingestion artifact rather than a real review-volume event. Reviews/reputation is ruled out as a contributing cause of the devaluation — the trust erosion this engagement has been diagnosing (toxic backlinks, schema regression, crawl issues) is not showing up on the reputation side at all.
AI-search visibility — citation counts, real referral traffic by page, and a tracking gap
Three data sources, layered:
1. Citation counts (Ahrefs, independent crawl-based, not dependent on any report configuration). helpling.com.sg is being cited across every major AI surface right now: Google AI Overviews (82 citations across 39 distinct pages), Google AI Mode (65 citations, 38 pages), Grok (44, 24), ChatGPT (38, 28), Gemini (17, 13), Perplexity (17, 9), Copilot (16, 10). A real, non-trivial baseline.
2. Real referral traffic, by page (GA4, hostName-filtered to true SG traffic, sessionSource = chatgpt.com/perplexity.ai/gemini.google.com). This is the better evidence — it shows people actually clicking through from an AI answer, not just being cited. Two findings:
- The channel is real and growing, and its growth is untouched by the SEO decline. Monthly sessions: 93 (Mar 2025) → 242 (Jun 2025) → 407 (Sep 2025) → 489 (Jan 2026) → 442 (May 2026) → 549 (Jun 2026, partial-month adjusted) — a ~5.9x increase over 16 months, growing right through the exact window everything else in this engagement has been declining. This is a genuine, independent bright spot, not correlated with the toxic-backlink/schema/crawl issues at all.
- By landing page (full 16-month total, ~4,750 genuine sessions after excluding likely-bot traffic, see caveat below): homepage dominates (1,635 sessions, 99.8% engagement, 281s avg duration — a strong, clearly human signal), then
/maids(224),/elderly-care(147),/aircon-services(146),/pricing(146),/cleaning-services(130),/cleaners(121),/move-out-in-cleaning(91),/post-renovation-cleaning(70), plus smaller but real volume on/handyman-service,/deep-cleaning,/end-of-tenancy-package,/curtain-cleaning,/sofa-cleaning,/mattress-cleaning,/spring-cleaning,/gardening, and several others — all showing 100% engagement rate and multi-minute average durations, consistent with genuine human visits, not bot traffic. - Notable overlap with the consolidation map: several pages already flagged as duplicates slated for redirect (
/cleaners→/maids,/housekeeping→/maids,/maid-agency→/maids,/home-caregiver-agency→/elderly-care,/supercare→/elderly-care,/reminisce-care→/elderly-care,/aircon-servicing-guide→/aircon-services) are individually receiving real AI-referral sessions right now. This doesn't change the redirect plan — 301s preserve destination, so this traffic will simply flow to the surviving URL — but it confirms these "duplicate" pages carry real, independent value beyond the backlink equity already documented in Phase 1, worth keeping in mind when deciding exact redirect targets.
Two honest caveats on this data, not smoothed over:
- A (not set) landing-page bucket (405 chatgpt.com sessions, 25 gemini.google.com, 21 perplexity.ai — ~451 total) shows near-zero engagement (4-8%) and near-zero duration (under 10 seconds) — the profile of a bot/crawler fetch (most likely an AI platform's own browsing tool retrieving a page to generate its answer, which can register as a GA4 session without being a real human visit), not a genuine referred visitor. Excluded from the "real" totals above.
- A handful of sessions land on individual, ID-specific customer pages (/customer/orders/571870, /customer/events/8558969, /customer/ha_conversation). These are not AI platforms citing private account pages — GA4 attributes an entire session to its original acquisition source, so a real user who started their session via a ChatGPT link and then logged in and clicked into their own order history will still show sessionSource = chatgpt.com on those later pageviews. Legitimate acquisition attribution, but shouldn't be read as "ChatGPT is citing customer order pages."
3. The Brand Radar competitive share-of-voice report (report 019c2692-e562-7684-a312-d339f613dfc2, configured 2026-02-04 against Urban Company and Luce) returns 0.0% share of voice for all three brands — a configuration gap, not a real result: every data source in the report (ChatGPT, Copilot, Gemini, Perplexity, Grok, Google AI Overviews, Google AI Mode) is set to "off", and has been since setup five months ago. Recommend turning on at least ChatGPT and Google AI Overviews — the two data sources with the most confirmed citation and referral-traffic volume above — so genuine competitive AI-visibility tracking against Urban Company becomes available going forward. Right now there's no way to see whether Urban Company's traditional-SERP gains (§2.6.1 in the technical diagnostics) extend into AI answers too.
Phase 3 status: complete. All three sub-questions have a recorded, decision-grade answer.
Keyword Performance — Core Tracked Terms (real GSC data, June 2026)
| Keyword | Ranking Page | Position | Clicks | Impressions |
|---|---|---|---|---|
| cleaning services singapore | /cleaning-services | 3.6 | 101 | 3,202 |
| home cleaning services singapore | /cleaning-services | 4.7 | 10 | 903 |
| post renovation cleaning | /post-renovation-cleaning | 4.5 | 34 | 1,209 |
| aircon servicing | /aircon-servicing-guide (blog) | 8.9 | 25 | 2,902 |
| aircon servicing | /aircon-services (commercial, should be winning) | 18.8 | 7 | 2,741 |
| sofa cleaning singapore | /sofa-cleaning | 4.3 | 11 | 1,187 |
Source: Search Console API, exact-match query filter, June 2026. This corrects an earlier draft that used Ahrefs' modeled keyword positions, which were significantly off for "post renovation cleaning" and "sofa cleaning singapore" specifically — both are healthy, top-of-page-1 rankings in reality.
The aircon row is the one real problem: the commercial page and its own blog guide are both drawing similar impression volume for the same query, but the blog wins the position and the commercial page — the one that should convert — sits at position 18.8.
What's Been Done About the Aircon Cannibalization
- Forensic diagnosis (
deliverables/2026-05/organic-decline-forensic-diagnosis.md) — root cause dated to the March 2026 spam update's impact on commercial pages. - Consolidation plan (
deliverables/2026-05/service-consolidation-map.md) — full 51→18 page KEEP/MERGE/PRUNE analysis, redirect map, internal-linking fixes. - Deploy-ready checklist (
deliverables/2026-07/cannibalization-fix-deploy-checklist.md) — the 24+-URL redirect map and internal-link cleanup reduced to an execution sequence, including the aircon guide/service-page merge, the confirmed 410 list, and the blog pagination/category-slug fixes. Two of the three pre-production checks are now resolved by data (noindex re-scrape done; handyman/upholstery decided as hub, not 410); the Singlife/Supercare/Reminisce content sign-off still needs Bhavin directly. - Access secured — WordPress ownership + staging, GBP, Google Ads viewer (note: Ads data access is still not live in our lake — see below), Tableau read access, per the July SOW.
Data-Quality Findings (surfaced this cycle, not cosmetic)
- The BigQuery
ga4_sessionstable disagrees with the live GA4 API by roughly 2-3x for this client's "Organic Search" channel (e.g. May: BQ table shows ~130K sessions, live API shows 47,823). The BQ table's inflated numbers concentrate on/home-cleaning-tiktokand/home-cleaning-lpshort— URLs that also carry largetiktok/cpcandfacebook/cpcpaid session volume the same month. Likely an ingestion-side attribution or aggregation problem inbigquery_ingest.py's GA4 path, not a real traffic event — should not be trusted until the pipeline is checked, and may affect other clients on the same ingestion script. - GA4's tracked revenue and transaction counts are a fraction of Helpling's real order volume (see the GA4-vs-Customer-Insights section above) — most likely because most bookings complete via app, not the web checkout GA4 tracks. GA4 revenue figures should not be used as "the" organic or total revenue number for this client going forward.
- Helpling's own Customer Insights Google Sheet stopped populating the GMV column after June 5-7 (SEO-channel specifically from June 6; all-channel total from June 8) —
orderskept flowing normally (100-137/day) through July 7, but GMV is exactly 0.0 from that point, confirmed at the source (re-ran the ingest and pulled the sheet live, it's blank there too). This needs to go back to whoever maintains that sheet on Helpling's side; June and July revenue reporting is blocked until it's fixed. - Elderly Care shows zero SEO-channel GMV in 24/24 months — either a genuine attribution reality (this category converts through non-organic channels entirely) or a tracking gap. Worth a direct question to Helpling's data team.
- Google Ads data is not in the lake at all for this client (0 rows in
gads_campaigns/gads_search_terms) — same Ads API access blocker noted in the Clavio data-gaps review; nothing to ingest until Bhavin grants access. - Ahrefs' crawl-based traffic/position estimates diverged meaningfully from GSC ground truth this cycle — recommend defaulting to live GSC/GA4 pulls for this client's reporting going forward.
app.helpling.com.sg's robots.txt has been returning a server error since mid-April 2026, confirmed live — 93%+ of the site's crawl volume runs through this subdomain. Full detail inurgent-technical-crawl-issues.md. This is a genuine, previously-undiscovered technical finding, not a reporting artifact — it needs a dev fix, not an SEO one.- A toxic, currently-active backlink/negative-SEO campaign was found during the link-audit phase of this engagement (
backlink-audit-disavow-candidates.md) — updated scale after cross-checking against GSC's own Top Linking Sites export: ~300 Ahrefs-detected spam domains, plus 818 raw IP addresses and 49 gibberish-domain entries found in Google's own data, none of which overlap with the Ahrefs-detected set — over 1,100 toxic/suspect sources combined, across at least three structurally distinct spam mechanisms. Checked GSC's Manual Actions and Security Issues: both show "No issues detected," meaning this hasn't triggered a formal Google penalty yet, but that doesn't rule out algorithmic impact. - The GA4 property used for this client's reporting (
306688855, "SG Helpling Live") is not Singapore-scoped — it's a global rollup. Full audit intechnical-diagnostics-2026-07.md§2.6.2. It ingests Organic Search traffic from at least 23 distinct hostnames spanning Singapore, Germany, France, Switzerland, and Australia, plus admin/services subdomains for each. Through 2025 this didn't matter much (SG was 97-99% of the property's Organic Search sessions), but starting January 2026,www.helpling.detraffic appears in this property for the first time (from ~0 to 5,600 sessions in a single month, then 16,000-20,000/month from February onward) — the signature of a tracking/property merge, not organic growth. This inflated the property's blended totals enough to fully reverse the apparent trend direction: unfiltered, GA4 sessions looked like they grew every month from January through June; filtered to the true SG hostnames (www.helpling.com.sg+app.helpling.com.sg), they actually declined -31.2% from the January peak to the May low, matching the shape of the GSC clicks data in this same report. The traffic table above has been corrected; GA4 revenue/transaction figures are unaffected (confirmed identical with or without the hostname filter — ecommerce tracking is already SG-scoped). Every future GA4 pull for this client must include thehostNamefilter until Bhavin's team fixes the property configuration.
Recommendations for Next Period
- Escalate the
app.helpling.com.sgrobots.txt fix immediately — the fastest, cheapest, highest-confidence fix now on the table, and it's been silently limiting Google's crawl access to most of the site for ~12 weeks. - Deploy the aircon merge specifically — a category with confirmed, accelerating real demand (YoY +50-104%) where SEO currently captures almost nothing, and a diagnosed, fixable cause (the commercial page losing to its own blog guide).
- Get sign-off on the disavow file for the active spam-link campaign — every day of delay adds more toxic domains to the eventual cleanup (
backlink-audit-disavow-candidates.md). - Resolve
blog.helpling.com.sg— restore or formally retire it; 83% of Google's crawl requests to it currently 404. - Double down on Move out Cleaning content/internal linking — the one category where organic is demonstrably working and improving month over month, corroborated by both GSC page-level clicks and Customer Insights GMV. Note it's recovering toward, not yet back to, 2025 levels — and note
/maids(a related page) has recently reversed to -32% in the last 3 months, worth checking whether the same forces are involved. - Flag the Cleaning and Elderly Care category trends to Bhavin as business-wide questions, not SEO deliverables — Cleaning's within-2026 softening happens across all channels (not organic-specific), and Elderly Care's YoY decline plus zero organic attribution puts it outside what content/technical SEO can move.
- Get Helpling's data team to explain the SEO-channel attribution model — specifically whether app-completed bookings that originated from organic web research get any organic credit. Needed both for the Elderly Care question and to properly interpret every GMV figure in this report.
- Escalate the Customer Insights sheet GMV gap to Bhavin's team — June/July revenue reporting is blocked until it's fixed.
- Flag the
ga4_sessionsBQ ingestion discrepancy internally — worth a look atbigquery_ingest.py's GA4 path before it's trusted again for any client's reporting. - Re-check the aircon keyword specifically 2-4 weeks after the consolidation deploy to confirm the merge resolved the position gap, and re-check whether Air Conditioning's organic GMV share moved.
- Ask Bhavin directly whether Germany's GA4 tracking was merged into this property around December 2025/January 2026 — confirms or refutes the inferred mechanism behind Data-Quality Finding 9, and determines whether it's fixable (un-merge the properties) or has to be worked around indefinitely with hostname filters.
Open Items (internal, resolve before sending to Bhavin)
- The July SOW (
sow-helpling-sg-2026.md) states organic sessions grew +101% (58.8K→118K). This is now understood to be even further off than previously flagged: the 36K→51K figures it was likely benchmarked against were themselves the unfiltered, contaminated global property total (see Data-Quality Finding 9). The corrected, true-SG figure for the same window actually declined from 35,067 (Jan) to 24,121 (Jun), a -31.2% drop, not growth. Does not reconcile with either the old or the corrected live pull — check what date window/metric produced the SOW's number before repeating it to Bhavin, and do not use it as the basis for any forward-looking claim. - Every item under Data-Quality Findings above should be tracked as its own follow-up, not folded silently into future reports.