The Threefold Knot: On the Over-Intimate URL
There’s a piece of received wisdom in our craft that feels almost sacred: the URL should be human-readable. We are told, with good intention, to craft paths that tell a story, that reveal the content’s hierarchy and essence. The ideal, we hear, is a URL you can read aloud over the phone—a clean, logical string that eschews the opaque gibberish of session IDs and database keys. This principle is not without merit; clarity is a virtue. But I’ve come to see a shadow side to this dogma, a problem I call the Threefold Knot.
The knot is this: by making a URL deeply human-readable, we often weave three distinct elements—the content, the user’s intent, and the site’s internal structure—into a single, inseparable string. On the surface, this seems efficient. A URL like `/blog/2024/05/product-announcement-new-feature` appears to be a model of transparency. It tells you the section (blog), the date, the category (product-announcement), and the specific subject. It feels organized, almost friendly. But this friendliness is deceptive, for it creates a bond that is dangerously brittle.
First, the URL becomes a prisoner of its own narrative. What happens when the ‘new feature’ is no longer new? The content may be evergreen, a permanent guide, but the URL screams ‘May 2024 announcement.’ The date, once a helpful marker of freshness, becomes an albatross, dating the content unnecessarily. The category ‘product-announcement’ might become obsolete if the product itself is rebranded or absorbed into a larger suite. The URL, in its desperate attempt to be descriptive, has painted itself into a semantic corner.
Second, and more critically, this approach conflates the user’s path with the content’s identity. We assume the way a user finds a piece of content today is the way they will always conceptualize it. But taxonomies evolve. The site you build today is not the site you will maintain in five years. That carefully planned structure of `/topics/subtopics/article` is a snapshot of your current organizational thinking. When you inevitably restructure—when ‘topics’ become ‘guides’ and ‘subtopics’ are merged—the human-readable URL becomes a monument to an abandoned architecture. The very clarity we prized now creates a strong incentive against change, locking the site’s structure in amber for fear of breaking those ‘perfect’ paths.
Finally, the over-intimate URL creates a false sense of permanence. We start to believe the URL *is* the content. This leads to a parade of redirects every time we have a new idea, chaining the present to the past. A simpler, more opaque, or more abstract identifier—one that severs the tight coupling between location and meaning—offers a surprising kind of freedom. It allows the content to be what it is, independent of the filing cabinet we happened to place it in during a particular planning session.
This is not an argument for a return to the days of `page.php?id=58392`. It is a plea for moderation. A URL should be legible, but not a literal map. It should offer a hint, not a biography. Perhaps the ideal lies in a stable, unique slug—`/permissive-permanence`—that identifies the content’s core concept, divorced from the transient scaffolding of dates and categories. We should tie a loose knot, one that can be undone with ease, rather than the threefold knot of content, intent, and structure that may one day need to be cut with the sharp blade of a redirect, leaving frayed ends behind.
Notes & further reading
A few pages I came back to while writing this:
- Colorado Springs, CO
- The Stonemason's Dressing: On Correcting the Internal Link at Scale
- Denver, CO
- The Welcoming Porch and the Locked Door: On the Over-Secure URL
- Fort Collins, CO
- The Archivist's Adhesive: On John Shaw Billings and the Mechanical Roots of Internal Linking
- Lakewood, CO
- Thornton, CO
- Bridgeport, CT
- Hartford, CT
- New Haven, CT
- Stamford, CT
- Washington, DC