Most "how to hire an agency" guides are written by agencies that don't want you to read this one. They'll tell you to "look for experience" and "check references" — useful in 2008, useless now, because every agency has both. The patterns that actually predict whether you'll get burned are smaller, sharper, and showed up in the proposal long before the contract. I run a small agency and I talk to a lot of business owners after they've fired the previous one. The same twelve red flags come up again and again.
The single most reliable red flag is a flat-price quote before the agency has asked anything about your business. Everything else on this list is a variation on the same theme: agencies that sell a packaged product instead of a real outcome. Get the intake right and most of these eliminate themselves.
If you're shopping right now, read this with a proposal open next to you. Each flag has three parts: what to watch for, why it matters (with a real story), and what to do instead. None of these stories name a specific competitor — but the patterns are the same patterns I've seen play out in business owners' inboxes for years.
They quote a flat price before learning anything about your business
You ask for a website or for SEO services. Within an hour you have a polished proposal in your inbox: $4,800 for the site, $1,500/month for SEO. Nobody asked which services produce most of your revenue, which neighborhoods you actually serve, what your last six months of leads looked like, or what "winning" would mean for you in twelve months.
A dentist came to us after paying $12,000 to an agency that "specializes in dental SEO." Their entire intake was a fifteen-minute call about logo colors. Six months later the site looked clean but ranked nowhere — because nobody had asked which procedures were profitable, which insurance plans drove revenue, or which neighborhoods the practice actually served. The agency had built him exactly the same site they'd built for forty other dentists.
Insist on a paid discovery call before any proposal — even $250 to keep the agency honest. A real agency will ask you about revenue mix, customer profile, last six months of lead volume, what's working, what's broken, and where the money actually comes from. If a proposal lands before that conversation, the proposal is for a product, not for your business.
They guarantee a #1 Google ranking
"Guaranteed first-page results in 90 days." "We guarantee a #1 ranking or your money back." This sounds like the agency has skin in the game. It almost never is.
An HVAC contractor signed a $3,000/month contract that guaranteed a #1 ranking on Google. Eight months in, he was ranking #1 for [his business name] HVAC — which his Google Business Profile already ranked for the day before he signed. Total commercial-intent traffic gained: zero. He'd paid $24,000 to win a query nobody was searching except the four people in his office double-checking the work.
Refuse any guarantee tied to a ranking position. Real performance guarantees are tied to outcomes you can measure with money: lead volume, qualified-lead volume, organic-traffic ranges, or refund clauses tied to specific commercial KPIs. If they won't write those into the contract, they're selling you the appearance of accountability.
They won't tell you what platform or tools they'll use until you sign
You ask whether they'll build on WordPress, Webflow, Shopify, custom code, or something else. The answer is some version of "we'll choose the best fit for your project after kickoff." It sounds professional. It usually means one of two things: either they only know one platform and don't want to admit it, or they're going to use whatever's cheapest for their margin.
A law firm signed with an agency that promised "a custom solution." What they got was a $9,000 WordPress site on a free template the agency had already used for forty-seven other firms. The firm couldn't migrate to a different host without rebuilding from scratch — the "custom" parts turned out to be three image swaps and a color change.
Get the platform, theme/template, page builder, and hosting environment named in writing before you sign. If they say "it depends on your needs," ask them to commit to a specific decision tree: "we use Webflow for sites under N pages, WordPress with X stack above that, custom code only when Y." A serious agency has a perspective. An agency that can't tell you what they'll build is selling you a surprise.
Their portfolio is logos but no live URLs you can visit
The pitch deck has a wall of logos. Recognizable brands, sometimes very recognizable. You ask for the URLs. The agency hesitates, then sends two — both pages that have since been redesigned by other agencies.
An agency's pitch deck showed logos for Honda, Marriott, and three Fortune 500 brands. After signing, the actual project lead admitted those were all subcontracted projects from another agency, where the pitching firm had handled "the social media graphics" and a couple of internal microsites. They had never built a website for any of those brands. The owner who'd signed had imagined Marriott-quality work and gotten the agency equivalent of a Tuesday-night freelancer.
Demand at least three live URLs the agency built start-to-finish in the last twelve months, in your size range. Visit them. Run PageSpeed Insights on them. If the URLs are old, broken, or nothing like the work you're hiring for, the portfolio is decorative.
They charge for SEO with no measurable deliverables in writing
The proposal says "ongoing SEO optimization" and lists a monthly retainer. You ask what's actually getting done each month. The answer is some combination of "keyword research," "on-page optimization," and "competitor analysis" — none of which has a unit, a deadline, or a deliverable you can hold them to.
A roofing company paid $2,200/month for "SEO services" for an entire year. When the owner asked for the deliverables list, the agency sent a one-page PDF titled "Optimizations Performed" — bullets about "improved metadata" and "submitted sitemap." No keyword targets in writing, no traffic baselines, no conversion goals. He'd spent $26,400 on activity, not outcomes. Worse: when he hired us to audit the work, we found the agency had submitted his sitemap to Google once and never touched a single page.
Make the agency commit to a monthly deliverables list with units. Examples: "two new optimized pages per month, one technical fix per month, one link-earning effort per month, monthly report tied to GSC impressions and conversions." Vagueness here is the entire game.
The contract auto-renews with no real out-clause if performance flatlines
The contract is twelve months. Buried on page eleven is a clause that auto-renews for another twelve unless you give 90 days' written notice. There's no performance escape hatch, no "if we miss X, you can leave." The agency knows you'll be too busy running your business to track the renewal date.
A restaurant's web design agency contract auto-renewed for a second year before the owner realized the first year had produced four organic visits and one online reservation. Ending the contract required ninety days' written notice, which had passed three weeks earlier. He paid for a second year of nothing because the calendar reminder he'd set was a week off.
Demand a 30-day-notice termination clause with no penalty. Put a performance KPI in the contract — "if X traffic or Y leads aren't reached by month six, we can terminate without notice or penalty." Replace auto-renewal with opt-in renewal: each renewal is a new conversation, in writing.
They use stock content templates and call it custom
The site copy reads fine — but copy and paste a sentence into Google in quotes and the same sentence shows up on six other agency-built sites in your industry. The "custom" content is a template the agency has been recycling.
A chiropractor's "custom" site copy turned up word-for-word on six other chiropractor sites built by the same agency. Google deduplicated all seven sites and the chiropractor lost roughly 60% of his organic traffic over four months. The agency's response when called out: "We can update the copy for an additional $1,800."
Before launch, copy three sentences from your own site into Google in quotation marks. If those sentences appear elsewhere, your "custom" copy isn't custom. Before signing, ask whether the agency uses content templates and how many other clients in your vertical they've used them on. Honest agencies will tell you.
They register the domain or hosting account in their name, not yours
It's "easier this way," they say. They'll handle renewals, billing, technical issues — you don't have to think about any of it. What this actually means: they own your business's most important digital asset, and switching to a different agency means either rebuilding from scratch or paying a "transition fee."
A pest control company tried to switch agencies after two flat years. The original agency had registered the domain in their own name, hosted the site on their account, and held the WordPress admin login. Switching meant either losing the URL completely (and everything ranked under it) or paying a $4,800 "transition fee" to release the assets the company thought they already owned. They paid.
Register the domain yourself, before the agency starts work, with you as the admin contact. Open hosting accounts in your business's name. Give the agency contributor or admin access — never ownership. If they push back, that pushback alone is the answer.
They won't share Search Console or GA4 access on request
You ask for read-only access to your own Search Console and analytics. The agency tells you it's "proprietary methodology" or "not how we structure client access" or "we'll send you a custom report instead." This is one of the cleanest signals on the list.
An accounting firm asked for read-only access to their own Google Search Console six months into an SEO contract. The agency declined, citing "proprietary methodology." When the firm escalated, the agency reluctantly granted access. What they were hiding: zero new ranking keywords, declining impressions month over month, and a manual penalty notice that had arrived in month three and never been mentioned.
The data is yours, not the agency's — both Search Console and GA4 are tied to your property, not theirs. Insist on owner-level access for your business email, regardless of who else has access. Refusal is grounds to terminate. The agencies hiding GSC are usually hiding it because they don't want you to see what's actually there.
Their reporting is screenshots of vanity metrics, not commercial KPIs
The monthly report is twenty pages long. It has charts. The charts show "keyword rankings improved," "social engagement up 14%," and "site speed score: 89." Nowhere in the report: how many leads came from organic, what those leads were worth, or whether revenue moved.
A med spa got a glossy 22-page monthly SEO report. Pages of "keyword rankings improved" charts, "social engagement up 14%," and "site speed score: 89/100." Nowhere in the report: how many leads came from organic traffic. Asked directly, the agency said they couldn't track that — even though the spa's intake form had been firing through Google Tag Manager for two years. The agency just didn't want to show the number, because the number was thirteen leads in twelve months.
The only reporting that matters: organic traffic to revenue-relevant pages, conversion volume from organic, and lead quality. Refuse reports that don't show these in the first three lines. If the agency says they "can't track conversions" on a site that has a contact form, they're either lying or unqualified. Either way, the conversation is over.
They subcontract everything overseas and you never meet the actual team
This is not about overseas talent being bad — it isn't. This is about transparency. You signed with a "boutique California agency" and emailed your project manager in the morning. The replies come at 3 AM Pacific. Slack handles are generic. Every technical question gets answered with "let me check with our team."
A wedding photographer signed with a $4,000/month "boutique agency" based in Los Angeles. Email replies came at 3 AM Pacific time. The "design lead" on her project Slack channel had a generic name and never spoke on calls. Any technical question got "I'll have to check with our team and get back to you." She'd hired a project manager who was outsourcing the entire build to a fourteen-person team in Manila — for a 70% margin. The work was actually fine. What stung was paying boutique-California rates for a process she wasn't told about.
Ask directly, in writing, before signing: "Who specifically will do the work? Where are they based? Will I have direct access to them?" An honest agency tells you the structure. A dishonest agency dodges. The dodge is the answer.
You can't get a phone call with the person actually doing the work
Every interaction routes through an account manager. You ask to talk to the developer fixing your Map Pack issue, the SEO who runs your strategy, the designer building your hero section. The answer: "All questions go through your account manager for efficiency." Translation: the AM is hiding something — usually that the work is being done by a rotating cast of contractors who can't speak to your strategy.
Every meeting at a dental practice's web design agency was with the account manager. When the dentist asked to talk directly to the developer fixing his Map Pack issue, he was told "all questions go through your AM for efficiency." Three months in, he learned the developer had quit two months earlier. The AM had been emailing the dentist's questions to a freelancer in Eastern Europe and translating the answers back. Nobody on the actual team had ever heard the dentist describe the problem in his own voice.
Make direct access to the lead practitioner — designer, developer, or strategist, depending on the work — a condition of signing. Once a month minimum, on a real call, with no AM in between. If the agency can't or won't agree to that, the AM is the agency. Behind that interface is whatever stitched-together team finished the cheapest bid.
The pattern under all twelve
None of these flags is sneaky. They all show up in the proposal, the first call, or the contract — long before the first invoice. What makes them effective is that small business owners are buying agency services in the middle of running an actual business: signing contracts at 9 PM after a fourteen-hour day, comparing four PDFs while two employees are out sick. The patterns are visible. The bandwidth to spot them isn't.
Print this list. Read each red flag with the proposal open next to you. If you see two or more, walk. The agency is selling a packaged product, and the packaged product is the problem.
What a good agency actually looks like
The opposite of every red flag on this list, in five lines:
- The proposal lands after the discovery call, not before — and the discovery call asks about your customers, not your colors.
- The contract names a specific commercial KPI, with consequences in writing if it's missed.
- You own the domain, the hosting, and the data — from day one.
- The reports lead with revenue-adjacent metrics, not vanity ones, and you can audit them in your own GSC.
- You can pick up the phone and talk to the person doing the work.
If you want to compare an agency proposal you're holding right now against this list, send it over — we'll review the contract and tell you which flags are present, free, with no pitch attached. That offer is the test, by the way: serious agencies are happy to review competitors' proposals because honest evaluation is its own marketing.
Considering an agency? We'll review the proposal — free.
Send us the proposal you're considering. We'll mark the red flags from this list and tell you what to negotiate before signing. No pitch. No follow-up emails unless you ask.
Send Us the Proposal →