Hidden text breaks Google’s spam policies. Tabs and accordions don’t

Hidden text breaks Google's spam policies. Tabs and accordions don't

Written by

in

The verdict

Google’s hidden text policy is about intent: content placed solely to manipulate search engines. Accordions, tabs and screen-reader text are named as fine. The hidden content I actually find is accidental, like headings bound to a logo or empty headings from a page builder. That is not spam. It is still a wasted slot, and worth fixing.

An agency site I audited had H1 and H2 tags bound to its logo. They appeared on every page and every post, and they rendered as nothing a visitor could see. By the letter of one of the oldest rules in SEO, that is hidden text.

It was not spam. Nobody put it there to manipulate anything. A theme did it, and nobody had ever looked. The difference between those two things is the whole of Google’s policy, and it is the part most people skip.

What the policy actually says

Google’s spam policies define hidden text and link abuse as “placing content on a page in a way solely to manipulate search engines and not to be easily viewable by human visitors.” The examples are the ones you would expect: white text on a white background, text behind an image, text positioned off-screen with CSS, a font size or opacity of zero.

Then the policy lists what does not violate it: accordion or tabbed content, slideshows and sliders, tooltips, and text that is only accessible to screen readers and is there to improve the experience.

So the test is not whether a visitor can see the text right now. It is why the text is hidden.

Where the line came from

This is one of the oldest lines in search. In February 2006 Google removed bmw.de from its index for JavaScript redirects that showed search engines something different from what visitors saw. Matt Cutts, then running Google’s webspam team, wrote it up on his blog at the time. Strictly that was cloaking rather than hidden text, but it is the same family: a page that tells the crawler one thing and the customer another.

Both still have a manual action of their own. Google’s list of manual actions includes “Hidden text and/or keyword stuffing” and “Cloaking and/or sneaky redirects”.

What I actually find

Eight of the eleven audits in my folder had a heading problem. Two of them involved headings nobody could see, and neither was deliberate.

  • Headings bound to furniture. The agency site above. H1 and H2 on the logo, on every page, invisible to every visitor.
  • Empty headings from a page builder. A chiropractic clinic with seven H1 tags on its home page, several of them empty, plus a run of blank H2s. The builder emits a heading for each section container whether the section has a heading or not.

Neither would get a site a manual action. Both still cost something.

Why fix the accidental kind

Headings are one of the few places a page states what it is about, in a position that carries structural weight. A logo holding the H1 has given that slot away on every page of the site. It is a weak signal, and I would not tell anyone it is why they are invisible. It is a slot you are wasting.

This is common enough to have a number. HTTP Archive’s 2025 Web Almanac found an H1 on 70% of mobile pages but a non-empty one on only 66%, so about one page in twenty-five carries a top-level heading with nothing in it.

The bigger cost falls on people who navigate by heading. In WebAIM’s survey of 1,539 screen reader users, 71.6% said they navigate by headings first on a long page. An invisible H1 bound to a logo is the first thing they meet.

The grey case

The question I get asked most is about the block of copy at the bottom of a category page, collapsed behind “read more”. By the policy, collapsing it is fine. Accordions are named as allowed.

My own test is stricter, and it is a judgement rather than a rule: would you expand it and show it to a customer standing next to you? If the honest answer is no, because it was written to hold keywords rather than to help anyone choose, the accordion is not the problem. The text is. Hiding it does not make it spam, and showing it would not make it useful.

If a drop really did come with a manual action for hidden text, the way back is a reconsideration request, which makes it a different job from a core update. I have set out how to tell which part of Google caused a drop.

The short version

  1. The test is intent. Content placed “solely to manipulate search engines” is the violation.
  2. Tabs, accordions, sliders, tooltips and screen-reader text are named as fine.
  3. Cloaking is the same family. bmw.de was removed from Google’s index for it in 2006.
  4. Most hidden content I find is accidental. Logo-bound headings, empty builder headings.
  5. Accidental is not spam. It still wastes the heading slot and fails screen reader users first.
  6. For collapsed copy, ask whether you would show it to a customer.

If a site should be ranking and it isn’t, that’s the work I do. SEO recovery covers what to do when a drop does turn out to be a policy problem, and an SEO audit is where hidden headings and builder markup turn up.

Headshot of Mehul Dedhia, SEO consultant

Written by Mehul Dedhia

I’ve been doing SEO for about fifteen years. Most of my work isn’t building new websites. It’s figuring out why sites that should rank don’t. Local businesses, ecommerce and Shopify brands, affiliate sites, small brands and enterprise. If a site is stuck or has lost rankings, that’s usually where I come in.

Connect with me on LinkedIn