We’re often asked if a Flash site can be indexed by search engines. This is one of those seemingly simple questions with a fairly complicated answer. The fact of the matter is that yes, Flash content can be made available to search engines; however, to do it properly requires some extra work.
Last July, Adobe announced that they are working with search engines to make Flash content natively searchable. They have provided technology to allow search engines to read content within SWF files, understand how it is organized on the screen, and follow links to additional screens contained within the file. This player allows search engine companies to write software that can read and crawl through Flash content much like it can with HTML.
It will likely be a while before search engines are able to fully understand content within a complex Flash site and it may be that Flash content will never rank as highly as similar content presented in HTML format. Fortunately, there is another way to expose the content used in your Flash files to search engines.
Progressive enhancement is a long standing approach to web development in which basic information is provided and then enhanced within the capabilities of the browser. The use of Cascading Style Sheets (CSS) to provide layout for HTML pages is perhaps the most common example of progressive enhancement on the web.
When applying this concept to Flash content, the strategy is to provide HTML content as a base-line and use JavaScript to replace that content with a SWF movie capable of rendering it. Using this technique, you can provide all the content displayed by your Flash movie to search engines and other non-flash enabled browsers as standards-based, semantic HTML. Visitors with Flash enabled will not see this HTML content, instead they are shown the richer Flash version.
SWFObject greatly simplifies this process for developers. It will handle the Flash Player detection as well as overwriting a specific div within your page with the appropriate Flash embed tag.
Progressive enhancement is commonly used to improve the display of media content on an HTML page. An example of this is the map for the Museum of Science and Industry. The HTML on this page includes four images along with alternate text and titles which are indexed by search engines. Users with Flash see a single floor of the museum at a time with easy-to-use navigation and helpful overlays of additional information.
The MSI map. HTML only (left) and Flash enhanced (right)
This technique can also be used to provide an overview of a large, media rich flash site such as NVIDIA Speak Visual. Here, basic information about the site is provided within the HTML giving that information higher relevance within search engines than if it were only included as keywords and other meta-data.
NVIDIA Speak Visual Homepage. HTML only (left) and Flash enhanced (right)
Great explanation. If someone wants to take a look at working examples/tutorials of this they can check out Lee Felarca's post on the subject at: http://www.zeropointnine.com/blog/an-seo-implementation-f... or a set of videos FI posted on their think swedish blog ( know moved to kontain) that have a very simple aproach using jquery selectors to get the content http://www.kontain.com/fi/#entries/entry/920 enjoi
here is just another site using progressive enhancement: http://www.f-o-a.net/ and here is tutorial : http://www.gotoandlearn.com/play?id=107
I’m loving this website and all of your work. Just wanted to say this is a great article. It’s good to know people have similar standards and methods to the work we are producing. We took a similar approach when building http://sugarsnap.tv it a simplified version but similar school of thought.
Google's indexing of SWF files is still very poor as most SEO experts would agree with. Presenting alternative html content to search engines with SWFObject and using SWFAddress are the best ways to have indexable content on Google at the same time as presenting visitors with the flash version of the website. Our new flash site http://www.sumo.com.au - is behind a ASP.NET backend with a CMS that generates the XML that both the html version and the flash version uses as text content. There are alternative html pages for every page of the website - with each of these, using SWFObject the flash file is embedded at the appropriate anchor point of the flash file - so if somebody reaches the site via a search engine - the flash file will automatically load at the right spot.
Hello. Thank you for this great info! Keep up the good job!
Super-Duper site! I am loving it!! Will come back again - taking your feeds too now, Thanks.