⛵ Client Portal — Confidential | ← Back to Client Hub
📋 All 7 Audits Complete — April 15, 2026

Seaforth Boat Rentals — Full Audit Suite

Complete findings across all 7 audit channels. Multiple quick wins available across paid media, local SEO, and content.

56/100SEO
67/100GEO / AI
55/100Ads (Agg.)
64/100Google Ads
36/100Meta Ads
39/100TikTok Ads
52/100GBP / Local
52/100Social
2/10Content
Analytics
$2,538/moAds Spend

Audit Overview — Seaforth Boat Rentals

🔎

SEO Health

Technical · Content · On-Page · Schema · Performance
56/100
⚠ Core Web Vitals all failing — LCP 3.0s, CLS 0.40, INP 250ms
⚠ 20+ images missing alt text across location cards and boat listings
→ Fix "frequenly-asked-questions" URL typo and add 301 redirect
✓ HTTPS, robots.txt, sitemap all properly configured
🤖

GEO / AI Citability

AI Crawlers · llms.txt · E-E-A-T · Brand Authority
67/100
✓ llms.txt exists — AI crawlers have structured site access (78/100)
✓ AI crawler access open (88/100) — no blocking rules
→ E-E-A-T signals weak (58/100) — no author bios, expertise signals
→ Content citability low (52/100) — thin pages, no structured Q&A
📢

Paid Ads

Google · Meta · TikTok
55/100
⚠ Branded campaign capped at $15/day — losing 69% of impressions
⚠ Meta Pixel fires PageView only — zero conversion events tracked
⚠ TikTok Pixel completely absent — cannot run TikTok campaigns
✓ Google Ads active — $2,538/mo, 182 conversions, $13.94 CPA
📍

Google Business Profile

