Fork me on GitHub

YSlow

YSlow analyzes web pages and why they're slow based on Yahoo!'s rules for high performance web sites

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.

Availability

» 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.

  1. Minimize HTTP Requests
  2. Use a Content Delivery Network
  3. Avoid empty src or href
  4. Add an Expires or a Cache-Control Header
  5. Gzip Components
  6. Put StyleSheets at the Top
  7. Put Scripts at the Bottom
  8. Avoid CSS Expressions
  9. Make JavaScript and CSS External
  10. Reduce DNS Lookups
  11. Minify JavaScript and CSS
  12. Avoid Redirects
  13. Remove Duplicate Scripts
  14. Configure ETags
  15. Make AJAX Cacheable
  16. Use GET for AJAX Requests
  17. Reduce the Number of DOM Elements
  18. No 404s
  19. Reduce Cookie Size
  20. Use Cookie-Free Domains for Components
  21. Avoid Filters
  22. Do Not Scale Images in HTML
  23. Make favicon.ico Small and Cacheable

» Check out the YSlow Ruleset Matrix to see how the grade is computed.

Sample Screenshot

YSlow Grade details screenshot

Frequently Asked Questions

  1. What platforms does YSlow run on?
  2. How does YSlow work?
  3. How are the grades computed?
  4. How do I add my CDN hostname to YSlow for Rule 2?
  5. What YSlow results are included in the YSlow beacon?

See more...

Contact Us

YSlow development is discussed in the GitHub Issue Tracker.
General performance questions are discussed in the Exceptional Performance group.