I've run sites that I've developed through various online SEO checkers over the years and some of them have checked me for my text to html ratio. I remember reading about this once or twice as well. I have to ask if there is any definitive proof of SEO penalties by, say, Google, when you have done your due diligence with alt/title attributes, schema.org, Facebook's Open Graph, etc, or when you are forced into one of those "div within a div within a div" designs where you end up with a LOT of code?

UPDATE I guess I wasn't clear enough in my question. I understand fully that your page should be useful and meaningful to your end user and not Google. When you have marked up your code so that your page has semantic meaning to Google(as you should!), your code ratio just keeps getting bigger and bigger. My question was if there is definitive proof that Google penalizes your page if the code outweighs the content by a certain percentage. Is this true or some sort of SEO urban legend?


3 Answers 3


Assuming the HTML page is of a reasonable size (back in 2006 it was 500kb, now it's likely much more), Google doesn't care about your pages' text-to-code ratio. Focus on creating great content instead, don't worry about your markup from an SEO point of view.

From a user's point of view, having a fast-loading page is great (so take care of unnecessary fluff, when you spot it), and having a page that looks good on a variety of browsers/devices (sometimes it helps to use reasonable HTML) is also a good idea. These things don't directly influence Google's view of your page, but if you're alienating users, then they probably won't recommend your site to others.


Looking at the text-to-code-ratio only is not useful. The absolute amount of usable text has to be taken into account to. As long as there is at least some text left after stripping all the markup out you will not get penalized.

On the other hand: If there is almost no meaningful markup it is hard to tell what a page is about. It could be an almost empty page with just a long footer.

Years ago, when I wrote my first crawler for a network I had massive problems detecting the main topic on some pages: no headlines or too many, some pages had no semantic markup at all or it was spend mostly on repeating blocks. We had to change the templates to get better search results. I guess search engines like Google will run into similar problems, but they cannot change your websites. :)

Another factor is load time: The bigger the page size is the longer it will take to load. So a load-time-to-text-ratio could be used as a related metric.

The more real unique content you deliver to your users and search engines the higher the probability the crawler will come back, because crawlers work with limited resources too, and they prefer pages that are worth their time.


No one appears to have explicitly stated that page load time is a minor algorithmic factor, which is probably the most important SEO consideration in the context of this question.

Just keep your code clean and minimal, and don't over do it with semnatic markup. It isn't used as a ranking factor, and its uptake on the SERPs is currently limited (star ratings, recipes etc).

  • Google does penalize pages which are reeaally too slow... but it does not promote those which are super fast. However, users do like fast pages and tend to return to these... Sep 11, 2013 at 20:18
  • A late comment... Did you know that according to some online text to code ratio checker tools, Google's (google.com) text to code ratio is 0.74 %? Flippa.com which is a well-known domaining platform (Alexa rank 2,924 global) have a text to code ratio around 12%. I am still digging on the subject but for the time being it seems like text to code ratio matters little once you have a functional, fast-working and well-serving website with a fair amount of visitors.
    – honor
    Jul 18, 2015 at 22:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.