Brad Holmes web developer, designer and digital strategist.

Dad, husband and dog owner. Most days I’m trying to create fast, search-friendly websites that balance UX, Core Web Vitals, and digital strategy from my studio in Kettering, UK.

If you’re here, you either found something I built on Google or you’re just being nosey. Either way, this is me, the work, the thinking, and the bits in between.

Brought to you by Brad Holmes

seo metrics red flag

The Silent Red Flag: When Metrics Get Boring

Brad Holmes By Brad Holmes
11 min read

Your organic traffic has been flat for six months.

Not dropping. Not climbing. Just… sitting there. Month after month, the same line on the graph.

You’re tempted to ignore it because technically, nothing’s wrong. You’re not bleeding traffic. Conversion rate is stable. Bounce rate is fine. Everything looks normal in the spreadsheet.

That flatness? It’s not normal. It’s the loudest warning sign nobody listens to.

Why Flat Traffic Is Actually a Red Flag

Most people watch for crashes. A sudden 30% drop gets attention—you panic, you audit, you fix.

But flat traffic that should be growing? That’s a slow problem disguised as stability.

Here’s what flat actually means: your site isn’t earning new visibility. Your content isn’t picking up additional ranks. Your domain authority isn’t compounding. You’re not winning in search—you’re just holding your position against sites that are trying.

And holding never lasts.

The moment competitors start moving, or Google shuffles results, or someone rebuilds with proper SEO, your “stable” traffic evaporates. You didn’t realize you were on a sinking ship because the water rose so slowly you didn’t notice.


Why It’s Hard to Spot (And Why That’s the Point)

Flat traffic is invisible because it feels normal.

Seasonality masks it. Summer dips, January spikes—you convince yourself the pattern is natural. You don’t notice that the overall floor has stopped rising.

Comparison drift. You compare this month to last month (same), so you assume nothing’s changed. You stopped comparing to 18 months ago.

Vanity metric distraction. Your blog got 50,000 impressions in Google Search Console! Awesome, right? Except impressions mean nothing if clicks aren’t growing. You’re showing up more, but people still aren’t clicking through.

The algorithm excuse. “Google changed the algorithm” becomes the default explanation for any stall. Sometimes true. Usually incomplete.

Lead flow is steady. If your form submissions are consistent and your sales team isn’t complaining, you think everything’s fine. But steady isn’t the same as growing. You’re not capturing the new demand entering search—you’re just maintaining share of the old demand.

The real problem: flat traffic doesn’t hurt. It doesn’t trigger an emergency. So you don’t investigate. And that’s exactly when you should be most suspicious.


What’s Actually Happening Underneath

When traffic plateaus while you’re actively publishing content and doing the work, one of these three things is occurring:

1. Your Content Isn’t Ranking for New Keywords

You’re writing. You’re publishing. But you’re not moving the needle on search visibility.

This happens when:

  • Your content is competing in an already-saturated space (someone ranked there three years ago, they’re still there)
  • You’re writing for intent you can’t own (too authoritative, too established competitors)
  • Your content is good but not better than what already ranks (the bar keeps rising)
  • You’re not interlinking to the new content from high-authority pages, so it never gets crawl attention or ranking strength

The symptom: You look at Search Console. You have 30 keywords in top 50. Flat. No new keywords entering top 50. No movement up.

That’s the flag. Not “no traffic.” But “no new visibility.”

2. Your Existing Rankings Are Decaying

The content that does rank? It’s slowly losing position.

Not dramatically. Two positions per quarter. Not enough to notice in a month. But compounded over six months, your top 20 keywords have drifted to top 30. Your top 50 have drifted to top 100.

Why this happens:

  • Your competitors are updating their content (yours is stale)
  • You haven’t refreshed your core pages in 18+ months
  • Your internal link structure didn’t evolve with your site
  • The SERP is getting harder (more featured snippets, AI Overviews, People Also Ask boxes taking real estate)

The symptom: Average position in GSC is creeping up (higher numbers = lower rank). Traffic is flat despite that slow decay because… you’re not noticing until decay is acute.

3. You’re Capturing Share of Flat Demand