Local Visibility · NAP · Reviews · Hours
52/100
⚠ No GBP dashboard access — cannot verify 5 listing configs (#1 blocker)
⚠ Address typo: "Quivara" instead of "Quivira" in schema on all pages
→ No dedicated location landing pages for 5 marina locations
→ Schema hours wrong (9:00–17:00; actual is 9:30am to ~sunset)
📱

Social Media

Instagram · Facebook · Twitter/X · YouTube
52/100
✓ Instagram & Facebook active with lifestyle content and UGC campaign
✓ Strong brand voice consistency (8/10) across active channels
⚠ Zero TikTok presence — critical gap for 18-35 San Diego audience
→ Twitter/X effectively abandoned (32 followers, 12 tweets in 15 years)
✍️

Content

Blog · Service Pages · Keyword Coverage
2/10
⚠ Only 5 blog posts — all from Apr–Jun 2024 (10+ months stale)
⚠ 404 on /special-occasions/ — active conversion leak
⚠ Zero coverage of "boat rental San Diego" (8,100–18,000/mo searches)
→ Sailing school ($100–$1,450 ASA courses) has zero supporting content
📊

Analytics Baseline

GA4 · GSC · KPI Framework · Attribution
✓ Complete
✓ GA4 property G-THB1XP30JN identified, 6 KPIs defined
✓ 6 conversion event definitions (FareHarbor, phone, gift card, etc.)
⚠ FareHarbor cross-domain tracking likely broken — P0 fix required
→ Call tracking gap — CallRail or WhatConverts recommended

Top 10 Priority Actions Across All Channels

  • P0 · Ads Increase Branded campaign budget from $15/day → $50–75/day — highest ROAS action in the account
  • P0 · Analytics Fix FareHarbor cross-domain tracking — booking CVR data is materially understated without this
  • P0 · Ads Tag /thank-you/ and /confirmed-reservation/ with Meta Purchase event to unlock optimization
  • P0 · GBP Get GBP dashboard access to verify and manage all 5 listings — #1 local SEO blocker
  • P0 · SEO Fix Core Web Vitals — LCP, CLS, and INP all failing; significant ranking signal impact
  • P1 · SEO Add alt text to 20+ images — quick 2–3 hour task with immediate accessibility + image SEO boost
  • P1 · Content Fix 404 on /special-occasions/ — active conversion leak, immediate revenue impact
  • P1 · Ads Install TikTok Pixel — cannot run TikTok campaigns at all without this
  • P1 · GBP Fix "Quivara" → "Quivira" typo in schema across all pages
  • P1 · Content Publish "Boat Rental San Diego" cornerstone page — 8,100–18,000 monthly searches uncaptured

SEO Audit — Seaforth Boat Rentals

Website: seaforthboatrental.com · Platform: WordPress + Rank Math + Elementor · April 15, 2026

56
Overall Score
60
Technical SEO
60
Content Quality
70
On-Page SEO
50
Schema / Structured Data
30
Performance (CWV)
30
Images
40
AI Search Readiness

Top 5 Critical Issues

  • Core Web Vitals — all failing — LCP ~3.0s, CLS ~0.40, INP ~250ms. Major ranking signal; must be prioritized in Q1 sprint.
  • 20+ images missing alt text — location cards, boat listings, app badges all invisible to search crawlers and screen readers.
  • Misspelled FAQ URL/frequenly-asked-questions/ (missing 'u') is canonicalized as-is; canonical error locks in the mistake.
  • Missing high-value schemas — No Service, Product, Review/AggregateRating, or FAQPage schema on key conversion pages.
  • Blog stale since June 2024 — Only 5 posts total; content marketing has halted for 10+ months.

Top 5 Quick Wins

  • Add alt text to 20+ missing images — 2–3 hours, immediate accessibility + image SEO improvement
  • Fix "San Deigo" typo in yacht rentals meta description
  • Create /frequently-asked-questions/ with 301 redirect from misspelled URL
  • Add loading="lazy" to all below-the-fold images — measurable LCP improvement in 1–2 hours
  • Implement AggregateRating schema to show star ratings in SERPs

Category Breakdown

CategoryWeightScoreStatus
Technical SEO25%60/100HTTPS ✓, sitemap ✓, redirect chain issue ⚠
Content Quality25%60/100Strong service pages, stale blog, 404s ⚠
On-Page SEO20%70/100Good title/meta implementation, one typo ⚠
Schema / Structured Data10%50/100LocalBusiness present, missing 7 schema types
Performance (Core Web Vitals)10%30/100LCP 3.0s ✗, CLS 0.40 ✗, INP 250ms ✗
Images5%30/10020+ missing alt text, no lazy loading
AI Search Readiness5%40/100llms.txt present, weak structured Q&A content

Technical SEO Details

HTTPS & Redirects: HTTP→HTTPS 301 properly configured. HTTP/2 enabled (nginx). ⚠ www. variant creates a 2-hop redirect chain — should consolidate to single hop.

Canonicalization Issues: Homepage (/) has no canonical tag — duplicate content risk. /sailboat-rental/ has no detected canonical. FAQ canonical points to misspelled URL, locking in the error.

Sitemap: https://seaforthboatrental.com/sitemap_index.xml — properly referenced in robots.txt. ✓

Robots.txt: Standard WordPress configuration, properly allows AI crawlers. ✓

GEO & AI Search Audit — Seaforth Boat Rentals

seaforthboatrental.com · AI Visibility for ChatGPT, Claude, Perplexity, Google AI Overviews · April 15, 2026

67
Overall GEO Score
88
AI Crawler Access
78
llms.txt
73
Technical SEO
72
Local GEO
62
Schema Markup
58
E-E-A-T Signals
55
Brand Authority
52
Content Citability

Key Findings

  • llms.txt exists — Seaforth has already implemented the emerging AI site structure standard. This is a meaningful head start over competitors.
  • AI crawlers have full access — No blocking rules in robots.txt or meta tags for GPTBot, ClaudeBot, or PerplexityBot.
  • Strong local GEO signals — 50-year legacy, multiple San Diego locations, and FareHarbor booking signals give good local AI citability.
  • E-E-A-T weak (58/100) — No author bios, no staff expertise pages, no awards or certifications prominently displayed.
  • Content citability low (52/100) — Pages are thin, minimal structured Q&A, no FAQ schema on most pages. AI systems struggle to extract quotable answers.
  • Schema gaps limiting AI structured data — Missing Review/AggregateRating, FAQPage, and Course schemas. These directly feed AI knowledge panels.

Priority GEO Improvements

  • Add FAQPage schema to all major service pages — enables direct AI answer extraction for "boat rental San Diego" queries
  • Create staff expertise page featuring instructors, captains, and the company's 50-year heritage — boosts E-E-A-T significantly
  • Implement AggregateRating schema pulling from Yelp/TripAdvisor reviews — critical for AI trust signals
  • Add Course schema for all 6 ASA sailing courses — directly cited by AI for sailing lesson queries
  • Expand llms.txt to include service descriptions and FAQ section — currently minimal

Paid Ads Audit — Seaforth Boat Rentals

Google Ads CID: 262-617-1421 · Meta Ads · TikTok Ads · Period: Mar 17–Apr 15, 2026

55
Aggregate Score
64
Google Ads
36
Meta Ads
39
TikTok Ads
$2,538
Monthly Spend
182
Conversions (30d)
$13.94
Blended CPA

Top 5 Critical Issues

  • Branded campaign capped at $15/day — losing 69.2% of impressions — highest-converting campaign in the account. Needs $50–75/day immediately.
  • Meta Pixel fires PageView only — zero conversion events — any Meta campaigns are optimizing on traffic, not bookings. Purchase, Lead, ViewContent, and InitiateCheckout events all absent.
  • No Conversions API on Meta — iOS 14.5+ signal loss estimated at 20–40%; compounding the event gap above.
  • TikTok Pixel completely absent — an exceptionally strong-fit platform (9/10 relevance) with zero tracking infrastructure. Cannot run TikTok Ads until resolved.
  • Active search campaigns have minimal negative keyword coverage — 514 negatives exist but 510+ are on two paused Smart campaigns. Active campaigns are essentially unprotected.

Top 5 Quick Wins (<15 min each)

  • Increase Branded campaign budget to $50/day — highest ROAS action available, ~5-minute change
  • Add sitelinks to Branded campaign — sitelinks already exist in account but not attached to Branded
  • Add negatives: "promo code," "coupon," "sdyc," "junior sailing," "for sale" — stops $52+/month confirmed wasted spend
  • Add 7 more headlines to the Classes RSA (currently 8 of 15) — expands Google's test combinations
  • Tag /thank-you/ and /confirmed-reservation/ pages with Meta Purchase event — unlocks campaign optimization and ROAS measurement

Google Ads Breakdown

CategoryWeightScoreNotes
Conversion Tracking25%60/100GA4 linked, but FareHarbor cross-domain gap
Wasted Spend20%65/100$52+/mo confirmed waste, minimal negatives on active campaigns
Account Structure15%60/10028 of 32 campaigns paused, Branded severely underfunded
Keywords15%70/100Good coverage, broad match concerns on exact-intent queries
Ad Copy10%65/100Classes RSA only has 8/15 headlines, some weak copy
Landing Pages10%60/100FareHarbor session break loses attribution data
Settings5%70/100Good geo targeting, partner search needs review

Platform Summary

PlatformScoreGradeKey Blocker
Google Ads64/100CBranded campaign budget cap, negative keyword gaps
Meta Ads36/100FPixel fires PageView only — no conversion events, no CAPI
TikTok Ads39/100FZero pixel — not launch-ready; 9/10 platform fit rating

Google Business Profile & Local SEO Audit

5 Locations: Mission Bay · Coronado · Downtown SD · Harbor Island · Loews Coronado Bay · April 15, 2026

52
Local Visibility Score
GBP Access (None)
5
Locations
0
Location Pages

Critical Issues

  • No GBP dashboard access — Cannot verify, optimize, or post to any of the 5 listings. This is the single biggest local SEO blocker. Client must grant access immediately.
  • Address typo in schema — "Quivara" instead of "Quivira" appears across all schema markup and contact pages. Affects NAP consistency.
  • Schema hours are wrong — Shows 09:00–17:00; actual hours are 9:30am to ~sunset. Incorrect hours are a critical trust signal failure.
  • No dedicated location landing pages — 5 distinct marina locations with no individual pages. Google cannot associate location-specific content with each GBP listing.
  • No review widget on website — 4.6 star Yelp and TripAdvisor ratings not displayed. Missing strong trust signal and E-E-A-T indicator.

Location Overview

LocationAddressLanding PageStatus
Mission Bay (Primary)1641 Quivira Rd., SD 92109NoneGBP unverified
Coronado – Glorietta Bay1715 Strand Way, CoronadoNoneGBP unverified
Downtown San Diego955 Harbor Island Dr.NoneGBP unverified
Harbor Island EastHarbor Island areaNoneGBP unverified
Loews Coronado Bay4000 Coronado Bay Rd.NoneGBP unverified

Quick Wins (Before GBP Access)

  • Fix "Quivara" → "Quivira" typo in all schema markup — 30-minute fix with outsized NAP impact
  • Update business hours in schema to actual operating hours (9:30am to ~sunset)
  • Add review widget to homepage pulling from Yelp/TripAdvisor (4.6★ average)
  • Build location-specific landing pages for all 5 marinas — each with unique copy, map embed, and LocalBusiness schema

Social Media Audit — Seaforth Boat Rentals

Instagram · Facebook · Twitter/X · YouTube · TikTok (absent) · April 15, 2026

52
Overall Score
7
Instagram (10)
7
Facebook (10)
1
Twitter/X (10)
0
TikTok (10)
8
Brand Voice (10)
7
Paid Infrastructure

Strengths

  • Strong brand voice consistency (8/10) — welcoming, accessible, experience-first tone consistent across Instagram and Facebook
  • Active UGC campaign — customer-generated content feeds the Instagram presence effectively
  • Facebook Pixel in place — paid social infrastructure exists; needs conversion events added
  • Strong raw material — 50-year heritage story, beautiful on-water scenery, year-round San Diego operations

Critical Gaps

  • Zero TikTok presence — critical platform for 18-35 San Diego audience experiencing boat rentals and water activities
  • Twitter/X abandoned — 32 followers, 12 tweets over 15 years. Should be formally retired or redirected.
  • YouTube lacks proper channel — no dedicated brand channel; missing long-form and Shorts opportunity
  • Posting consistency (5/10) — no structured content calendar; posting frequency is irregular
  • Hashtag strategy poor (3/10) — no systematic discovery strategy; San Diego marine hashtags underutilized

Category Scores

CategoryScoreNotes
Profile Completeness6/10Strong on Instagram/FB; Twitter/X and YouTube incomplete
Posting Consistency5/10No content calendar, irregular frequency
Content Quality & Mix7/10Good lifestyle photography, needs more video
Engagement Strategy5/10No systematic response protocol or engagement goals
Platform Coverage4/10No TikTok, dead Twitter/X, minimal YouTube
Brand Voice Consistency8/10Excellent — welcoming, expert, experience-first
Audience Growth Indicators4/10No growth campaigns, no paid audience building
Review & Reputation Channels7/10Yelp/TripAdvisor active; not embedded on website
Hashtag & Discovery Strategy3/10Minimal, inconsistent, no research-backed approach
Paid Social Infrastructure7/10Pixel present; needs conversion events

Content Audit — Seaforth Boat Rentals

seaforthboatrental.com · Blog + Service Pages · Keyword Gap Analysis · April 15, 2026

2
Content Score (10)
5
Blog Posts Total
10+
Months Stale
25+
Uncovered Keywords
13
Service Pages
1
Active 404s

Critical Findings

  • Only 5 blog posts — all from April–June 2024 — 10+ months of content silence. Blog is the primary tool for capturing informational and long-tail search traffic.
  • 404 on /special-occasions/ — active conversion leak. This page likely receives organic traffic and ad clicks; all bouncing with no fallback.
  • Zero coverage of "boat rental San Diego" — 8,100–18,000 monthly searches, yet no page directly targets this head term. Leaving top-of-funnel traffic on the table.
  • Sailing school has zero supporting blog content — ASA courses run $100–$1,450 per booking; potential $10K+/mo revenue channel with no content marketing support.
  • 5 marina locations with zero location-specific editorial content — no "things to do near Mission Bay," no "Coronado boat rentals" — massive local SEO gap.

25+ Uncovered High-Intent Keywords (Sample)

KeywordEst. Monthly VolumeIntentPriority
boat rental San Diego8,100–18,000TransactionalP0
pontoon boat rental San Diego1,000–3,000TransactionalP0
sailing lessons San Diego800–2,400TransactionalP0
Mission Bay boat rental600–1,800LocalP1
sunset cruise San Diego600–1,500ExperientialP1
fishing charter San Diego500–1,200TransactionalP1
things to do Mission Bay2,000–5,000InformationalP1
ASA sailing certification San Diego200–600TransactionalP2

90-Day Content Calendar — Priority Articles

  • P0 "Best Boat Rentals in San Diego" — cornerstone page targeting head term with 8,100–18,000 monthly searches
  • P0 Fix 404 on /special-occasions/ — either restore page or create redirect to relevant service page
  • P1 "Mission Bay Boat Rentals: Complete Guide" — location page targeting local search intent
  • P1 "Sailing Lessons in San Diego: ASA Course Guide" — targets ASA certification searches, supports high-value course bookings
  • P1 "San Diego Sunset Cruise: What to Expect" — experiential content for harbor cruise bookings
  • P1 "Pontoon Boat Rental San Diego: Party & Group Guide" — high-margin group booking target
  • P2 "Things to Do on Mission Bay — Local Guide" — informational funnel entry, links to all rental services
  • P2 "San Diego Fishing Charter Guide: Best Spots & What to Bring" — targets fishing charter bookings

Analytics Baseline & KPI Setup — Seaforth Boat Rentals

GA4 Property: G-THB1XP30JN · FareHarbor Booking Platform · April 15, 2026

✓ Done
Baseline Complete
6
KPIs Defined
6
Conversion Events
P0
FareHarbor Fix Needed
14
Tracking Checklist Items

What Was Delivered

  • Traffic baseline framework — Channel benchmarks, methodology, and alert thresholds for GA4 TTM reporting
  • 6 conversion event definitions — FareHarbor booking, phone click, gift card, membership, resume submit, newsletter signup
  • Organic baseline — GSC query cluster breakdown: brand / rental type / location / experience / informational with health indicators
  • KPI framework (6 KPIs) — BCR, RPS, CPB, OBS, PLR, ABV with formulas, targets, sources, and monthly review cadence
  • Tracking health checklist — 14 items across P0–P3 priority tiers
  • Attribution assessment — DDA recommendation, FareHarbor session-break analysis, UTM hygiene requirements

KPI Framework

KPINameSourceReview Cadence
BCRBooking Conversion RateGA4 + FareHarborWeekly
RPSRevenue Per SessionGA4 E-commerceMonthly
CPBCost Per BookingGoogle Ads + GA4Weekly
OBSOrganic Booking ShareGA4 Channel GroupingMonthly
PLRPhone Lead RateCallRail / GA4 EventsMonthly
ABVAverage Booking ValueFareHarbor ReportsMonthly

Critical P0 Action: FareHarbor Cross-Domain Tracking

⚠ CRITICAL — Fix Before Trusting Any Booking Data

FareHarbor operates on a separate domain (fareharbor.com). When a user clicks "Book Now" and lands on the FareHarbor checkout, GA4 creates a new session — breaking the attribution chain. Booking confirmations cannot be attributed back to the originating channel (organic, paid, social).

Impact: All booking CVR data is materially understated. Google Ads cannot optimize toward actual bookings. ROAS calculations are unreliable.

Fix: Configure FareHarbor cross-domain tracking with Seaforth's GTM container. This is a P0 item — all KPI baselines will be inaccurate until resolved.

P0–P1 Tracking Actions

  • P0 Configure FareHarbor cross-domain tracking in GTM — booking attribution is broken without this
  • P0 Add Meta Purchase conversion event on /thank-you/ and /confirmed-reservation/ pages
  • P0 Install TikTok Pixel via GTM — required before any TikTok campaigns can launch
  • P1 Implement CallRail or WhatConverts for phone call tracking — current call tracking has a gap
  • P1 Audit UTM hygiene across all paid campaigns — inconsistent parameters in Google Ads
  • P1 Configure GA4 Enhanced Measurement for scroll, file downloads, and video engagement