Every finding below was verified by hand on August 14, 2026: live in a browser, in your sitemap, and in Semrush search data. Nothing here is a guess.
Semrush shows the entire domain ranking for 20 keywords, worth about $426 a month in equivalent ad spend. The only first-page rankings are people searching your name. Everyone searching for the service you sell finds someone else.
| What buyers actually search | Searches / month | Google Ads cost per click | Where you rank |
|---|---|---|---|
| hood cleaning near me | 1,900 | $5.95 | Not in the top 100 |
| commercial hood cleaning | 1,300 | $6.83 | Not in the top 100 |
| kitchen exhaust cleaning | 1,000 | $5.79 | Not in the top 100 |
| restaurant hood cleaning near me | 590 | $5.84 | Not in the top 100 |
| hood cleaning portland | 90 to 110 | $7.13 | Position 50 |
| nfpa 96 hood cleaning | 110 | $4.36 | Not in the top 100 |
| oregon hood cleaning (your name) | 110 | $4.08 | Position 1 |
Source: Semrush US database, pulled August 14, 2026. Zero paid keywords: you are not running search ads either, in a category where a click costs $6 because a customer is worth thousands.
Your sitemap contains exactly five URLs: home, about, services, service areas, contact. The Service Areas page for a footprint covering Oregon, Washington, Western Idaho, and Northern California is a single paragraph. There is no Portland page, no Seattle page, no Eugene page, no Boise page. Google cannot rank pages that do not exist.
The one button that gets full color treatment in your navigation, with four credit card icons under it, is "Pay Your Invoice." New customers get text links. The site's strongest call to action serves the one visitor who needs no convincing.
The Schedule Service button opens freedommerchants.com in a new tab: a third-party invoice payment page. A restaurant owner trying to book a cleaning lands on a screen asking them to pay an invoice they do not have. That is a booked job lost at the exact moment of highest intent.
Four fields: name, phone, email, message. Nothing asks facility type, number of hoods, number of locations, or city. Every inquiry needs a callback just to learn what the job is, which slows your quote and gives faster competitors the win.
Not one customer quote, star rating, or Google review appears on any of the five pages. For a company with 5,400 serviced locations and household-name clients, this is the single cheapest fix on this list. Even the client logo wall undercuts itself: it shows the Taco Bell logo retired in 2016 and the Burger King logo replaced in 2021, which quietly tells a visitor the site has not been touched in years.
The site shows only a P.O. Box. Your Yelp listing shows 8059 State St in Salem. A YellowPages listing puts you in Lincoln City. Your structured data contains no LocalBusiness schema at all, only a generic Organization tag. Inconsistent addresses and missing local schema are two of the strongest signals Google uses to decide who shows up in the map pack, and both are working against you.
Hood cleaning is bought on compliance: how often NFPA 96 requires cleaning, what the fire marshal wants to see, what insurance asks for after a fire. Your site never answers any of it. There is no blog, no FAQ, no service detail pages. These questions are exactly what operators now ask Google and AI assistants, and every answer currently leads to a competitor.
Most companies this size have a weak story. Yours is the opposite: the story is excellent and the website just never tells it.
5,400+ locations serviced, 60,000+ systems cleaned, four states. Nobody local can match this claim.
IKECA-certified technicians, ORLA allied member, BBB A+ rating, licensed, bonded, insured since 2007.
Taco Bell, Marriott, Best Western, Burger King, Denny's, IHOP, McDonald's, KFC. Proof most competitors would kill for.
Founded by a former multi-unit restaurant owner and executive chef. That is a trust angle no franchise can copy.
Genuine before and after duct photos already sit in your media library. They are barely used.
Viewport, sitemap, robots, analytics, and a text-us widget all exist. This is a content and conversion problem, not a rebuild-from-rubble problem.
We rebuilt it: a new homepage plus a dedicated page for every service you offer, using the photos and the story you already own. Then we wrote the plan to get it found.
View the Rebuilt Site Read the Game Plan