Forgot Password?
SEO Certificate


2.3.6 Flash, JavaScript and frames

Look at these words: Flash, JavaScript, frames.

These three are so double–faced. They can make the design of your page look very nice, but quite often, for Search Engines they're as bad as broken links: just make no way to see what's on your site

For the Robot, JavaScript, frames or flash on a website are like direction signs on the roads in the ancient Greek language. They are just hardly possible to read, though Search Engines keep developing.

Traditionally, Google hasn't followed JavaScript, but now it's getting much better at using it for link discovery and can now execute some JavaScript and AJAX. However, other Search Engines may not be very good at it. The same concerns Flash. Although Google can now index text content contained in it, other Search Engines may not.

Maybe one day, bots will have no problems crawling these elements, but today's definitely not that day.

So if you want the Robot to crawl your site well (and you surely do!), you need to make sure these three flash, JavaScript and frames appeal to the Robot. And, if they don't, get rid of them or back–up these "Greek" signs with signs in normal language.

But first, how do you recognize frames, flash and JavaScript?


Frames allow displaying more than one HTML document in the same browser window.
Here's an example:

Example of a website with Frames
Example of a website with Frames

If your browser window's broken into one or more parts, and each one's like a separate web page, which can be scrolled independently, the site most likely uses frames. You can also detect such a website by clicking on different menu items and tabs and navigating through it. If the URL does not change — Bingo! The website you are browsing is built with frames! In the example above you can see that although we are in the "Societies" section, the URL in the address bar has not changed a bit.

There's one more drawback websites with frames have. As you've already learnt, Search Engines typically look for text that describes what each page is about, and for hyperlinks leading to other pages of your website, so you guess right! both of these are missing from a standard frameset document. Hence, if you use frames, Search Engines will fail to properly crawl and index your valuable content.

You can rebuild your site and remove frames completely or at least use the noframes tags. What are these? Noframes tags are special ones that help Search Engines easier crawl your page. I'm sure your webmaster knows this and will add noframes tags easily.


You just can't miss it. This is the graphic animation that's been so trendy recently, and most of the time, it's used without any purpose. (These animations are made with a tool called Macromedia Flash). If flash is used in navigational elements of your site, it does pretty much harm. Most often, web designers use flash to make an intro like this one:–warpspace.html

Why is flash bad? Because if you have some text in it, Search Engines won't recognize it (ok, Google claims to recognize it, but we, SEOs, do not rely on that too much). You can make amazing flash animation, and put a fantastic message in it, and use nice links with good use of keywords... But for Search Engines it will be just a set of images, no keyword–rich content or anchor texts, and absolutely no way for the Robot to know what your site's about.

So... if you have flash embedded in your website's navigation, you've got to think it may do you harm. Discuss it with your webmaster, and maybe you need to either get rid of it or just duplicate your navigation bar without flash and place it somewhere else, for instance in the footer, like here:

Footer links
Footer links


First, check if your site uses JavaScript. Here's how you do it: open it in your web browser and choose View –> Source in the browser menu. Now use the Ctrl+F command to search for "text" like this: <script. There're several ways of how JavaScript sections may look like, but they all have these <script> and </script> tags.

So the <script> tags tell you that your site's using scripts. Again, like with flash, JavaScript can be harmful if it's used in navigational elements, like different menus.

Now, ask your webmaster if JavaScript is used in navigation. If the answer is yes, your website's ranking is at risk. There's no guarantee that the Robot will read the scripts correctly: from my own experience, robots don't crawl 50% of JavaScript. So to avoid trouble, ask the webmaster to eliminate the harmful scripts, or at least include the noscript section. Here's a general example of this kind of section:

<script language="javascript" type="text/javascript">
Some script
Some valuable content for spiders and javascript disabled browsers.

DO IT NOW! Detect JavaScript, flash and frames and make sure they're not causing you trouble.

Removing flash, frames and JavaScript from your website requires special skills. Well, in theory you can do it yourself, if you're familiar with web programming. But to ensure all's done correctly, my advice is: ask your webmaster to do away with these evil things — he'll definitely solve the problems with ease.