Your niche isn’t growing.

Maybe it’s saturated. Maybe seasonality is stronger than you thought. Maybe the market itself is stalling (economic conditions, platform shifts, competitor consolidation).

In this case, flat traffic might be correct. But you won’t know unless you audit the other possibilities first.

The symptom: Keyword search volume is flat or declining. New competitors aren’t taking share—the whole market is just smaller. If this is your situation, the fix is different.


How to Spot It (Before It Becomes a Crisis)

Here’s the diagnostic sequence:

Month 1: Check Your Search Visibility Fundamentals

In Google Search Console:

  • Pull your top 50 keywords by impressions for the last 6 months
  • Sort by average position
  • Is position trending up (higher number = worse)? That’s decay
  • Are new keywords entering top 50? If not, you’re not ranking for anything new

Compare to 6 months ago:

  • If your top 50 is the same, but positions are 2-5 spots higher (worse), you’re decaying
  • If your top 50 has completely changed, something major happened (algorithm, audit, redesign)
  • If it’s identical and positions are stable, you’re truly flat—not growing, not falling

Check click-through rate:

  • Is CTR dropping even though impressions are stable?
  • That means you’re showing up, but people are less likely to click
  • Either your title tags are weak, or you’re ranking for less relevant queries
  • Both are fixable, both are flags

Month 2: Audit Your Core Commercial Content

Identify your 10-15 most important pages:

  • Product/service pages
  • High-traffic blog posts
  • Conversion-critical pages

For each, ask:

  • When was this last updated? (If over 12 months, flag it)
  • Does it still reflect your current offering?
  • Is the content still the best answer to the query? (Check top 3 competitors)
  • Is it properly linked to from other relevant pages? (Check internal links)
  • Is the page structure and UX still compelling? (It might rank but have poor CTR)

The output: A list of 3-5 pages that need refresh. Start here.

Month 3: Check Your Competitive Landscape

Search for your target keywords. For top 3 results, ask:

  • When was this last updated? (You can see publish/update dates)
  • What value do they have that yours doesn’t?
  • Are they longer? More recent? Better structured? More examples?
  • What’s their internal link structure like?

Then:

  • If their content is more recent and deeper, you need to refresh yours
  • If your content is better, why isn’t it ranking? (Link quality? Domain authority? Crawlability?)
  • If you can’t answer, you might have a technical SEO problem

The Red Flag Checklist

Mark yourself if any of these are true:

  • Your top 50 keywords are in the same positions or worse (higher numbers) as 6 months ago
  • Zero new keywords have entered your top 50 in the last 6 months
  • Your click-through rate is declining while impressions are stable
  • Your core commercial pages haven’t been updated in over 12 months
  • You haven’t added internal links to your best-performing content in 6+ months
  • Competitors’ top-ranking content is noticeably more recent or comprehensive than yours
  • You’re publishing regularly but none of it is ranking in top 50 for anything

If you marked 3 or more: your flat traffic isn’t coincidence. Something is actively preventing growth.


What This Actually Means (The Uncomfortable Truth)

Flat traffic in a growing market is a sign that your SEO effort has become maintenance, not growth.

You’re publishing content that maintains current visibility. You’re keeping the lights on. But you’re not earning new real estate in search results.

And without new growth, decay accelerates. Competitors move. Algorithms shift. Your “stable” position becomes harder and harder to hold.

The uncomfortable part: this usually means your strategy wasn’t designed for growth. It was designed for output.

You’re measuring success by “we published two blog posts,” not “we moved 10 keywords higher, earned 3 new top-50 rankings, and built links to core pages.”

That’s a fundamental difference. One feels productive. One actually moves metrics.


The Actions That Actually Work

If you’ve identified flat traffic (and confirmed it’s not market stagnation), here’s the sequence:

Week 1-2: Identify What Should Be Growing

Make a target list:

  • 20-30 keywords you want to rank for (top 20, ideally top 10)
  • These should be commercial intent, high-value, achievable
  • They should be underrepresented in your current top 50

For each, research:

  • Current top 3 ranking pages (what are you up against?)
  • Search volume and trend (is demand growing?)
  • Your current ranking (if you rank) or nearest competitor
  • Gap analysis (what do they have that you don’t?)

This becomes your roadmap.

Week 3-4: Refresh or Build

Option A: Refresh existing content that targets these keywords

  • Update with new data, examples, recent case studies
  • Add internal links from high-authority pages
  • Improve structure and scannability
  • Add missing sections competitors have

Option B: Build new content if you don’t have anything ranking

  • But build better than the current top 3
  • Or target a related keyword with lower competition
  • Then internally link back to it from your best pages

The key: don’t just publish. Publish and reinforce through internal linking.

Week 5-6: Monitor and Iterate

Track in GSC:

  • Did refreshed content move up? (Should see movement in 2-4 weeks)
  • Did new content enter top 50? (Usually takes 3-6 weeks)
  • Is CTR improving? (This matters as much as position)

If movement is slow:

  • Check internal link velocity (how many links to this page?)
  • Check crawlability (is Google able to crawl it?)
  • Check page experience (is it fast, mobile-friendly, readable?)

If movement is strong:

  • Repeat the process with the next batch
  • This is how you go from flat to growing

Ongoing: Build an Early Warning System

So you never hit plateau again.

Monthly GSC audit (15 minutes):

  • Check: Are any top 20 keywords declining position? (Flag anything moving 2+ spots)
  • Check: Are new keywords entering top 50? (Should see 2-5 per month with regular publishing)
  • Check: Is total impressions trending up, flat, or down?

Quarterly content audit (1-2 hours):

  • Pick your top 10 pages by traffic
  • Are they still the most recent/comprehensive on that topic?
  • Have competitors published something newer? (Search the title, see what ranks now)
  • Refresh in bulk once per quarter (pick 2-3 pages that need it most)

Quarterly competitive check (1 hour):

  • Pick 5 of your target keywords
  • Are the ranking sites the same as last quarter?
  • Have new competitors moved in?
  • Have updated content pushed yours lower?

This is boring. This is why most people miss it.

But boring systems catch flags before they become crises.


The Reframe

Flat traffic isn’t a sign that everything’s working. It’s a sign that nothing’s growing.

And in search, growth is the only sustainable position.

The moment you stop growing, the countdown to decline begins. Maybe it takes six months. Maybe a year. But the decay is already baked in.

The sites that stay visible in search aren’t the ones with perfect content. They’re the ones that treat growth as a continuous practice—refreshing winners, replacing stale content, interlinking like their domain authority depends on it (because it does), and staying ruthlessly honest about whether they’re actually earning new visibility or just maintaining old position.

If your traffic has been flat for six months, you know what you need to do.

The question is whether you’ll treat it as a flag worth investigating, or keep assuming it’s normal.

Most people assume. That’s why most sites eventually decline.

Don’t be most people.


Quick Reference: The Boring Metrics That Actually Matter

These aren’t flashy. They don’t impress anyone. But they’re the early warning system:

Monthly:

  • Average position in GSC (up = declining)
  • Number of keywords in top 50 (should stay same or grow)
  • Click-through rate trend (declining is a flag)

Quarterly:

  • New keywords entering top 50 (should see 5-10 per quarter with regular content)
  • Top 10 page freshness (all over 6 months old = flag)
  • Competitive content age (are they fresher than you?)

Annually:

  • Domain authority trend (should go up)
  • Total organic traffic trend (should go up)
  • Revenue from organic (the only metric that actually matters)

Track these quietly. Most of them are invisible to clients. Most of them won’t move fast. But they’ll tell you exactly when something’s about to break—weeks or months before it shows up in the dramatic metrics.

That’s the point. You want to know before it’s a crisis.

Brad Holmes

Brad Holmes

Web developer, designer and digital strategist.

Brad Holmes is a full-stack developer and designer based in the UK with over 20 years’ experience building websites and web apps. He’s worked with agencies, product teams, and clients directly to deliver everything from brand sites to complex systems—always with a focus on UX that makes sense, architecture that scales, and content strategies that actually convert.

Thanks Brad, I found this really helpful
TOP