Exceptional Performance
Yahoo!'s Exceptional Performance team promotes best practices for improving web page performance. They conduct research, build tools, write articles and blogs, and speak at conferences.
Best Practices
The Yahoo! Exceptional Performance team has identified a number of best practice rules for making web pages fast. They have identified 34 rules which are divided into seven categories.
Filter by category:
- Content
- Server
- Cookie
- CSS
- JavaScript
- Images
- Mobile
- All
- Make Fewer HTTP Requests
- Use a Content Delivery Network (CDN)
- Add Expires or Cache-Control Header
- Gzip Components
- Put Stylesheets at Top
- Put Scripts at Bottom
- Avoid CSS Expressions
- Make JavaScript and CSS External
- Reduce DNS Lookups
- Minify JavaScript and CSS
- Avoid Redirects
- Remove Duplicate Scripts
- Configure ETags
- Make Ajax Cacheable
- Flush Buffer Early
- Use GET for Ajax Requests
- Postload Components
- Preload Components
- Reduce the Number of DOM Elements
- Split Components Across Domains
- Minimize Number of iframes
- Avoid 404s
- Reduce Cookie Size
- Use Cookie-Free Domains for Components
- Minimize DOM Access
- Develop Smart Event Handlers
- Choose <link> Over @import
- Avoid Filters
- Optimize Images
- Optimize CSS Sprites
- Do Not Scale Images in HTML
- Make favicon.ico Small and Cacheable
- Keep Components Under 25 KB
- Pack Components Into a Multipart Document
- Avoid Empty Image src
YSlow for Firebug
Use the YSlow tool to analyze a web pages and get a report on why the web page is slow based on the best practices for high performance web sites. YSlow is a Firefox add-on integrated with the Firebug web development tool. This tool has been used internally at Yahoo! by many properties (for example, Yahoo! Sports, Yahoo! Movies, Yahoo! News, and so on) to improve the performance of their web pages by anywhere from 25 to 50 percent. Yahoo! is happy to share this tool with the development community to help others accelerate their users' experiences on their web sites.
Research
Research conducted by the Exceptional Performance team is documented in the following Yahoo! User Interface Blog articles.
- Performance Research, Part 1: What the 80/20 Rule Tells Us about Reducing HTTP Requests
- Performance Research, Part 2: Browser Cache Usage - Exposed!
- Performance Research, Part 3: When the Cookie Crumbles
- Performance Research, Part 4: Maximizing Parallel Downloads in the Carpool Lane
- Performance Research, Part 5: iPhone Cacheability - Making It Stick
Developer Support & Community
Web page performance and the YSlow tools are discussed in the Exceptional Performance Group. Contact this group if you have questions or need technical support.