For your convenience, I've also included a list of the file types that can be indexed by Google:

  • Adobe Flash (.swf)
  • Adobe Portable Document Format (.pdf)
  • Adobe PostScript (.ps)
  • Autodesk Design Web Format (.dwf)
  • Google Earth (.kml, .kmz)
  • GPS eXchange Format (.gpx)
  • Hancom Hanword (.hwp)
  • HTML (.htm, .html, other file extensions)
  • Microsoft Excel (.xls, .xlsx)
  • Microsoft PowerPoint (.ppt, .pptx)
  • Microsoft Word (.doc, .docx)
  • OpenOffice presentation (.odp)
  • OpenOffice spreadsheet (.ods)
  • OpenOffice text (.odt)
  • Rich Text Format (.rtf, .wri)
  • Scalable Vector Graphics (.svg)
  • TeX/LaTeX (.tex)
  • Text (.txt, .text, other file extensions), including source code in common programming languages:
    • Basic source code (.bas)
    • C/C++ source code (.c, .cc, .cpp, .cxx, .h, .hpp)
    • C# source code (.cs)
    • Java source code (.java)
    • Perl source code (.pl)
    • Python source code (.py)
  • Wireless Markup Language (.wml, .wap)
  • XML (.xml)

Sure enough, these elements should be optimized as well, but let's not run before the hounds.

2.3.7 Remove the Welcome page

I guess you also saw a thing like this: you load a site and all you see is a picture saying something like "Welcome to this cool website." To come to the website, you need to click a link somewhere on the Welcome page.

Honestly, I hate Welcome Pages. Most Internet users hate them. And, the Robot hates them, too! Yes, even though he's a patient guy, welcome pages are getting on his nerves. And what about normal people, huh?

Making a visitor come to a Welcome Page is as weird as what I imagined now: say, you're going to Las Vegas, but before you come there, you have to stay for a day in a tiny place called "Welcome to Las–Vegas City" City, with no alcohol, no women and no casinos — and only then you can go to Las Vegas itself. Who would do that?!?

To cut it short, Welcome Pages only do harm to your website sales and irritate users. So if you have a Welcome Page and there's a way to kill it, don't wait to do that.

DO IT NOW! If you have a Welcome page, and it's possible to remove it — remove it!

2.3.8 Fix broken links

You know what a broken link is and how bad it can be? Well, I'll tell you.

About a month ago, I was driving to Walker River, NV. Just wanted to see the place, as my granddad came from there. I only had a 20–year–old map of the place, and it turned out to be too old: On the way I chose, the bridge was broken quite long ago. Well, I was a bit disappointed and had to take another road.

But what if it weren't me on the broken bridge? The Robot would try to find another way to go. But he's not that determined to visit all your pages. In the case of a broken link, the Robot may simply leave the page not crawled.

And what is actually a broken link?

A broken link is the one having some elements incorrect or missing from the link's HTML code, or a link that leads to a non–existing web page.

Now what you have to do is check your pages for broken links — and fix them.

DO IT NOW! Find and fix broken links on your web pages. Upload the changed pages to your web server.

Here's a free online tool to help you:

Psst! There's one secret I have to disclose at the end of Chapter 2. It tells how to discover all of your website issues in a single click. Too impatient to learn? Then get to the chapter 2.3.12!


Add comment Hide comments

Comments page:
#897 2009-12-30 05:58:11 Paul Watchorn

The validator is a real eye opener!
I ran one of the sites I made with my wysiwyg a few months ago, and it 'passed tentitivly' apparently i need to chnge some things. I tested a site that made with the updated software, and it was very happy. so I ran it on my main business site (that I have made and maintained by a UK firm) and quess what.. 3751 Errors, 1094 warning(s)

I am not having a good day, but it might explain why I don't get much traffic, the site is over 5 years old, and is 'maintained professionally'!

#843 2009-12-14 09:27:57 Tim Inglis

The spry widgets in dreamweaver are handy, but will only ever be useful if the person maintaining the site has dreamweaver as well. Personally, I'd rather use something like JQuery as a library and build my own functions from there.

