SEO

Flash & Search Engines : Indexed in a Flash

When it comes to SEO, Flash can be a polarizing topic. Whenever I’m speaking with clients about their SEO initiatives (along with their creative and technical staff), it only takes one mention of flash to suddenly get a mixture of angry, excited, and confused looks.

When you break it down, some brand managers love how engaging flash can be, designers love the boundless creativity it offers, IA directors can do without it, SEO’s cringe at the thought of it, and C-level marketers don’t know who to listen to! But one thing is clear. Flash isn’t going anywhere…as you can see by the massive number of websites that employ flash content.

index flash logo Flash & Search Engines : Indexed in a Flash

I bring a somewhat unique perspective. I started developing with Flash in 1997, and yes, I once developed highly interactive and engaging flash movies that would make most SEO’s go for my jugular. My roots are in interactive development, and flash was a key tool in my arsenal.

Today, I still understand the power of flash when used properly, but I also know the incredible power of SEO. I’m not against the use of flash, but you better believe I want it optimized if it’s going to be used by my clients. I like to think I’ve come a long way. :)

Since I have a broad background in flash development and have developed hundreds of flash movies and applications over the past 12 years, it’s been interesting to delve deeply into flash SEO to see how it has evolved. Although I’ve written previously about using SWFObject to provide crawlable alternative content for flash (along with flash video content), I’ve also been heavily testing and analyzing how the engines index flash (SWF files).

Personally, I’m tired of showing clients the big blank cache of their flash sites in Google! It’s a great visual and is usually a jaw-dropping experience for them, but that simply can’t remain the standard. That’s why I was excited last June when Adobe, Google, and Yahoo announced their partnership.

Improved Flash Indexing, June 2008

index flash partnership Flash & Search Engines : Indexed in a Flash

In June of 2008, Adobe announced that it was working with Google and Yahoo on improving flash indexing. As you can imagine, I was chomping at the bit to test and analyze how the engines were indexing flash, based on this announcement.

Just to clarify, Google was indexing SWF files prior to the partnership, but they weren’t working with Adobe on streamlining and improving the process. I can remember one of my clients a few years ago sending me a link to one of their SWF files in the SERPs, along with one line of text, “What the heck is this?” :) What was presented in the SERPs wasn’t exactly pretty, but it was a start.

My goal since the announcement has been to make some sense out of how the engines index flash, what are some best practices you should follow when publishing flash content, and what are some things to watch out for as you develop more flash content.

After yet another round of testing over the past few weeks, I decided to write this post so I can help lead you down the right path. Unfortunately, it’s not as easy as that last sentence sounds since this is a highly dynamic area of SEO… It has even changed since July and I fully expect it to keep evolving. That said, I’ll provide some findings and guidance below.

First, since I’ve heard every flash pun in the world over the past year, let me get something out of the way:

This post will not be over in a flash, nor will it be a flash in the pan, hopefully your seo life won’t flash by before your eyes, and Flash the superhero won’t be helping you with your projects… OK, enough with the flash puns! :) Let’s jump in.

GOOGLE IS CRAWLING FLASH, FORGET ABOUT SEO, LET’S DEVELOP EVERYTHING IN FLASH, WOOHOO! But wait…

I remember a flash designer commenting on one of my blog posts about flash seo saying, “Your post is now irrelevant! Google is indexing Flash! Let’s all binge on flash.” Not in those exact words of course. I think my first reaction was “hold on a second buddy…” Nothing has been perfected yet, and actually, this was just announced! By the way, I was right. It wasn’t perfected yet. It was a step in the right direction, but there were other factors that impacted how your flash files were being crawled, namely how you publish your flash content.

In addition, all flash content was obviously not being indexed so it would be premature to think you could disregard providing the engines with alternative html content (which has been a standard practice from an SEO standpoint). It would be crazy to think that Google and Yahoo would instantaneously index all flash content on the web, right?

Great News, But There Were Some Problems

At that time (July 08), Google was in fact indexing SWF files, but there were some limitations. For example, Google was not indexing SWF files published using some of the popular JavaScript-based publishing methods. I could clearly see that using standard object and embed tags and SWFObject 2.x using static publishing yielded strong results, but using earlier versions of SWFObject to write out your flash movies (that relied on JavaScript) wasn’t yielding positive results.

