Google Engineer Hammered over CSS Spam Comments


Regular readers of Google engineer Matt Cutts' blog will know that he has his comments on pre moderation. This means that if a lot of people reply before he accepts those comments, all you really have is comments, rather than discussion. Still, you'd think that when he drops some idiot site right in the firing line over some telltale signs of deceptive spamming he might actually answer the almost universal question everyone is asking. At the time of writing, there are 48 comments, of which about 85% are on the theme of "hey! what about legitimate reasons to hide text with css?" with no word from Google.

There are many stupid reasons to use CSS to deceive users, but there are also many legitimate reasons. Some of those might be:

  • To work around CMS issues, just as we do here at TW
  • To provide screen readers with links that normally sighted visitors simply don't need to see.
  • To Achieve asthetically pleasing complex CSS design
  • For DHTML bells and whistles

If Google are stupid enough to try and catch spammers by looking for display: none; in CSS files and embedded in HTML (which, it has to be pointed out, Matt did not say) then they'd dump a whole boatload of good sites.

Some might say that GOOG are no stranger to throwing the baby out with the bathwater, and that collateral damage is to be expected with algo tweaks, but in this case, i think there would be a lot more sites trashed than they may expect....


screen readers

display: none is an accessibility thing.

view source on my site, yep, there's an invisible link, SKIP NAVIGATION for users with limited / no vision.

I hope no one outs me! :P

One more reason for display: none

Google's recently purchased URCHIN uses this very same technique to hide form data gathered by a javascript to be passed to their server:

I would assume Google knows there are legitimate reasons but my experience in working for large companies was always that the left hand was oblivious of the right hands actions.


(...) display:none"} {h1}blah{/h1} {h1}blah{/h1} {h1}blah{/h1} {h1}blah{/h1} (...) is NOT one of these legit reasons. Hope you agree.

don't think any of us is

don't think any of us is worried about sites with

(...) display:none"} {h1}stuffed kw's{/h1}

getting banned. I think the fear is that Google will gobble CSS and penalize for for display:none, hidden, etc etc.

SEO mistakes Google don’t

SEO mistakes Google don’t mind telling you about – they don’t want to give anyone ideas.

I read the recommendation as more of plea. Too many good reasons for using display:none like alternate navigation but the example Matt gave was amusing :)


A lot of my site visitors assumed that this was an instance of "have a logo, and use CSS to display text instead of the logo as a fallback". That wasn't what was happening. It was straight out using CSS to hide text, and it was clearly spam.

If you're straight-out using CSS to hide text, don't be surprised if that is called spam. I'm not saying that mouseovers or DHTML text or have-a-logo-but-also-have-text is spam; I answered that last one at a conference when I said "imagine how it would look to a visitor, a competitor, or someone checking out a spam report. If you show your company's name and it's Expo Markers instead of an Expo Markers logo, you should be fine. If the text you decide to show is 'Expo Markers cheap online discount buy online Expo Markers sale ...' then I would be more cautious, because that can look bad."

Anyway, I didn't mean to dodge that question, because I wasn't addressing that question in the post; I was just showing some doofy comments that someone left on their page. But I hope that previous paragraph helps with the question too.


P.S. Hmm. Nick, have I linkbaited you? ;)

msn down to pr2

Do you seen this? is down to PR 2!


How do you tell

How do you tell the difference, Matt? Are these just manual reviews from spam reports? IMO the concern is that Google will handle this CSS issue in the same manner as 302s and supplemental pages that no longer exsist.

I have already seen one of my competitors removed from the serps for spamming using that technique, but I wonder what the extent of the collateral damage will be.

Passing a hand review is one

Passing a hand review is one thing, but clearly the technique is being used in many places for legitimate reasons. The question is are you automatically tossing the "baby out with the bathwater" when you encouter it?


that's our question, and we politely demand an answer! Does Google automically penalize hiding things via CSS?


