Single-page WordPress brochure for Woof Wagon Transport, a Gwinnett-County pet transportation service. The brand is invisible to search engines, untrusted by visitors, and physically uncomfortable to use on the phone where 70% of pet-service traffic lives. This brief is what we'd fix in the first 90 days.
Per web.dev/AI-agent-site-ux guidance, every line below was captured by cross-referencing DOM + accessibility tree + visual screenshot via Playwright. No curl assumptions.
A 403 on sitemap.xml and a 404 on robots.txt is the SEO equivalent of unplugging the phone. Compounded by zero schema and a 20-character page title, the site has no signal to send Google about what it does or where.
Four fonts. No logo. No accent color. No hero image. The brand has not yet been designed. The site is a default WordPress block theme with three paragraphs glued in.
rgb(245,245,245) grey, text rgb(0,0,0) pure black. 8 detected colors and none of them say "warm, trustworthy, pet-friendly".Pick a single warm accent (rust #B8543A, deep terracotta #C76B4A, or warm amber #D89055) and apply it to CTA, links, section dividers, and accent type. Soften body text to #1F1B17.customLogos evaluates false. The brand name is set in a generic theme font in the header.Commission a simple mark: dog-silhouette + wordmark, two-color (rust + ink). Deploy as 512×512 PNG, SVG, and 32×32 favicon.woofwagonpet.com but the brand consistently writes "Woof Wagon Transport". The word "pet" only appears in the URL.Pick one. Either rebrand the URL to "woofwagontransport.com" (and 301 the old) or rebrand the wordmark to "Woof Wagon Pet Transport". Disconnect costs trust and citation consistency.70%+ of pet-service queries are mobile. On this site, 80% of interactive elements fail the WCAG / iOS HIG minimum 44×44px tap target. The form is wide-open to bots. The page renders fine, then fails the moment a thumb touches it.
/. The first spam-bot scan that lands on this domain will flood the owner's inbox and may get her email marked as spam by Gmail.Add Cloudflare Turnstile (free), add a hidden honeypot trap (website_url), require name + email + message, rate-limit submissions by IP at the firewall.a, button, input[type=submit]. Padding rather than scale. Touch-action: manipulation to kill 300ms delay.required attribute, no inputmode, no autocomplete hints. Email field has no type="email" validation visible. No phone field at all — the owner's biggest lead capture is missing.required on all fields. autocomplete="name email tel". inputmode="email" / "tel". Phone field with US-format placeholder. Mobile keyboards adjust automatically.outline: 2px solid var(--accent); outline-offset: 2px on all focusable elements.min-height: 100dvh usage; layout jumps on iOS Safari URL-bar collapse.Hero block min-height: 100dvh max-height 100dvh. Section padding fluid via clamp(40px, 8vw, 96px).Service-area focus per scope: Gwinnett County and the immediately adjacent counties where Woof Wagon's HQ in 30350 (Dunwoody / Sandy Springs) makes the drive economic — North Fulton, DeKalb, Hall, Forsyth, Barrow, Rockdale, Walton.
| Area | Competition | Notes |
|---|---|---|
| Gwinnett core (Lawrenceville, Duluth, Suwanee, Buford, Snellville, Lilburn, Norcross, Sugar Hill) | 4/10 | No brand owns the map pack. Wide open. |
| North Fulton (Sandy Springs, Dunwoody, Roswell, Alpharetta, Johns Creek) | 7/10 | Higher income, more existing services, more competition. |
| DeKalb perimeter (Tucker, Brookhaven, Chamblee, Stone Mountain) | 5/10 | Underserved despite Atlanta proximity. |
| Forsyth (Cumming) | 3/10 | Growth corridor, almost no providers. |
| Hall (Gainesville) | 3/10 | Wide open. Vet density justifies expansion. |
| Barrow / Walton / Rockdale | 2/10 | Rural, dispersed demand. Recurring-customer model only. |
Each gap below maps to underserved intent in the Gwinnett + adjacent service area. Each becomes a dedicated landing page in the rebuild, with its own schema and its own GBP services entry.
Owners pay extra for the driver to stay through the appointment instead of double-tripping. No Gwinnett competitor publishes this as a defined offer with a price.
Senior dogs, post-op recovery, soft-padded crates. Gwinnett has Bluepearl, Animal Emergency, Georgia Veterinary Rehab — high-density referral market with zero specialist transport competitor.
Subscription pricing for owners with weekly grooming or twice-monthly vet appointments. Predictable revenue + lock-in. Nobody in metro Atlanta publishes a subscription plan.
Sandy Springs / Dunwoody skews older. Many elderly owners can't drive their pets. A "senior caregiver partner" GBP attribute + dedicated page captures referral from senior living orgs.
Birds, reptiles, small mammals. Specialty vets like Avian & Exotic Animal Care of Sandy Springs sit in your service radius. No local competitor advertises capability.
Customers don't want to pay two separate trips. Round-trip pricing for boarding facilities (Camp Bow Wow Norcross, Pet Paradise Suwanee, etc.) captures the full job.
"Vet + groomer + pickup" priced as one block. Nobody else packages this. Higher AOV than single-stop rides.
Genuinely differentiated. Most pet-taxi services don't do this. Best Gwinnett dog parks (Bay Creek Dog Park, Suwanee Town Center, Bryson Park) become natural content pillars.
Top 20 commercial intent keywords for Gwinnett + adjacent. Difficulty scores from Gemini research are estimates; we'll refine with DataForSEO Keyword Planner once the agent-os run completes for the new domain.
| Keyword | Intent | Est. monthly vol. | Difficulty | Page target |
|---|---|---|---|---|
| pet taxi near me | local · commercial | 8,100 | 42 | Home + GBP |
| pet transportation near me | local · commercial | 5,400 | 40 | Home |
| dog transport near me | local · commercial | 1,200 | 36 | Home |
| pet courier services | commercial | 1,600 | 34 | Services hub |
| pet taxi atlanta | geo · commercial | 900 | 38 | City: Atlanta perimeter |
| pet taxi gwinnett county | geo · commercial | 50 | 8 | City: Gwinnett (anchor) |
| pet transport lawrenceville ga | geo · commercial | 50 | 6 | City: Lawrenceville |
| pet taxi duluth ga | geo · commercial | 30 | 5 | City: Duluth |
| dog taxi suwanee | geo · commercial | 20 | 4 | City: Suwanee |
| pet transport buford ga | geo · commercial | 40 | 5 | City: Buford |
| pet taxi snellville | geo · commercial | 20 | 4 | City: Snellville |
| pet taxi norcross | geo · commercial | 20 | 4 | City: Norcross |
| pet transport dunwoody | geo · commercial | 30 | 5 | City: Dunwoody |
| pet taxi sandy springs | geo · commercial | 40 | 7 | City: Sandy Springs |
| pet taxi alpharetta | geo · commercial | 50 | 12 | City: Alpharetta |
| vet shuttle service | service · commercial | 150 | 12 | Service: Vet rides |
| dog ride to groomer | service · commercial | 90 | 10 | Service: Groomer rides |
| boarding drop off service | service · commercial | 70 | 8 | Service: Boarding |
| recurring pet rides | service · commercial | 40 | 5 | Service: Recurring |
| dog park transport | service · differentiated | 30 | 3 | Service: Dog park outings |
Volumes are Gemini-estimated US monthlies; difficulty 0–100. The geo-modified terms are the cheapest entry — the entire long tail is winnable inside 6 months.
LocalBusiness (PetTransportationService) + Service array + GeoShape for the service area. This block alone unlocks rich-result eligibility, AI-citation passage parsing, and proper Knowledge Graph linkage.
// Inject into <head> on homepage. One JSON-LD with @graph for clean linkage. { "@context": "https://schema.org", "@graph": [ { "@type": ["LocalBusiness", "PetService"], "@id": "https://woofwagonpet.com/#business", "name": "Woof Wagon Transport", "image": "https://woofwagonpet.com/img/og-woof-wagon-1200x630.jpg", "description": "Insured pet taxi and transportation service for Gwinnett County and adjacent metro Atlanta. Vet, groomer, boarding rides and recurring outings.", "url": "https://woofwagonpet.com/", "telephone": "+14044968146", "email": "contact@woofwagonpet.com", "priceRange": "$$", "address": { "@type": "PostalAddress", "streetAddress": "8735 Dunwoody Place, Ste N", "addressLocality": "Atlanta", "addressRegion": "GA", "postalCode": "30350", "addressCountry": "US" }, "areaServed": [ { "@type": "AdministrativeArea", "name": "Gwinnett County, GA" }, { "@type": "City", "name": "Lawrenceville, GA" }, { "@type": "City", "name": "Duluth, GA" }, { "@type": "City", "name": "Suwanee, GA" }, { "@type": "City", "name": "Buford, GA" }, { "@type": "City", "name": "Snellville, GA" }, { "@type": "City", "name": "Lilburn, GA" }, { "@type": "City", "name": "Norcross, GA" }, { "@type": "City", "name": "Sugar Hill, GA" }, { "@type": "City", "name": "Dunwoody, GA" }, { "@type": "City", "name": "Sandy Springs, GA" } ], "openingHours": "Mo-Sa 07:00-19:00", "sameAs": [ "https://www.instagram.com/woofwagonpet", "https://www.facebook.com/woofwagonpet" ], "hasOfferCatalog": { "@id": "https://woofwagonpet.com/#services" } }, { "@type": "OfferCatalog", "@id": "https://woofwagonpet.com/#services", "name": "Pet Transportation Services", "itemListElement": [ { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Vet Visit Pet Transport" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Groomer Pet Transport" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Boarding Drop-off & Pickup" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Recurring Pet Rides" } }, { "@type": "Offer", "itemOffered": { "@type": "Service", "name": "Dog Park Outings" } } ] } // + FAQPage block with 8–12 entries // + BreadcrumbList per page // + Person (owner) with knowsAbout, jobTitle, hasCredential ] }
Companion FAQ + BreadcrumbList + Person schema blocks ship with the rebuild. Total payload < 6 KB inline.
No big-bang relaunch. We layer fixes so leads start flowing before the rebrand ships. Every phase ends with a verifiable artifact and a metric we can show the owner.