And by the way, many developers were using those JavaScript-based methods in order to get around the “Click to Activate” issue from a few years ago (or what flash developers liked to call the “Grey Box of Death”.) So at that time, if you were a flash designer or developer using JavaScript to publish your flash movies, your SWF files were NOT being indexed. Again, this was a work in progress.

More Concerns About Flash Indexing

But, my concerns didn’t stop with JavaScript publishing methods. I started to wonder what type of content within SWF files was being indexed? Was it just static text in flash, imported xml, dynamically loaded SWF files, flv files, text files, ActionScript code, etc? Was Google finding and following links in SWF files? Did SWF files build PageRank? Did links in flash pass PageRank? What about nofollow? Was my code being indexed? What about text that’s broken down into artwork in flash? So on and so forth.

Flash is not a simple application…it’s definitely multifaceted (think code, static text, dynamic text, object oriented code, vectors, photos, video, etc.) Needless to say, I had a lot of questions (like many in the industry).

Let’s Not Take A Step Back As Flash Developers…

There was one part of the announcement that really concerned me. Specifically, that dynamically loaded content would not be associated with the parent flash movie (like txt, xml, etc.) I was concerned because that’s a common way for experienced flash developers to scale their content. In addition, dynamically loaded SWF’s would not be associated with the parent movie.

Excuse me, but I have been using that technique since I started developing with flash! Most flash developers and designers understand that breaking up your flash movies into manageable pieces is critical to keeping file-size down and scalability up.

So based on what I explained above, how would the announcement about indexing flash content impact best practices in flash development? Would developers start loading content into one SWF versus logically breaking their content apart? Would they stop using xml data and flood their parent SWF with text? What about spammers? Could they take advantage of how flash was being indexed? And of course, the goal for SEO is ranking, so what would rank? Would the SWF file rank, the parent webpage, or both?

These were all valid questions and this is why I always believe that testing is critical. At SMX East, there was a session on Flash and SEO. The panel contained software engineers from Google’s indexing team and a Senior Product Manager for Adobe Flash Player. It was a great session and was very informative, but the common theme was “this is a work in progress”. I agree, especially after conducting my own testing.

So What’s The State Of The Flashosphere When It Comes To Crawlability And Indexing?

I’ll echo what I heard at SMX East, we’ve still got a long way to go before this is consistent across flash movies, websites, and engines. My first serious round of testing was last July and August and some things were definitely clear. I could see that Google was indexing flash content published using object and embed tags (also called the “twice cooked” method). I also noticed that SWFObject 2.x using static publishing (which is standards-compliant) was also yielding strong results. But, SWFObject 1.x relying on JavaScript was not being indexed and neither was using external JavaScript to publish your flash content. I also saw that dynamically loaded files were not being associated with the parent movie (as Google stated in their blog post). Yahoo also seemed behind at that point (more on that soon).

As the months went on and Google started supporting other forms of JavaScript-based publishing, I saw more flash content getting indexed, but it was getting hard to tell why certain pieces of flash content were indexed and others still weren’t. My latest round of testing revealed some strange results. I did in fact see that more JavaScript publishing methods were being indexed in Google, but I also analyzed some sites that weren’t having any of their flash content indexed. There was no rhyme or reason why that content was not being indexed. For example, the webpages containing the flash content were indexed, the sites were not new, the publishing methods were supported, etc. but no flash content was indexed. Weird, to say the least. Again, a work in progress, right?

Some Findings, Commentary, and Guidance

So I mentioned earlier that I’ve done quite a bit of testing since July, and I decided to write this post to provide some guidance. I’ll break down some of the key points and findings by major category below. Again, the results provided below are based on my own testing of over 100 flash files across more than three dozen websites. I developed many of the flash movies I tested, so I knew exactly how they were structured, published, etc. Now, you may see different results based on your own sites and flash movies, but I wanted to provide what I found during my own testing.

Yahoo Seems Behind Google in Flash Indexing (and Where’s Microsoft?)