As far as JavaScript in navigation is concerned, I agree wholeheartedly with Dan. You can use html/css to create semantically correct markup, which the Search Engine can read. Things like drop down menu's can require a tiny bit of JavaScript to make them work properly in Internet Explorer, but this doesn't affect the markup like an entire menu system built with JavaScript does.

As far as images are concerned, I use an image replacement technique which allows me to have both an image and a text link. I simply place the image in either the css element of the html markup, and then indent the text link by about 10,000 pixels, which will never appear on any screen. The added advantage is that screen readers will read the text link, but those who aren't visually impaired still have a "pretty" website to look at.

#808 2009-12-08 04:41:04 Ken Taylor

Thanks for describing what 'frames' are. I've often heard that they're not friendly to the SE's robots.

The flash issue is a tuffy. So many Internet Marketers are using Camtasia. Of course, they don't have to worry about SEO when they have over 10,000 subscribers on their mailing list.

I was hoping to use Camtasia for Mac to do affiliate marketing, do I need to really scrap this idea?

Just to reconfirm about pictures. If I'm using a picture just as a picture, then I should make sure the 'alt tag' has a relevant KW to the picture. I never use pictures as links.

Did the validation on one of my Adsense sites. Got 8 errors and 2 warnings. This is great! Showed me where they were and what I needed to do to fix them.

Whew! I have to set up a special page just for all the links that you are providing here. This Practice guide is providing great resources for making SEO easier. Nice!

#1151 2010-04-10 15:41:40 Nathon Hay

YouTube has recently developed its Closed Caption integration. You can include the text of your video in the video itself. See YouTube for more details.

#713 2009-10-23 03:15:03 Watch Naruto Online

Yeah!avoid to put flash image.but if we still want to put it at our blog just put it at footer not at the top.our website will loading from top to footer.

but here i still need java script.if i am not mistake google adsense provided java script to view the ads at our blog,right?

#353 2009-05-21 14:34:58 Cameron Holt

@Andrew Collins

SpryMenu is javascript based uses unordered list and list items to create the menu and style them with CSS. This is fine for your menu system for SEO as the links are still text.

#307 2009-04-06 10:40:23 Dan Richmond

<b>@Donna Goodman</b>

The only way out I can see is to use a different website editor that gives you access to the HTML code.

<b>@Andrew Collins</b>

They will be considered as frames only if you use the tag somewhere in the code.

Frankly, I'm not familiar with the SpryMenuBar, maybe you should try asking this question on some Dreamweaver related forums.

#289 2009-04-03 16:27:05 Investigator Jobs


Can anyone clarify .... I use dreamweaver cs4 to create pages via templates that have a header, footer, body and 1 rightsidebar.
Would that be considered as frames? (there are no scroll bars for the sidebar)

Also, does anyone know if using the SpryMenuBar (which I beleive is Java) is safe or a no no? I know I answered my own question however, just wondering if some Java is Friendly - such as the SpryMenuBar that comes with Dreamweaver?

Thank you


#259 2009-04-02 15:16:22 Donna Goodman

Hi Dan,
What does one do when you are using a web site editor which has a user friendly front end, and then generates the HTML for you on the back side.

You can't get access to it or change it if it has a problem.

Any Suggestions on this one?


#3022 2012-05-11 12:39:50 Martin Spasskellner

I suggest not to use Html Converter, its good to write your own code, if not, you cant control what happens, its not that difficult. look at, a very useful tool!!

#134 2008-10-20 08:18:44 Dan Richmond


The announced news sounded great, as this will most likely let site owners create dynamic content and increase their conversions without (supposedly) compromising their rankings. On the other hand, this will hardly change much in SERPs (in fact some possibilities for creating RIA already work, but this didn't change the SERPs much.) Those sites that're well optimized without dynamic content shouldn't worry about their rankings.

#131 2008-10-18 19:12:06 Victor Morrill

What are your thoughts on the PR in July of this year by Adobe announcing their work with the search engines regarding advances in recognizing dynamic web content and RIAs.

Comments page: