Designing for the back button
Half the visitors to a page came from another page on your site. Designing for that round-trip changes a lot.
Half the time a visitor lands on an internal page, they came from another page on the same site. They're going to hit the back button. Most sites design as if everyone is on the page for the first time, alone.
What this means
Filter state should survive a back-and-forward round trip. Forms in progress shouldn't get nuked. Scroll position should restore where it was, not jump to the top. Search results shouldn't refetch if the underlying data hasn't changed.
What this changes
URL design. Filter state in the URL beats filter state in component state every time. The back button works. Sharing works. Refreshing works.
Form persistence. localStorage isn't a hack - it's the right tool for "the user accidentally hit back." A 3-line useEffect that reads from localStorage on mount saves more form abandonment than any UX rewrite.
The cheap audit
Open your site. Click around. Hit the back button. Notice what feels wrong. Most of those feelings are bugs.
A site that respects the back button feels twice as fast as one that doesn't, with no actual performance change.