One finding that was clear during my testing was that Yahoo is behind Google when it comes to indexing flash (at least with the sites and flash elements I tested). I can’t tell you why that’s the case, but comparing site to site, and flash element to flash element, Google almost always did a more thorough job. And if you haven’t noticed, Microsoft hasn’t been part of this post. That’s because they weren’t involved in the partnership with Adobe that was announced in July. My hope is that Microsoft (and other engines) will ultimately work with Adobe on crawling flash content. There’s simply too much flash on the web to avoid indexing it! As far as I can tell, Microsoft is not indexing flash content (at least they aren’t showing us anyway…)

Text Content

index flash text Flash & Search Engines : Indexed in a Flash

During my testing, I found text content indexed from both static text fields and dynamic text fields. When using dynamic text fields, I saw text indexed that was set using variables in ActionScript. I did not find text loaded via xml associated with the parent flash movie (more on that below). Ditto for txt files loaded dynamically. I have also seen text content from components indexed (such as descriptions for radio buttons or other UI elements). In addition, text within other SWF files that were loaded on demand was not associated with the parent flash movie. They were indexed and associated with their own flash movie. Again, I believe this will change, as many developers use this technique to ensure their flash movies are scalable.

External Files Loaded Into Flash

Just like Google mentioned in their post from June, I found that they are not associating dynamically loaded files with the parent flash movie. That includes other SWF files, XML files, and TXT files. I have seen xml files indexed separately, though (meaning they are indexed and show up in the SERPs for text content contained in the xml file, but they aren’t associated with the parent movie). In addition, Google is not crawling FLV files, since there is no text contained in an FLV file. Now, you can inject metadata into FLV’s, and that data can be used programmatically in flash, but that’s not being crawled by the engines. With video so hot right now and gaining in popularity, I would expect the engines to figure out better ways to index flash video. Needless to say, I will be keeping a close eye on how this progresses…

Flash Publishing Methods

  • Object and Embed

The “twice cooked” publishing method fared extremely well during my testing. I found this method to yield strong results with regard to indexing. That said, you don’t have a lot of control using standard object and embed tags like you do using a technique like SWFObject (covered below). In addition, embed is not W3C valid and flash now publishes code using a slightly different approach (when you publish a SWF and corresponding html from within flash). That said, I have seen SWF files published with the latest code indexed as well.

  • A Quick Introduction to SWFObject

SWFObject provides a flexible way to publish your flash content, while also providing crawlable alternative html content. You also have a nice amount of control over how you publish your flash content (targeting a minimum player version, setting parameters, passing variables, etc.) There are two ways to publish your flash content using SWFObject, including dynamic and static delivery. I’ll cover how each fared below. The great part about static delivery is that it’s standards-compliant and doesn’t rely on JavaScript to provide your flash movies. Definitely check out my post about using SWFObject 2.x to learn more.

  • SWFObject 1.x (Older version of SWFObject)

During my first round of testing in July, this method was not being indexed by Google. That’s because it relies on JavaScript to publish flash movies. However, Google has since added support for common JavaScript publishing methods including SWFObject 1.x, and I have recently seen SWF files indexed using this method. So, if you have SWF files that were published using 1.x, you should be fine, however, if you are ready to publish new flash content, see SWFObject 2.x below. You won’t be disappointed.

  • SWFObject 2.x (dynamic delivery)

SWFObject 2.x using dynamic delivery uses a similar technique to 1.x (relying on JavaScript to publish flash content.) Again, this method was not yielding positive results during my testing in July, but is now supported by Google. I have recently seen content indexed using 2.x with dynamic delivery. In my opinion, it’s still not the best way to go. Let’s talk about static delivery…

  • SWFObject 2.x (static delivery)

I’m a big fan of this publishing method for several reasons. SWFObject 2.x using static delivery does not rely on JavaScript and is standards-compliant. I saw extremely strong results this summer when testing content published using this method, as well as during my recent testing. By the way, your flash content will be displayed even if JavaScript is turned off (a nice benefit). I highly recommend using this method to publish your flash content.
* And remember, SWFObject (both static and dynamic delivery), enables you to provide alternative crawlable html content.

  • External JavaScript

