What actually ranks a contractor (and it is not the blog)
Start with what a homeowner types. They do not search "the ultimate guide to roof ventilation." They search "roof repair Naples" or "AC replacement near me" or "emergency plumber [town]." Those are the searches that end in a phone call. And the page that ranks for them is not a blog post. It is a service page or a city page built to match exactly that intent.
Google sorts pages by what a searcher wants. Someone typing "gutter installation Fort Myers" wants a company that installs gutters in Fort Myers, ready to book. A blog post is the wrong shape for that. It reads like an article, not an offer, so Google ranks the service page instead, every time. This is the single most common way contractors waste content effort: they pour hours into posts that were never the right page type for the money searches.
Here is the hierarchy of what earns a contractor rankings and calls, in order of how much they matter:
- Service pages. One page per real service you offer. "Drain cleaning," "panel upgrades," "tear-off roofing." These carry the highest-intent searches in your trade.
- City and service-area pages. One page per town you actually serve, wired to the services you do there. This is where local demand gets captured, and where most contractors are thinnest.
- A fast, crawlable foundation. A site that loads under 2 seconds so Google and the AI bots can read every one of those pages. Content on a slow, broken site is water on sand.
- Then, and only then, a few real articles. Written to earn links and answer buyer questions, not to fill a posting schedule.
Notice where the blog sits: last, and optional. A market you want to own typically takes 94-plus cluster pages to cover properly, and the overwhelming majority of those are service and city pages, not blog posts. Build those first. The blog is dessert, and you do not order dessert before the meal is on the table.
Why the "post twice a week" advice does not fit your trade
The "you must blog constantly" gospel comes from a real place. It just is not your place. It was written for publishers, SaaS companies, and ecommerce stores, businesses whose customers research for weeks, read a dozen articles, and buy something they can order from a screen. A stream of fresh content genuinely helps them, because their buyer is in a long, reading-heavy funnel.
A contractor's buyer is not. A homeowner with a leaking water heater is not going to read your six-part series on tankless efficiency. They are going to type "water heater repair [town]," scan the top few results, and call one. The funnel is minutes long, not weeks. Volume of posts does almost nothing for that searcher, because they are never going to see the posts. They are looking for a service page and a phone number.
There is also a cost side nobody mentions. Every hour spent writing a thin blog post is an hour not spent building the city page for the next town over, or fixing the service page that is buried on page two. For a contractor with a finite content budget, and every contractor has a finite content budget, a blog-first strategy actively starves the pages that would have ranked. It is not neutral. It is a misallocation.
Two myths worth killing directly:
- "Google rewards sites that publish often." Google rewards pages that best answer a search. Freshness matters for topics that change (this year's code, current pricing), not for the fact that you post every Tuesday. A stale-but-perfect service page beats a fresh-but-thin blog post for a buyer search, always.
- "More pages means more rankings." More right pages, yes. Fifty spun blog posts targeting nothing can actually drag a site down by burying the pages that matter and diluting the site's focus. Quality and page-type beat raw count.
If an agency's pitch leans on a posting calendar, ask them which service and city pages you are missing first. The answer tells you whether they understand contractor search or are running a template built for someone else's business.
The few blog posts actually worth writing
None of this means never write an article. It means write the right handful, on purpose, for reasons that pay off. A blog is a tool, and there are specific jobs it does well for a contractor. Here are the ones worth the hours.
| Post type | What it does | Example |
|---|---|---|
| Buyer question | Answers a real question a homeowner asks before hiring, catches them mid-decision | "How much does a roof replacement cost in [region]?" |
| Cost and comparison | Ranks for research searches and feeds AI answers that name businesses | "Repair vs. replace: when a water heater is done" |
| Local proof | Documents a real project, earns trust and local relevance | "Re-piping a 1970s Cape Coral home: what we found" |
| Link magnet | Genuinely useful reference other sites cite, earns the links that lift the whole site | "[State] permit requirements for [trade], by county" |
See the pattern. Every one of these has a job beyond "we posted something." It answers a question a paying customer actually asks, or it earns a link, or it proves you did the work in a real town. That is content with a purpose, not content on a schedule.
The rule of thumb: if you cannot name the search a post targets or the link it is meant to earn, do not write it. "5 tips for spring HVAC maintenance" fails that test, ten thousand contractors have published it and none of them rank for anything that books a job. "What a bad AC install actually costs you over ten years" passes it, because a homeowner deciding between a cheap bid and yours will search exactly that, and if your article is what they find, you just framed the decision in your favor.
Quantity here is small on purpose. A dozen genuinely useful articles, written once and left to age, will out-earn a hundred thin posts and take a fraction of the effort to maintain. Write them after the service and city pages are done, and treat each one as a considered piece, not a quota.
How AI search changed what content is for
The blog question got more interesting in the last year, because homeowners increasingly do not read ten blue links at all. They ask ChatGPT or Google's AI overview "who's a good plumber in [town]" and take the name the assistant hands back. That shift does not vindicate the old blog-everything advice. It sharpens the case for the right content and buries the wrong kind further.
Here is what AI answers actually pull from. They read structured, factual pages that plainly state what you do, where you do it, and what it costs, and they cite the businesses those pages describe. A clean service page that says "we replace panels in [town], typical range, what's included" is exactly the kind of source an assistant quotes. A vague "10 electrical safety tips" post is not, it names no business, sits in no town, and answers no buying question. The same content that was useless for classic ranking is useless for AI answers too.
Where a blog post does earn its keep in the AI era is the cost-and-comparison article. When a homeowner asks an assistant "how much should a roof cost in [region]," the answer gets assembled from pages that state real ranges plainly. A well-built cost article, grounded in your actual market, is precisely the kind of source that gets pulled into that answer, with your name attached. That is a genuine reason to write one, and a specific kind of post, not a general license to blog.
The deeper mechanics of how AI answers pick and cite contractors are their own subject and their own lane. For the blog question, the takeaway is narrow: AI search rewards clear, factual, buyer-focused pages and ignores filler, which is the same thing classic search always did, only now the penalty for filler is that you are invisible in a channel homeowners are moving toward. Build the real pages clean and they work in both places at once.
Content strategy that fits a contractor's budget
Put it together and a sane content plan for a contractor looks nothing like a publishing calendar. It looks like a build order. You do the highest-return pages first, get them right, and only then add the few articles that earn their place. Here is the sequence that spends a finite budget where it actually returns.
- Fix the foundation. Fast, crawlable, hand-coded, under 2 seconds. Nothing you publish ranks well on a site Google struggles to read, so this comes before a single word of content.
- Build the service pages. One real page per service, written to match the high-intent searches in your trade. These carry the money keywords.
- Build the city and service-area pages. One per town you serve, wired to the services you do there. This is usually where the most untapped demand sits, and where competitors are thinnest.
- Add the handful of real articles. Buyer questions, cost and comparison pieces, local proof, link magnets. A dozen with a purpose, not a hundred on a quota.
- Maintain, do not churn. Update the pages that need it when codes, pricing, or services change. Let the good articles age. Resist the urge to post for the sake of posting.
That order is not arbitrary. It front-loads the pages that book jobs and treats the blog as the optional last layer it is. A contractor who follows it will out-rank a competitor publishing two blog posts a week, because the competitor is filling a calendar while you are covering the searches that pay.
The whole strategy rests on one honest idea: content is an asset you build, not a treadmill you run. A service page you build right ranks for years. A city page you build right captures a town for years. A good cost article gets cited for years. You are not renting attention with a constant output, you are building pages you own on a foundation you control. That is the difference between content that compounds and content that just keeps you busy, and it is the whole reason we work one lane, home-service contractors, and build content around what actually books their trade.
How to tell if your content is helping or just filling space
You can audit your own content situation in an afternoon before you hire anyone. The goal is to find out whether your pages are earning or whether you have been busy in the wrong place. Run this honest checklist.
- Count your service pages. Do you have one real page per service you offer, or is everything crammed onto a single "services" page? If it is one crammed page, you are invisible for most of your money searches, and that is the first fix, not a blog.
- Count your city pages. One per town you actually serve? Most contractors have zero or one. That gap is usually the biggest ranking opportunity on the whole site.
- Look at what your blog posts target. For each post, can you name the search it is meant to rank for or the link it is meant to earn? If the honest answer is "none," that post is filling space, not helping.
- Check your speed. Load the site on your phone off wifi. If it crawls, no amount of content ranks well until the foundation is fixed.
- Search your own money terms. Type your main service plus your town. Are you there? If a thin competitor is ranking above you, look at whether they have the service and city pages you are missing.
If you run that and land on "lots of blog posts, almost no service or city pages," you have the classic contractor content mistake, and the fix is not more posts, it is the right pages built in the right order. If you land on "solid pages, just wondering whether to add a blog," you are in good shape, and the answer is a small handful of purposeful articles, not a calendar.
An audit is how you get this read on your real numbers instead of a guess. We deliver one in 1 to 3 business days: which pages you have, which you are missing, what your speed is, and where the actual ranking opportunity sits in your market. That is a straighter answer to the blog question than any blanket rule, because it is about your site and your town, not someone else's business model.