Flash is an amazing tool for creating stunning animated visuals. I first began developing in Flash back in 1997 when Flash first introduced the object library. If you want to really grab someone's attention, Flash can deliver. Flash allows the designer to express creativity in ways that are just not possible with any other platform. That's why it is so unfortunate that Flash is about the single worst choice for developing a website.
Flash is a wonderful tool if used correctly and for the proper purpose. But it is almost never the right choice for an entire website (unless it's a gaming or movie trailer type of site). This isn't a new revelation. The web community has been preaching the perils of Flash websites for years. But, Flash is just so shiny and cool, and it allows for such free expression of creativity... its hard for many to resist - especially marketing agencies.
Most businesses on the web want people to be able to use their website. More people able to use your website means more sales and happy customers. Several years ago, Flash accessibility was pretty good. Saturation of the plug-in was 98% and you could almost be guaranteed people could see your Flash content. Not so today. Apple has banned Flash from its products including the iPhone and iPad. Apple may or may not be right in their decision. But with mobile device usage on the internet increasing rapidly, and the iPhone being the most popular of them all, your Flash site doesn't exist for people with these devices.
There have also been security concerns about Flash. It is pretty easy for a hacker to create a Flash file that when viewed, does harm to your computer or network. So many corporate networks have opted to completely block all Flash content for fear employees may happen across one of these rogue Flash files. The people of corporate America may be able to view your Flash site at home, but many can't at work.
It is true that Flash has become more accessible for those with disabilities. Screen readers can interact with some Flash, and developers can include text replacement to help. The problem is that most Flash developers don't, and it is generally more expensive to create both the Flash and replacement text.
Search Engine De-Optimization
While Search Engines have worked to improve their ability to index the content within a Flash site, it really doesn't help much. A Flash website is typically based on one file. All content is in this one file. So when someone does find you through a Search Engine and they click the link to go to your site, they see your home page. Not the page with the content they found on the Search Engine. When this happens, they assume it was a bad link and go to another site.
A huge part of SEO is having multiple pages, each with unique meta data (title and description tags). The only way to do that with a Flash site is to create multiple Flash sites, one for each "page", and duplicate all content and meta data in normal HTML for each page. Basically, you pay for a Flash site and an HTML site. And again, most Flash developers don't take the time to do this as it can be cost prohibitive for their clients.
Flash sites also tend be quite weak on content. It isn't very easy to develop content into a Flash site (see the next point), so usually a Flash site just doesn't have all that much real information. On top of that, most Flash sites don't have any method of content building such as a blog. So they start off weak, and stay weak. Not good if you want customers to be able to find you.
Form over Function
Form (design) and Function (usability) are equally important. In the hands of a good designer, Flash has the Form side handled. Function, not so much. As the typical Flash website is a single file, and therefore a single page, how do you pass along a link in an email to specific content when requested by a client? You don't, because you can't.
Content Management Systems (CMS) are almost non-existent in Flash websites. It's not that CMS for Flash doesn't exist. It's that it is very hard and very expensive to implement (and many times very difficult to use). So for most Flash sites you must call and pay the developer to make whatever little update you need on your website. This is why Flash sites tend to be stale, rarely updated, and certainly don't facilitate ongoing content creation.
The Good Side of Flash
Flash is far from "always bad". But it is almost always bad as the main platform for your website. Using Flash as a partial design element in the banner, for example, is great. It doesn't impact accessibility, SEO or your ability to maintain content. And despite all the talk of HTML5 (we'll leave that for another post someday), Flash is still the best option for delivering video content on your site or little interactive games. Flash is best used as an accessory on your website, not as the website itself.