When the “Click to Activate” issue hit the scene, this was one of the first methods used to overcome the problem. The issue was also commonly referred to as the “Grey Box of Death”. The problem was that visitors had to actually click the flash movie before interacting with it. Needless to say, most flash developers were up in arms. To avoid this issue, you could use an external JavaScript file to write out your object and embed tags and then call the JavaScript function in your webpage to publish your flash content. Although it achieved the desired result, many developers ended up switching to SWFObject to gain more control. Regardless, I have seen poor indexation results when using this method. I would steer clear of using external JavaScript for publishing flash content, if possible. Use SWFObject 2.x using static delivery instead.

  • Straight SWF

During my testing, I came across several flash movies that were loaded in a browser window without embed code. For example, just linking to the SWF file versus a page that embeds the flash content. Although these SWF’s were indexed well, this is definitely not an optimal way to go. Usability-wise, as the user expands their window, your SWF will also expand. If it’s completely vector-based, you’ll be ok. But if it contains images, video, etc. then your flash content might not look so hot, to say the least. In addition, you have no control over your flash content. You can’t detect the flash player version, you can’t pass variables, you can’t set attributes, etc. Again, I highly recommend using SWFObject 2.x using static delivery.

Links

I’ve received a lot of questions about how links are followed from within flash content. This is an important topic for many SEO’s… I definitely have seen links followed within the flash movies I tested, including links in text fields, dynamic text fields, and in ActionScript. Regarding nofollow, Google stated in their June announcement that they will respect nofollow in flash. So, you can use it where possible (for example in dynamic text fields using html). Since links are followed, many people in the industry have wondered how this can be gamed. I have also voiced my concerns about both keyword stuffing and gaming links. Again, flash is a multifaceted tool and there are many ways that black hat developers could try and game the system. In addition, it’s not so easy to enforce… I guess time will tell how many people try and game flash and then how the engines fight back.

PageRank

If SWF files can be crawled and indexed, could they build PageRank? Yes, it seems they can. I have found numerous SWF files that show PR. Here’s an example from Adobe’s website. As you can see, the SWF has built up a PR 6. Nice. :)

index flash pagerank Flash & Search Engines : Indexed in a Flash

Some misc. things to watch out for in this new world of flash indexing:

  • Be careful about the text you leave in your flash movies. I know some developers mistakenly leave older movieclips and code in their flash movies. Well, that code and text can now be indexed. i.e. A movieclip that isn’t initially visible in the flash movie could be overlooked by developers, but Google may very well index that text content (and it could rank for that content.) You probably don’t want to receive that call from your client. :)
  • Be careful not to “break down” any text into objects if you want that text indexed. You will essentially create artwork out of your text and the engines won’t identify it as text (it will be seen as a graphic element). For flash developers out there, I’m referring to highlighting static text and clicking control B (Break Apart), which turns your text into vector artwork.

Summary and Recommendation

I know we covered a lot in this post and I hope you stuck with me to the end! I also hope it helped you understand more about flash indexing and how to best proceed. Again, I fully expect this to evolve and become clearer for both the SEO and Flash communities. If you couldn’t tell in my post, my official recommendation is to use SWFObject 2.x using static delivery. As mentioned above, it enables you to provide crawlable alternative html content, but also enables Google and Yahoo to index your flash movies. You get the best of both worlds. So, if for some reason the engines don’t index your SWFs (which I have seen happen on occasion), you still have alternative content that can be indexed.

I definitely plan to keep testing flash content to see how the engines are progressing with flash indexing and I’ll be writing more posts to cover the results. Stay tuned…

Glenn Gabe is an online marketing consultant at G-Squared Interactive. He currently helps clients maximize their digital marketing efforts via SEO, SEM, Social Media, Viral Marketing and Web Analytics. You can read more of Glenn’s posts on his blog, The Internet Marketing Driver and you can follow him on Twitter to keep up with his latest projects, news, and updates.

289d556146aff267d213dd19f1329fc2 64 Flash & Search Engines : Indexed in a Flash
Featured SEO Writer for SEJ   Glenn Gabe is a digital marketing consultant at G-Squared Interactive and focuses heavily on SEO, SEM, Social Advertising, Social Media Marketing, and Web Analytics. Glenn has over 18 years of experience and has held leadership positions both in-house and at a global interactive agency. During his career, Glenn has helped clients across a wide range of industries including consumer packaged goods (CPG), ecommerce, startups, pharmaceutical, healthcare, military, education, non-profits, online auctions, real-estate, and publishing. You can follow Glenn on Google+ here.

