Clone this wiki locally
YSlow analyzes web pages and suggests ways to improve their performance based on a set of rules for high performance web pages. Feature highlights:
- Grades web page based on one of three predefined ruleset or a user-defined ruleset;
- It offers suggestions for improving the page's performance;
- Summarizes the page's components;
- Displays statistics about the page;
- Provides tools for performance analysis, including Smush.it™ and JSLint.
» View YSlow Ruleset Limitations across several browsers/platforms.
Web Performance Best Practices and Rules
Yahoo!'s Exceptional Performance team has identified 34 rules that affect web page performance. YSlow's web page analysis is based on the 23 of these 34 rules that are testable. Click each performance rule below to see the details.
- Minimize HTTP Requests
- Use a Content Delivery Network
- Avoid empty src or href
- Add an Expires or a Cache-Control Header
- Gzip Components
- Put StyleSheets at the Top
- Put Scripts at the Bottom
- Avoid CSS Expressions
- Reduce DNS Lookups
- Avoid Redirects
- Remove Duplicate Scripts
- Configure ETags
- Make AJAX Cacheable
- Use GET for AJAX Requests
- Reduce the Number of DOM Elements
- No 404s
- Reduce Cookie Size
- Use Cookie-Free Domains for Components
- Avoid Filters
- Do Not Scale Images in HTML
- Make favicon.ico Small and Cacheable
» Check out the YSlow Ruleset Matrix to see how the grade is computed.
Frequently Asked Questions
- What platforms does YSlow run on?
- How does YSlow work?
- How are the grades computed?
- How do I add my CDN hostname to YSlow for Rule 2?
- What YSlow results are included in the YSlow beacon?
YSlow development is discussed in the Exceptional Performance group.