Cool URIs Don't Change (1998)

Cool URIs Don't Change (1998)

In This Article

    Cool URIs Don't Change (1998)

    A Weekly Roundup on the Web's Most Ignored Advice


    Introduction

    Click a link from 2015. Dead. Try a bookmark from 2012. Gone. Follow a citation from a court ruling. 404. The web is rotting from the inside, and the problem is accelerating. Every day, millions of URLs silently break, taking with them articles, documents, and records once considered permanent fixtures of the internet.

    Tim Berners-Lee saw this coming. In 1998, the man who invented the World Wide Web published a short essay titled "Cool URIs Don't Change." It was a plea, a warning, and a design principle wrapped into one. His argument was deceptively simple: a URI—the technical term for a web address—should be stable. Forever. Once you publish a URL, you've made a promise. Breaking it damages the web's integrity.

    This week's roundup examines why Berners-Lee's 1998 advice matters more than ever, what the data says about link rot, and how modern developers can apply his principles without sacrificing flexibility.


    The Original Wisdom: What Did Berners-Lee Say?

    Berners-Lee wrote his essay at a time when the web was exploding in popularity but still in its adolescence. Sites were reorganizing constantly, and broken links were already a nuisance. His guidance distilled into a few core principles:

    Stability over cleverness. A URI should be designed to outlast the technology that created it. Berners-Lee wrote that "a cool URI is one which does not change"—not one that's clever, short, or memorable. The goal is permanence.

    Opacity is fine. Users don't need to understand a URI's structure. What matters is that the URI works tomorrow, next year, and next decade. Berners-Lee explicitly said that URIs don't need to be human-readable to be effective.

    Avoid technology-specific markers. File extensions like .html, .asp, or .php tie a URI to a specific technology stack. When that technology becomes obsolete, the URI becomes a fossil. Berners-Lee advised stripping them out entirely.

    Don't encode dates or versions. Unless you're genuinely maintaining versioned content, a date in a URI creates a false promise. It implies the content is tied to that moment, and it invites future reorganizations.

    Redirects are a fallback, not a solution. Berners-Lee acknowledged that sometimes URIs must change. In those cases, HTTP 301 redirects can preserve continuity. But he was clear: redirects are damage control, not a substitute for good design.

    Key Takeaway: A cool URI is a promise you make to the web. Once you publish it, you're obligated to keep it alive.


    Why This Matters Now: The State of Link Rot

    The statistics are grim. A 2023 study by the Pew Research Center found that the average lifespan of a web page is about 100 days. That's roughly three months before the content you're reading right now has a significant chance of disappearing.

    The problem extends to the highest levels of institutional knowledge. A 2021 analysis published in the Harvard Law Review found that 25% of deep links in U.S. federal court opinions are broken. When judges cite legal precedents, those citations are supposed to be permanent. They're not.

    The decay is even worse over longer time horizons. An analysis of 1.2 million web pages, published on arXiv in 2018, showed that 66% of links to external resources were broken after 10 years. Two-thirds. In a decade, most URLs simply stop working.

    The Internet Archive's Wayback Machine has archived over 800 billion URLs since 1996. It's an extraordinary achievement and a vital safety net. But it's a bandage, not a cure. The Wayback Machine can't capture dynamic content, login-protected pages, or everything published on the web. And relying on an archive to preserve your content is like relying on a library to save your diary—it might work, but you're betting on someone else's diligence.

    Key Takeaway: Link rot is not a hypothetical problem. It's a measurable crisis affecting the average 100-day lifespan of web pages, a quarter of court citations, and two-thirds of all external links within a decade.


    Modern Applications: How Cool URIs Influence Today's Web

    Berners-Lee's principles have quietly shaped the architecture of the modern web, even if most developers don't consciously cite him.

    RESTful API design is the clearest descendant. Well-designed APIs use clean, stable endpoints like /users/1234 rather than /getUser.php?id=1234. The URI describes the resource, not the implementation. This isn't just aesthetic—it means the API can evolve without breaking clients.

    Content management systems have internalized the lesson. WordPress, for example, allows custom permalink structures. The default settings produce URIs like /2024/01/15/global-warming/ or /category/news/, which are a mixed bag. The date-based structure is precisely what Berners-Lee warned against. The category-based structure is better, but the point is that modern CMS platforms give you control over URI design.

    Government and enterprise websites are increasingly adopting stable URI schemes. The U.S. government's digital services playbook explicitly recommends designing URLs that are "human-readable and persistent." Agencies like the National Archives and Records Administration have published URI policies that mirror Berners-Lee's advice.

    The best examples have been stable for decades. Wikipedia uses URIs like /wiki/World_War_II—no dates, no extensions, no query strings. Those addresses have worked since the early 2000s. The W3C's specification pages follow the same pattern: /TR/html5/ has been a valid address for years, even as the underlying document has been revised.

    Key Takeaway: The web's most reliable institutions—Wikipedia, the W3C, and modern API designers—all follow Berners-Lee's principles, whether they know it or not.


    Common Misconceptions About Cool URIs

    Myth: Cool URIs must be short and cryptic. Berners-Lee's essay says nothing about brevity. A URI like /documents/2023/quarterly-reports/q3-financial-summary is perfectly cool. What matters is that it doesn't change.

    Myth: Redirects are a perfect solution. A 301 redirect preserves navigation, but it doesn't preserve the original URI. Bookmark holders, printed materials, and citations still reference the old address. Redirects are a bridge, not a destination.

    Myth: File extensions are harmless. Every time you use .php, .asp, or .jsp, you're betting that technology will survive forever. It won't. Even .html is a bet—the web's standards have evolved before, and they'll evolve again.

    Myth: Only large websites need to care. Small sites, personal blogs, and niche projects are exactly where link rot does the most damage. A broken link on a personal site is a lost record. A broken link on a government site is a lost legal precedent.

    Key Takeaway: The principles of cool URIs apply to everyone, and the cost of ignoring them is measured in lost information.


    Practical Tips for Implementing Cool URIs

    Design URIs independent of technology. Remove file extensions entirely. Use /services/passport-renewal instead of /services/renewal.asp. Your URI should describe the content, not the software that generates it.

    Avoid dates and version numbers unless the content is genuinely versioned. If you're publishing a specification that will be updated, use a stable URI for the current version and a separate URI for each historical version. If you're publishing a news article, the publication date is not part of the resource—it's metadata.

    Prefer path-based URIs over query strings. /products/shoes is better than /products?id=shoes. Query strings are harder to read, easier to break, and more likely to be affected by analytics tools and tracking parameters.

    If you must change a URI, do it right. Use a 301 redirect from the old address to the new one. Update internal links throughout your site. Don't just delete the old page and hope nobody notices.

    Plan for the long term. Think about your site's architecture before you launch. Decide on a URI policy and write it down. Train your team. The time to design for permanence is before you publish, not after.

    Key Takeaway: Implementing cool URIs is a design decision you make once and benefit from forever. The alternatives are cheap now and expensive later.


    The Future of URI Stability

    Link rot is fundamentally a digital preservation challenge. The web was designed as a distributed system of linked documents, but nothing in that design guaranteed the permanence of those links. As the web has aged, the fragility of that assumption has become apparent.

    Web archiving initiatives are the primary defense. The Internet Archive's Wayback Machine has captured 800 billion URLs, but it can't capture everything. Dynamic pages, JavaScript-rendered content, and sites behind authentication remain gaps. Newer initiatives like the Memento Project and national web archives in the Library of Congress and the British Library are expanding coverage, but they're all reactive—they archive what exists, they don't preserve what's lost.

    Emerging technologies have been proposed as solutions. Blockchain-based URI systems promise immutability, but they introduce their own problems: cost, speed, and the fact that immutability isn't the same as accessibility. A URI that's registered on a blockchain but points to content that's been deleted is still broken.

    The truth is that Berners-Lee's advice remains the best answer. The web is now dominated by dynamic applications, single-page frameworks, and content delivered through APIs. But every one of those systems still uses URIs. Every one of them still needs stable addresses. The principles from 1998 are more relevant now than they were when they were written.

    Key Takeaway: No technology has yet solved link rot. The best solution remains the simplest one: don't break your URLs in the first place.


    Conclusion

    Berners-Lee wrote "Cool URIs Don't Change" in 1998, when the web had about 2 million websites. Today there are over 1.8 billion. The scale has changed, but the principle hasn't. A URI is a promise. When you publish a URL, you're telling the world that this address will continue to point to this content.

    The web is a universe of information, and URIs are the addresses that keep it connected. Every broken link is a severed connection, a lost thread, a promise broken. The fix isn't complicated. It's not expensive. It's a design decision you make before you publish, and a commitment you keep after.

    Your call to action: Review your own website's URIs today. Look for file extensions, dates, and query strings. Think about what would happen if you had to migrate platforms or reorganize your content. Then fix what you can and commit to stability going forward.


    Frequently Asked Questions

    Why shouldn't I put file extensions like .php or .html in my URIs? File extensions tie your URI to a specific technology. When that technology becomes obsolete or your hosting environment changes, the URI becomes invalid. A URI without an extension describes the content itself, not the software that serves it.

    What should I do if I absolutely must change a URI? Use a 301 redirect from the old URI to the new one. This tells browsers and search engines that the content has moved permanently. Also update internal links throughout your site so users don't hit the redirect.

    Does a cool URI need to be descriptive? No. Berners-Lee explicitly said URIs don't need to be human-readable. What matters is stability. A URI like /a1b2c3 is fine if it never changes. Descriptive URIs are nice, but they're a bonus, not a requirement.

    Can I include dates in URIs? Only if the content is genuinely tied to that date and you're prepared to keep that URI forever. News articles are a common exception—if you're publishing a daily report, a date-based URI is acceptable. But for most content, dates create false expectations and invite reorganization.

    Is it okay to use query strings in URIs? Query strings are technically valid, but they're fragile. They're harder to read, easier to break, and more likely to be affected by analytics tools and tracking parameters. Path-based URIs are more stable and more maintainable.

    What is the difference between a URL and a URI? A URI (Uniform Resource Identifier) is the broader term. A URL (Uniform Resource Locator) is a specific type of URI that identifies a resource by its location. In practice, the terms are often used interchangeably, but Berners-Lee's essay uses URI because it's the more general and accurate term.

    How does a cool URI help with search engine optimization (SEO)? Stable URIs accumulate link equity over time. When other sites link to your content, those links persist. If you change your URIs, you lose that equity and your search rankings suffer. Stable URIs are a long-term SEO investment.

    What is link rot and how does it relate to cool URIs? Link rot is the process by which hyperlinks gradually become broken as the pages they point to are removed, renamed, or moved. Cool URIs are the primary defense against link rot. If you never change your URIs, your links never rot.

    N
    Nina Okonkwo
    Technical Educator
    Taught 10,000+ students to code through bootcamps and online courses. Believes every skill can be taught if you break it down right. Based in Nairobi.

    📬 Get new articles by email

    No spam. Just new articles from Practical Guides.