Frame Kryptonite

Frames: SEO KryptoniteWhat are Frames? HTML Frames define one particular window or frame within a frameset. The <frame> tag allow the site creators to add documents or an independent window inside an normal site page.

Difference between Frames and iFrames? iFrames are simply Inline Frames, and all the formatting is contained within the iFrame tag. Normal HTML Frames are located within a Frameset, and the formatting is all placed within the Frameset tag.

What’s the problem with Frames? A lot of debate has gone on within the SEO community about the readability of Frames. Many claim that Frames are fully supported by Google- with no negative effects from their use. However, Google’s Webmaster Central Blog states the following:

“Google supports frames and iframes to the extent that it can. Frames can cause problems for search engines because they don’t correspond to the conceptual model of the web. In this model, one page displays only one URL. Pages that use frames or iframes display several URLs (one for each frame) within a single page. Google tries to associate framed content with the page containing the frames, but we don’t guarantee that we will.

If you’re concerned with how your site appears in the Google search results, please read Search Engines and Frames This document describes the use of the “NoFrames” tag to provide alternate content. If you use wording such as “This site requires the use of frames,” or “Upgrade your browser,” instead of providing alternate content on your site, then you’ll exclude both search engines and individuals who’ve disabled frames on their browsers. For example, audio web browsers, such as those used in automobiles and by the visually impaired, typically do not support frames.”

Although Google does their best to support Frames and iFrames, clearly the expectation should be that there will be problems.

Code Examples

Below is an example of an HTML Frame:

<frameset cols=”25%,50%,25%”>
<frame src=”independent-window.htm” />
<frame src=”separate-document.htm” />
<frame src=”another-for-good-measure.htm” />
</frameset>

Below is an example of an iFrame:

<iframe src=”window-not-in-a-frameset.asp” width=”100%” height=”300″>
<p>Your browser does not support iframes.</p>
</iframe>

What is an SEO to Do?

As mentioned in Google’s blog, the use of the NOFRAMES tag will greatly help non-frame users and search engines to know the content you are referring to in the frame.

For example:

<frameset cols=”25%,50%,25%”>
<frame src=”independent-window.htm” />
<frame src=”separate-document.htm” />
<frame src=”another-for-good-measure.htm” />
<noframes>
<p>The frameset contains:</p>
<ul>
<li>As much of the content in the frame that I can get in here, so search engines can read it.
<li>Also, it helps visitors in older browsers.
</ul>
</noframes>
</frameset>

Instead of putting phrases, such as, ‘Your browser does not support iframes.’ included actual content so users and search engines can more easily read it.

Helpful resources

W3.org intro to Frames

W3Schools.com- HTML iframe tag

Search Engines and Frames– Search Engine Watch

Feedback: What are some good and bad uses you’ve seen of Frames? What resources have you found for using Frames effectively for SEO?