242 pages · 2026-06-23

The data-driven IA plan for mobilemodularcontainers.com

Every decision below sourced from 22,628 GSC keyword-URL rows, $66.1M SFDC revenue, and 242 pages inventoried. No hardcoded numbers — every value traces to BQ or live site.

Headline numbers

242
Total pages built
26 states · 125 cities · 39 products
11,274
Organic sessions/mo
4,164 clicks last 28 days
$66.1M
SFDC revenue (15mo)
27,463 quote lines · 43 states
22,628
GSC keyword rows
549 pages · 16mo coverage
DR 28
Domain rating
vs avg DR 56+ (competitors)
6,370
Cannibalization conflicts
955 location pages beating products
18.5
Current avg position
was 21.8 at H1 start (+3.3 improvement)
$6.3M–$12.6M
Addressable revenue opportunity
Conservative → aggressive annual uplift

The three findings the data forced

Each finding is backed by a specific analysis — click through to the source view.

Finding 1 · Architecture Gap
0 state × product cross-pages exist
78 missing
26 state pages exist, 39 product pages exist. Zero state×product intersections. A buyer searching "storage container rental Florida" hits a generic state page — not a rental-intent page. This is the largest single content gap.
See revenue gap matrix
Finding 2 · Cannibalization
38 location pages compete for "portable storage containers"
6,370 conflicts
Head term position softened 8.9→11.0 while city pages compete for the same query. 955 keywords where location pages outrank product pages they should never target. Click loss estimated at 1,700–2,250/month.
See cannibalization audit
Finding 3 · Striking Distance
189,000+ impressions/mo on pages ranked 5–15
Fastest wins
The 40ft container dimensions page alone has 38,136 impressions/mo at position 9.2. Title and meta fixes here move the needle within 2–3 weeks. No new content needed — just better signals on existing authority.
See striking distance pages

H1 2026 performance — what moved

Measured against BrightEdge (system of record) and GSC (real clicks). The −31% figure from older reports uses a Dec 2024 baseline — that was a 2025 story. On H1 2026 data, rankings rose.

21.8 → 18.5
Avg position H1
+3.3 position improvement — measured
29.1 → 12.9
"portable storage containers for rent"
Page 3 → Page 2. Strong gain.
23.9 → 8.1
"storage containers for rent"
Page 3 → Top 10. Win.
8.9 → 11.0
"portable storage containers"
Head term softened. At risk. Cannibalization cause.
+31 clicks
/blog/20-ft-container-dimensions
Top gainer. 76,526 impressions/mo.
−157 clicks
Homepage (biggest decliner)
40,793 impressions — cannibalization drain.
Why clicks are down despite rankings up
The GSC click decline (H2 2025 avg 5,378 → H1 2026 avg 4,650) is a 2025 story — clicks fell Jul→Dec 2025 then stabilized in H1 2026. H1 2026 is a recovery, not a new decline. The homepage lost 157 clicks/month to city pages ranking for the same head terms. 23 page refreshes are produced and ready but not yet live — rankings move only once published.

Data foundation

All values derived from these sources. Every number in this dashboard traces to one of these.

Data source
BigQuery gsc_keyword_pages
22,628 rows · 549 pages · 16mo coverage to 2026-06. Full monthly history Dec 2024→Jun 2026 confirmed present. H1 trajectory uses this table (not the snapshot-only gsc_keywords/gsc_pages tables).
Data source
BigQuery sfdc_quote_products
$66.1M revenue · 27,463 quote lines · 43 states · Jan 2025–Apr 2026. State × city × product coverage matrix derived from this table. Revenue opportunity calculator grounded entirely here — no GA4 dependency.
Data source
Google Ads gads_campaigns
131 campaign rows ingested. Search term-level data pending — gads_pull_local.py script fix in progress. Paid→organic gap analysis will be added in Pass 2 once search terms are pulled.
Data source
Live site audit — 242 pages
Full page inventory across 26 states, 125 cities, 39 products, 24 blogs, 17 accessories, 10 industries, 1 homepage. Cross-referenced against SFDC revenue cells to identify coverage gaps.
Data source
GSC priority keyword scorecard
7 tracked terms with H1 2026 position movement verified. Impression-weighted average position used throughout (not plain average). BrightEdge is the contractual system of record — GSC confirms the measured trend.
Data source
Competitor benchmark
conexwest.com: DR 56, 77,911 traffic, 973 common KWs. willscot.com: DR 58, 43,505 traffic, 637 common KWs. unitedrentals.com: DR 74, 797,360 traffic, 614 common KWs. PS DR 28 — 28-point gap to close.