Jump to navigation

Graceful Degradation Vs Progressive Enhancement

Graceful Degradation

Is the practice of building a website or app so that it provides a good level of experience for users in modern browsers, but it will also degrade gracefully for use on a older browser. This degraded version is not as nice, but it provides the basic functionality in order to use the website.

With this "Looking backwards" approach, older browsers are often an afterthought. The developer simply wants the site to be accessible on an older browser.

  • Quicker than Progressive Enhancement but could require extra effort further down the line
  • The amount of code is typically smaller which may be key in sites where speed is everything

Progressive Enhancement

Is basically the opposite. You build something that offers a basic level of user experience that all users can access, but you also build more advanced features for browsers that are able to use them.

This approach considered everything right from the beginning and build on them. For example, making a website have full functionality without JS enabled

  • Much more accessible for all users
  • If a new feature becomes available it can be built into the code without having to touch the core - progressively enhanced functionality