The good news: nothing here requires a rebuild
This is a self-hosted WordPress site the client fully controls — every finding in this audit is a configuration, content, or code fix, not a platform ceiling. The two items that matter most (the stale Google Maps embed and the wrong-address citation campaign) are directly connected to this business's documented GBP suspension history and should not wait behind anything else.

Roadmap

Days 1-3: Stop the Bleeding
A few hours of WordPress/Rank Math edits
  • Fix or remove the Google Maps iframe on the Missouri City pages showing the stale 3400 Bissonnet St address — SUPERSEDED Oct 4, 2026: Bissonnet St is a confirmed real, active second location, not stale. Not an issue.
  • Wrap the top-bar phone number in tel: and fix the hero "CALL US" button to actually dial — DONE, verified live
  • Fix the JSON-LD openingHours (9am-5pm → 6am-9pm) sitewide — DONE, verified live
  • Pick one true "years in business" number and fix it everywhere it appears (currently 18/20/22/implied-24) — DONE: client confirmed 24 years (since 2002), fixed sitewide Oct 4, 2026
  • Set /thankyou/ and /sign-up-sms/ to noindex and confirm they drop from the sitemap — DONE, verified live
  • Remove maximum-scale=1.0, user-scalable=0 from the viewport meta tag — DONE, verified live
Week 1: Consolidate and Correct
Cleanup, then verification
  • 301-redirect the 6 duplicate city-page pairs (-2 suffix) into their base URLs; remove the redirected URLs from the sitemap
  • Audit and re-claim the 44 directory citations built on the wrong "1415 S Voss Rd" address
  • Fix the site-wide soft-404 behavior (invalid URLs currently 301 to the homepage and return 200)
  • Publish the corrected LocalBusiness JSON-LD (streetAddress, geo, hours, areaServed, aggregateRating) from the Schema page
  • Fix the mobile text-overflow bug (top bar, hero slider, floating CTA clipping at 390px)
  • Fix the overlapping "Schedule an Appointment" button on city pages
Weeks 2-6: Rebuild the Content Layer
Where the growth comes from
  • Decide/resolve the two out-of-territory Louisiana pages (establish genuine presence or remove/noindex)
  • Rewrite the highest-traffic city pages with genuine local content: neighborhoods, species/soil notes, local testimonials and photos
  • Build a page targeting the broad "Houston tree removal" head term — currently invisible for the single highest-intent query in the market
  • Expand the thin service pages toward the ~800-word floor with real process detail and FAQs
  • Add Service + areaServed schema to every service and city page
  • Add a real About/Team page linking Daniel Arias's ISA credential to a verification source
  • Refresh the on-site reviews display and add AggregateRating schema reflecting the real 5.0/37 GBP rating
Months 2-3: Depth & Authority
Compounding work
  • Turn /tree-maintenance-tips/ into real, dated, single-topic blog posts; add FAQPage schema
  • Add unique alt text to gallery photos (236 of 260 currently share two generic strings)
  • Resize the two oversized portfolio images; fix the HTML caching header; add security headers
  • Re-run a competitive SERP check against the three benchmark queries in Local & Maps to measure movement

Critical (fix immediately)

#ActionWhereEffort
C1Fix/remove the stale Google Maps embed on the Missouri City pages (shows 3400 Bissonnet St, Houston) — SUPERSEDED: confirmed a real active location, not staleDivi page builder, both Missouri City URLsN/A
C2301-redirect the 6 duplicate city-page pairs into their base URLs; drop from sitemap — DONEWordPress redirect rule + Rank MathDone, verified live
C3Fix the JSON-LD openingHours (9am-5pm → 6am-9pm) sitewide — DONERank Math Local SEO settingsDone, verified live
C4Resolve the years-in-business inconsistency (18/20/22 → one correct number) — DONETheme template + city-page contentDone, verified live
C5Wrap the header phone number in tel: and fix the hero "CALL US" button to dial directly — DONEDivi header moduleDone, verified live
C6Audit and correct the 44 directory citations built against the wrong Voss Rd address — RE-SCOPED: Voss Rd is a real location, not wrongCitation-by-citation, per the Legitt reportWaiting on confirmed Voss Rd address
C7Decide/resolve the Sulphur LA and Lake Charles LA doorway pages — DONE: removedContent + indexing decisionDone, verified live

