Regardless of what best practice is for developers issuing response codes, designers need to design for the possibility they’ll do it wrong, and provide a good experience to the user nonetheless. As it happens, we do issue 301s, 302s, and 410s, but we design for the possibility that someone may make an error at some point in that process. My goal isn’t to write a technical guide for front-end developers (plenty of those exist already!)
You may have also noticed the bit where I said:
“In the future, we’re considering URL structures that will allow us to route the request to related content, such as the table that a deleted chart might have come from.”
Related content includes things like best match for chart, source tables, and similarly themed content, but honestly, that feels like more detail than most designers will care about when they’re looking for basic tips for improving their designs.
The suggestions you make all fall under Point 5 — preventing them from occurring at all. Unsurprisingly, this is requires the most development work. Our team believe in incremental improvements, and we could see that we could improve the experience today with a simple series of changes, whilst also working on the longer-term solutions as alluded to above.
Our analysis of our 404s shows that vanishingly few come from mistyped IDs, so the effort expended in detecting and rerouting that immediately is not worth it until we look at the aforementioned work on URL structures (which includes plain-language).
Thanks for reading.