My guess was that the thing is that they had indexed both the and as two separate pages with different pageranks. MSN may have 301'd one version to the other and it just didn't catch before this pagerank update.

However, I still don't see how either would be a 2. I'm sure enough people link to each version to warrant high PR on both versions of the site.

If it was anyone else I'd say it was just a technical thing. The fact it is MSN makes it more interesting I guess.

We're not that concerned

We're not that concerned with manual reviews because Google does not have the manpower to really police the web by hand. Google's way has normally been to make algorithmic changes to detect spam.

So without dodging the questions, would you please answer?

"Does the Google PR/trustrank/spam algorithm currently or will it in the near future flag or penalize sites with CSS values such as:
Visibility: none
Visibility: hidden
or negative absolute positioning?"

I need to know how to format my spam sites so we (adsense + me) can continue to profit together.


We can flag text that appears to be hidden using CSS at Google. To date we have not algorithmically removed sites for doing that. We try hard to avoid throwing babies out with bathwater.

Excellent, thank you very

Excellent, thank you very much for clear and concise answer.

I'd like to second that.

I'd like to second that. Good stuff, and thanks.

Throwing the babies out the window

We try hard to avoid throwing babies out with bathwater.

According to the numerous emails and forum posts I'm getting, you're throwing babies left and right it seems. In fact, it seems like it's raining babies.

dump security alerts

then they'd dump a whole boatload of good sites.

Just check out the usage on Microsoft Security Bulletins. And at MSDN.
I suggest that the proper thing to do is ignore hidden text, because it is, ummm.... hidden.

Re: dump security alerts

"I suggest that the proper thing to do is ignore hidden text, because it is, ummm.... hidden."

The problem with this approach is that you risk a search returns a spam site, with hidden text, on top of the serps. True, surfer Joe wouldn´t see the hidden text, but wouldn´t be happy to visit a bla..bla..bla spam site either.

buy-vi*gra-cheap-dicount-fligts-student-loan-consolidation.html :-)


I don't want to put words in anyones mouth or change the meaning of their post, but it seems to me that the key word in plumsauce's statement;

"I suggest that the proper thing to do is ignore hidden text, because it is, ummm.... hidden."

Is "ignore"...

If the hidden text were to be ignored in the ranking algo (much like meta keyword tags) and the word were to get out that this was in fact the case, I think you would see this kind of "spam" dramatically reduced... and no babies would have to be thrown out. (don't you know they cry a lot when that happens)


I think that's the best bet. I've been confused a few times after clicking on SERPs where pages didn't have the search term anywhere. Couldn't figure out why the pages were returned, seemed not to relate at all and didn't do me much good.

Then, of course, not being the typical user who would have immediately hit the back button and muttered "Google sucks," I looked around and found the search term in the CSS'd menus. So the pages were kind of relevant as they did have links pointing to a relevant page, but indexing hidden text muddied the waters and made for a bad user experience.

And Matt, that's from a user's point of view.

You Can't Always Ignore It

How about if I design a page in which hovering over some element causes a couple of paragraphs that had been hidden to appear? Should that content be ignored just because a design choice was made to make the page both neat and rich in useful content?

> when your network gets

> when your network gets dinked, come back and tell me you aint that bothered :-)

What spammers put all their eggs in one basket (or all teir spam on one network) anymore? No, you setup 5-10 totally idependant networks so you can afford to loose any single one at any given time :)

display: none is an accessibility thing. ACESSIBILITY ISSUE

Funny thing is that you talk about screen readers, yes use display: none;
Many screen readers ignore hidden content.
Much more accessible way to hide content that is not intended for visual UAs is to use position: absolute;

position: absolute;
left: -1000%;


forgot to mention. Skip links are useful not only for blind users. Personally I have a disability and it's quite hard for me to use scrollbars and such. I find skip links on my-own-website very useful.

Mat: removed link

thread closing

perhaps we should close threads with no new posts after three months...

I got caught out reading this old news.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.