High (within 1-2 weeks)

#ActionWhereEffort
H1Set /thankyou/ and /sign-up-sms/ to noindex, follow; confirm sitemap dropRank Math per-page SEO panel10 min
H2Fix site-wide soft-404 behavior (invalid URLs currently redirect to homepage as 200).htaccess / redirect plugin1 hr
H3Add security headers: HSTS, X-Content-Type-Options, X-Frame-Options/CSP, Referrer-PolicyServer / .htaccess1 hr
H4Publish Service schema on all 11 service pages; areaServed on surviving city pagesRank Math per-page schema field3-4 hr
H5Add AggregateRating schema (5.0/37) to the reviews page and homepageRank Math / custom snippet30 min
H6Refresh the on-site reviews widget — currently stuck at July 2022WP Google Places Review Slider settings30 min - 2 hr depending on sync method
H7Fix the mobile text-overflow bug (top bar, hero subtitle, floating CTA clipping at 390px)Divi responsive CSS2-3 hr
H8Fix the overlapping "Schedule an Appointment" button on city pagesDivi floating-button positioning1-2 hr
H9Remove maximum-scale=1.0, user-scalable=0 from the viewport meta tagTheme header5 min
H10Add streetAddress + geo coordinates to the LocalBusiness schemaRank Math Local SEO settings15 min
H11Build a page targeting the broad "Houston tree removal" head termNew page, real contentMedium

Medium (within 1 month)

#ActionNotes
M1Rewrite the highest-traffic city pages with genuine local contentLocal landmarks, species/soil notes, local testimonials and photos — 150-250 words minimum per page
M2Correct the Article→WebPage/Service schema misapplicationRank Math global schema-type default
M3Add BreadcrumbList schema across city and service pagesReflects the real site hierarchy
M4Upgrade LocalBusiness type to HomeAndConstructionBusinessClosest valid schema.org subtype for this vertical
M5Resize/re-compress the two oversized portfolio JPEGs (495KB/475KB)~750-900KB off a full homepage load
M6Fix the HTML no-store cache-control header; preload the hero/LCP image; defer Gravity Forms JSServer + theme header
M7Expand the thin service pages toward the 800-word floor/tree-removal-services/ (383w), /tree-services-cypress-tx/ (247w)
M8Turn /tree-maintenance-tips/ into real, dated blog posts; add FAQPage schemaSplit 11 crammed topics into single-topic posts
M9Add unique alt text/captions to gallery photos236 of 260 currently share two generic strings
M10Add a real About/Team page; link the ISA credential (TX-4490A) to a verification sourceDaniel Arias bio + photo
M11Add indicative pricing ranges to service/city pagesCurrently zero pricing signals anywhere on the site
M12Fix the schema author entity name ("danny" → "Daniel Arias, ISA Certified Arborist")WordPress user profile display name
M13Add YouTube channel to sameAsHomepage already embeds a VideoObject-marked video from that channel
M14Publish a real llms.txt fileBusiness description, services, service area, links to canonical pages

Low (backlog)

  • 301 case-sensitive URL variants to their lowercase canonical instead of relying on the canonical tag alone
  • Update the footer's http://www.wabuweb.com link to https://
  • Enable Rank Math's IndexNow integration for faster Bing/Yandex re-crawl after the city-page cleanup
  • Rename or document local-sitemap.xml's KML-only content so it isn't mistaken for a broken local-page sitemap
  • Re-host the hotlinked "five-stars" badge image locally/via ExactDN instead of an unrelated third-party domain
  • Fix "isFamilyFriendly": "True" to a proper boolean in the homepage VideoObject schema

Expected Sequence and Outcomes

After Days 1-3 + Week 12-4 weeks
  • Stale-address risk resolved; NAP consistent everywhere Google can see it
  • Duplicate city pages consolidated; crawl budget and link equity no longer split
  • Mobile visitors can actually tap-to-call — the primary conversion path is unblocked
  • Schema tells the truth: correct hours, correct address, real rating
After Weeks 2-6 + Months 2-360-120 days
  • City pages carry genuine local content instead of a swapped-name template
  • First visibility for the broad "Houston tree removal" query
  • The real 5.0/37 GBP rating visibly reinforces every money page
  • Rich-result eligibility from Service, areaServed, and AggregateRating schema