Ok. A lot of controversy about this…

Some SEO specialists say that SEO and Flash don’t mix, that Google can’t read flash sites, that flash isn’t Google friendly, they instruct clients to avoid flash and only use html for their sites, and so on…

I disagree. FLASH SITES CAN INDEED BE SEO-FRIENDLY!

We now claim that we can create SEO-friendly flash sites. Read on to find out how!

A couple of years ago, Google and Adobe announced that they are working together to make Flash Google-friendly. Since then there hasn’t been any other announcement and there has been no, or little, progress about this.

Before we get into the details of Flash and SEO, lets summarise how Google indexes your site.
Google has to “crawl” your site (you either invite them or they find your through some external link). To do this, they will send the “Google Bot” to visit your site and find what it is about. When the bot visits your site, the server will serve the default page (e.g. index.php or index.html).
What is the bot going to do next? Read the content of the page and store some data about your site in the Google database. If you have internal links (you probably do) the bot is going to follow them and repeat the process, building your website’s sitemap. And here is where all the problems begin if you have a non-SEO-friendly flash site!

If you have an HTML site the bot would read something like this:

<html>
<head>
<title>
Ancient Greek Gods</title>
</head>
<body>
<h1>
Ancient Greek Gods</h1>
The ancient Greek Gods where leaving at mount Olympus. Their king was god <a href=”zeus.html”>Zeus</a> and their queen god <a href=”hera.html”>Hera</a>.
</body>
</html>

So Google now knows that your page is talking about ancient Greek Gods and has also discovered two links. The bot is then going to visit those two links to grab some more information about these pages and eventually about the rest of your website.

If you have a Flash site the bot would read something like that:

<html>
<head>
<title>
Ancient Greek Gods</title>
</head>
<body>
<object classid=»clsid:d27cdb6e-ae6d-11cf-96b8-444553540000″ codebase=»http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0″ width=»791″ height=»239″ align=»middle»><param name=»allowScriptAccess» value=»sameDomain» /> <param name=»movie» value=»ancient_flash.swf» /><param name=»quality» value=»high» /><param name=»bgcolor» value=»#ffffff» /><embed src=»ancient_flash.swf» quality=»high» bgcolor=»#ffffff» width=»791″ height=»239″ align=»left» allowScriptAccess=»sameDomain» type=»application/x-shockwave-flash» pluginspage=»http://www.macromedia.com/go/getflashplayer» />
</object>
</body>
</html>

Ooops! The bot is a little bit confused. The title of the page reads “Ancient Greek Gods”, but the content in the body says nothing else. No readable text, no links, just a flash movie. Maybe the bot will manage to grab some text off the movie, but you should forget about links, headings etc.

The solution

We combined Flash, JavaScript, SWFAddress and PHP in such a way that

  • The users can navigate through your Flash website, as normal
  • The bots can crawl and index your content as it they do with HTML pages
  • Offer readable internal links to help the bots read the whole site

Check the links below to see this in effect  / examples from a client’s site – very nice hotel in Folegandros :)

folegandros island
folegandros hotel
travel to folegandros

The flash interface (and the user experience) stays intact, while the site itself reads the contents of the flash movies and gives it to the bots through the source code of the page.

You will notice that each page has different title, different content and a unique URL. You can also see the internal links in the text (deep linking).

Bonus: this technique produces an automatic mobile-friendly version of the flash site. This way we keep everybody happy!

What is your experience with Flash and SEO? Do you think that it is worth going the  extra mile to produce SEO-friendly flash sites?