← Back to resources
GUIDE · TRADESUpdated May 2026~12 min read

AEO & SEO for Contractors: A Practical Guide for the Trades

Most plumbers, electricians, HVAC pros, roofers, and general contractors built their book of business on referrals and a Yellow Pages listing that turned into a website nobody really updates. That used to be enough. Today the people who would have called you are typing full sentences into ChatGPT, Perplexity, and Google's AI Overviews, and they're getting answers that name three or four competitors and not you. This guide walks through what to fix first, what the new "answer engines" actually look at, and what a real, finishable 30-day plan looks like for a small trade business. We wrote it from Murray, Kentucky, for crews across western KY, Tennessee, and southern Illinois.

Why this matters now

Used to be, a homeowner with a leaking water heater typed "plumber near me" into Google, glanced at the map pack, and called the top three. That happened in maybe ten seconds. Now the same person opens ChatGPT on their phone and types "who's a good plumber in Murray, KY who works weekends and is reasonable on price?" They get a paragraph back with two or three names, a short reason for each, and sometimes a phone number. They never see a list of ten blue links. They see a recommendation.

That shift has a name: Answer Engine Optimization, or AEO. It's the same idea as SEO, but the "engine" is now an AI model that reads the web, picks a few sources it trusts, and synthesizes an answer. Google AI Overviews, Perplexity, ChatGPT search, Claude, and Bing Copilot all work this way. The contractors who show up in those answers usually share a few things: a complete Google Business Profile, a website that clearly says what they do and where, structured data that machines can read, and some kind of third-party signal (reviews, local press, chamber listings) that they're real. None of that requires a marketing budget. It requires a couple of focused weekends and a willingness to fix the basics.

The 7 high-impact moves for trade businesses

You don't need to do everything. You need to do these seven, in this order, before you spend a dollar on ads or a fancy redesign.

1. Claim and complete your Google Business Profile

This is still the single highest-leverage thing a trade business can do. Around 94% of local searches happen on mobile, and the map pack is almost always the first thing a homeowner taps. Claim your profile at google.com/business, pick the most specific primary category ("Plumber," not "Contractor"), add every service you offer, set real hours, upload a dozen photos of trucks, crews, and finished jobs, and make sure your name, address, and phone number (NAP) match what's on your website and invoices exactly. NAP inconsistency is one of the most common reasons local rankings stay stuck.

Bad: "Mike's Plumbing" with no photos, hours from 2019, and a phone number that doesn't match the website.
Good: Category set to Plumber, 20+ photos with geo-tagged metadata, 8 specific services listed, weekend hours noted, and the same phone number on every page of the site.

2. Add LocalBusiness schema with your specific trade type

Schema markup is a chunk of JSON that lives in your site's code and tells search engines "here's exactly what kind of business this is, where we are, what we do, and when we're open." Schema.org has specific types for trades: Plumber, Electrician, HVACBusiness, RoofingContractor, GeneralContractor. Using the right type instead of generic LocalBusiness is one of the cheapest signals you can send to AI crawlers about who you are. We've seen it pull contractors into AI answers for queries they previously had no presence in.

Bad: No schema at all, or a generic "Organization" block copied from a template.
Good: A Plumber (or HVACBusiness, etc.) block with address, geo coordinates, areaServed for every town you cover, and openingHoursSpecification.

3. Make your services explicit — one page per service

A common mistake we see: one "Services" page that lists fifteen things in a bullet list. That page can't rank for anything specific, and AI engines can't cite it as the source for a question about a specific service. Break it apart. If you do water heater installs, drain cleaning, sewer line repair, and gas line work, that's four pages. Each one should be 400-800 words, mention the towns you serve, answer the questions a customer would actually ask, and include a clear next step. This is tedious. It is also how you show up when someone searches "sewer line repair near Paducah" instead of just "plumber."

Bad: A single /services page with a bullet list of 15 items and no detail.
Good: /services/water-heater-installation, /services/drain-cleaning, etc. — each with FAQs, pricing context, and the service area named explicitly.

4. Get reviews on Google, then surface them with Review schema

Reviews do two things. First, they convince a human to call you instead of the next listing. Second, they give AI engines a signal that other humans have vouched for you. A trade business with 50+ Google reviews averaging 4.7 stars will get cited by ChatGPT and Perplexity in answers where a competitor with 6 reviews won't. Build a simple after-job text or email asking for a Google review with a direct link. Then add aggregateRating schema to your homepage so search engines see the number too. Don't fake reviews. Beyond being against Google's terms, AI engines are starting to flag suspicious review patterns.

Bad: 6 reviews from 2021, no system to ask for new ones.
Good: An automated text after each completed job with a one-tap review link, plus AggregateRating schema reflecting the real number.

5. Add an FAQ section answering real customer questions

AI engines love FAQs because they're structured, self-contained, and easy to quote. Think about the questions your office actually fields: How much does a water heater replacement cost in 2026? Do you charge for estimates? Do you work weekends? How long does a roof replacement take? Is there a warranty? Write honest, specific answers — give a real price range, not "it depends." Wrap the section in FAQPage schema so it's machine-readable. This is often the single biggest unlock for getting cited in AI answers, because you're literally handing the model question-and-answer pairs.

Bad: No FAQ, or a FAQ that says "Call us for a quote" six times.
Good: 8-12 real questions with real answers including price ranges ("$1,400-$2,800 installed"), wrapped in FAQPage JSON-LD.

6. Create an llms.txt file to guide AI crawlers

This is new and most contractors have never heard of it. An llms.txt file sits at the root of your site (citeddigital.com/llms.txt) and acts like a sitemap specifically for large language models. It tells AI crawlers: here's who we are, here are the most important pages, here's how to describe us. Adoption isn't universal yet, but Anthropic, Perplexity, and several others have signaled support. It costs nothing to add, and the contractors who do it now will benefit when adoption broadens. We have a free builder for this at /resources/llms-txt-builder.

Bad: No llms.txt, no clear signal to AI crawlers about what your business actually does.
Good: A short llms.txt at the root with a one-line business description, service area, and links to the 5-6 most important pages.

7. Build authority through local citations and backlinks

Authority for a small trade business doesn't come from random blog comments. It comes from being listed in places that already have local credibility: your local Chamber of Commerce, the BBB, industry associations (PHCC, NECA, ABC), the Murray Ledger or your local paper, regional supplier directories. Every one of these creates a citation — a NAP mention — and most include a backlink. AI engines weight these heavily because they're hard to fake. Spend an afternoon listing every place your business could legitimately appear, then work through the list one a week. This is slow, unglamorous, and one of the most durable things you can do for your visibility.

Bad: Listed nowhere except Google and Facebook.
Good: Chamber listing, BBB profile, industry association directory, two or three regional supply house directories, and a quote in the local paper from when you sponsored a Little League team.

Schema example for a plumber

Here's a working example of LocalBusiness schema for a fictional plumber in Murray, KY. Drop this inside a <script type="application/ld+json"> tag in the <head> of your homepage, update the details, and validate with Google's Rich Results Test. The "@type" is the specific one that matters — change Plumber to Electrician, HVACBusiness, RoofingContractor, or GeneralContractor as needed.

{
  "@context": "https://schema.org",
  "@type": "Plumber",
  "name": "Lakeway Plumbing Co.",
  "image": "https://lakewayplumbing.com/storefront.jpg",
  "@id": "https://lakewayplumbing.com",
  "url": "https://lakewayplumbing.com",
  "telephone": "+1-270-555-0148",
  "priceRange": "$$",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "412 N 4th St",
    "addressLocality": "Murray",
    "addressRegion": "KY",
    "postalCode": "42071",
    "addressCountry": "US"
  },
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 36.6103,
    "longitude": -88.3148
  },
  "areaServed": ["Murray, KY", "Calloway County, KY", "Marshall County, KY", "Paris, TN"],
  "openingHoursSpecification": [{
    "@type": "OpeningHoursSpecification",
    "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
    "opens": "07:30",
    "closes": "17:30"
  }],
  "sameAs": [
    "https://www.facebook.com/lakewayplumbing",
    "https://www.google.com/maps/place/lakewayplumbing"
  ]
}

One detail people miss: areaServed can be a list of every town you actually work in. That matters for queries like "plumber in Paris, TN" or "HVAC in Marshall County" — the model uses this field to decide whether you're relevant.

30-day starter checklist

If you do nothing else, do these twelve things over the next four weeks. Most are a 30-minute task. A few will take a Saturday. You don't need an agency for any of them.

That's it. Twelve items, four weeks, no ad spend. Whether you do this yourself or hire someone to help, the work is the same. The contractors who finish the list almost always see new call volume by week six — usually from queries they didn't even know they were missing.

Want help executing this?

Run a free AEO score on your site, or book a 30-minute call with a real person in Murray, KY.

Free AEO Score →Book a Call