You Might Also Like

Comments are closed.

34 thoughts on “Flash & Search Engines : Indexed in a Flash

  1. To very badly paraphrase Jeff Goldblum from Jurassic Park, shouldn’t we spend more time discussing whether or you should want your Flash content indexed and less time on whether or not the engines can index it?

    I can tell you did a lot of research and worked hard on this piece, but isn’t this somewhat of a silly issue? Isn’t Flash indexing the least important variable in the equation?

  2. Glenn
    Thanks for this detailed article. As someone who is not a professional SEO but rather a Enterprise Content Management consultant who has to interface with customers on both external websites crawled by Google, Yahoo, etc. and internal enterprise search engines, I needed to better understand how to look at Flash and search engines.
    Some customers are absolutely addicted to Flash and we can’t tell how their usage will be read by the various search engines they employ or are exposed to. This article at least gives us a clue on what to recommend the customers try to see what will work in multiple environments.
    P.S. It’s common in a corporate internet implementation for the customer to want to optimize for Rank, but most customers impression of what works is based on 3-5 year old info and they try to hold their success to our software and that set of assumptions. Our standard line is to hire a SEO firm but less than 1 in 5 has accepted that recommendation by the time we have completed a project.

  3. Thanks @Marjory, @M.L. Stone

    I’m glad you liked my post. There was a lot to cover, based on my testing and what’s going on in the industry. I definitely plan to write more about flash seo in the future.

  4. @Jason, I defintely hear you, but many websites (both large and small) employ flash content. I can tell you that almost every company I have helped has used flash in one form or another on their sites.

    In addition, the bigger brands I have helped utilize a lot of flash. So, if tens of thousands of dollars were approved for a viral site built in flash, then we still have to optimize it! :)

    So, following how flash is being indexed, along with using best practices for providing alternative content has been important for me. But again, I hear your concerns.

  5. Thanks @Mark. Most of the flash movies I tested are for clients, so I unfortunately cannot provide links. That said, I definitely plan to write more about this and I have several flash pieces running now where I am gathering more data. Maybe that’s an idea for a future post. :)

    If you want to analyze your own flash movies, I can definitely provide some guidance. Thanks again.

  6. To Jason, I would say it depends on what is in the Flash. If you main site navigation is in the Flash and can’t be indexed then your going to be a significant disadvantage. And therefore for many people it is not a silly question.

  7. By the way man, I use the name Catfish SEO on all my forum comments on every site and its really annoying that your “anti spam” guard prevents me from using that name on your site.

  8. Even a page blocked off using robots.txt collects PageRank, it is whether links pass juice and anchor text that is most important.
    Google will use nofollow links for discovery – crawling doesn’t mean the links have value.

  9. @catfish

    I hear you there, but I think there is another valid viewpoint, which is, if your main site navigation is in Flash, then you’re optimization has already failed.

  10. Very solid post Glenn. Just about every SEO/Flash post out there basically says “use SWFObject” and that’s about it. I appreciate how you went into more detail about the different versions of SWFObject, the object/embed method, etc.

    Through you testing, were you able to see how well Flash-based main navigation was being indexed? Would you be willing to suggest Flash navigation to a client who wants a pretty robust Flash site experience, or would you suggest other methods for the main nav?

  11. Great nuanced post

    Flash is not the devil, but the users of flash are related to the guy below. I made a test of the sites from 8 of the most prominent web-development firms in Denmark, and two out of eight did fail the flash test.

    The two sites primarily used flash, no meta description and other tags to improve keyword density.

  12. Great post Glenn – thanks for your unique insight (Flash + SEO Developer) into the issue.

    One thing that I think should be added to the discussion is the difference between Indexing and Ranking. While Flash-based content can now be indexed in many instances, how is this content actual ranking when compared to plain-vanilla HTML?

    Google determines ranking according to their 300+ criteria, many of which are based on on-page cues (Hn headers, anchor tags, kw location on page, etc). Given that a plain-text extract from a SWF file is unlikely to include many of these cues, how are these SWF indexed pages likely to rank when compared to HTML competitors?

  13. Great detailed write up on Flash. Call me old school but I still detest Flash for anything other than a few bells and whistles. I would imagine that with HTML and Flash option websites that they may start running into duplicate content issues? If anything I’d robots.txt out my Flash version for anytime in the foreseeable future.

  14. Thanks for sharing your testing results – Great article. Always lots of opinions on this topic but facts are facts.

    I think we can all agree that “we’ve still got a long way to go”.

  15. Thanks @Eric Pender. I’m glad you enjoyed my post!

    Great question regarding flash navigation. I did test some sites that use a flash navigation and saw mixed results. I still wouldn’t recommend using a flash navigation for several reasons. I always think a robust text navigation is a critical component for SEO.

    In addition, since I saw some websites that had none of its flash content indexed (for no apparent reason), I’m not sure anyone could rely 100% on their own flash content being indexed. I plan to explore this more over the next few months. I hope that helps.

  16. Thanks @Marshall Clark. You bring up a great point, and one I talk about often. It is about ranking and not just being indexed. During my testing, I saw some swf’s ranking, some parent webpages ranking, and then both swf’s and parent webpages ranking together! Odd, to say the least.

    I believe the engines want to use text content from flash to influence the parent webpage’s ranking, and not necessarily rank the swf (although there are cases where the swf should rank). If that’s the case, then the core on-page elements wouldn’t necessarily be needed in the swf. Again, that’s a great question.

  17. Thanks @Robert. Overall, I agree with you here. I often tell clients to use flash only when needed (and never for an entire webpage or website). I know the power of flash for providing certain functionality, but it should never be overused (which unfortunately happens sometimes.) :-)

  18. Thank you @Kevin Pike! I’m glad you liked my post. Yes, we definitely have a long way to go, but at least we’re on the path. :) I’m eager to see how Adobe works with Google, Yahoo and the other engines to keep pushing this forward. I’m optimistic that this will greatly improve.

  19. @David Johnson I didn’t see your comment until now for some reason! Thanks and I’m glad you found my post helpful.

    You definitely bring a unique perspective, since you are dealing with content management systems, traditional SEO, and then enterprise search. I agree that some companies are addicted to flash and need to learn more about how their content is being crawled (or more importantly, if it’s not being crawled).

    I’ve also worked with various content management systems and have seen several types of publishing methods employed. Some good and some bad…

    I was glad to hear that you recommend hiring an SEO consultant or agency to help. Then I wasn’t thrilled to hear the rate at which they listen to your recommendation! :) Thanks for your comment.

  20. I remember a flash designer commenting on one of my blog posts about flash seo saying, “Your post is now irrelevant! Google is indexing Flash! Let’s all binge on flash.” Not in those exact words of course. I think my first reaction was “hold on a second buddy…”

    Thank you for that… And don’t forget user experience. 90% of websites should not even consider going all-Flash. Flash is a user experience nightmare, and is a horrible fit for content-heavy websites. Or websites in general. Flash is good for web apps, video content, movie sites, or anything where visuals and interactivity are more important than content.

  21. Next time a client or designer tells me Google can crawl Flash and therefore my SEO advice is out of touch, I’ll send them to this post and save myself hours of arguing. Check and mate. Well done! :)

  22. Thanks for the great article. I’m not a Flash developer, but you made sense all the way through. I’m still going to use my strategy of having a Flash page for users and a fully functional HTML site for the search engine bots.

  23. You’re welcome @redwall_hp. And I agree with you. That’s exactly the philosophy I use with my clients. Utilize flash only where needed (when you need its power.)

  24. @Melanie, great idea! :) I’ve been part of those debates also…which is part of the reason I always emphasize testing before advocating solutions!

  25. Thank you @Paul and @Chuck. I’m glad you enjoyed my post. I’ll be writing more about this in the future as the situation changes and progresses. Again, stay tuned.

  26. Thanks @Damien. I’m glad you enjoyed my post! I will definitely check out your articles. My hope is that Adobe keeps developing that area for both the Flash and SEO communities. Thanks again.

  27. Awesome. Can you put the examples online of the examples that you used? For me, see the content, make searches on google and yahoo and try that this is real. I like to know more about this.
    Thanks.