Everyone wants /pitch instead of a 32-character string. The catch isn't policy, it's arithmetic: a URL short enough to say out loud is short enough to guess. Here's the trade, where the middle ground sits, and why a custom short link only makes sense once you've decided a document should be public anyway.
The request is completely reasonable and it arrives constantly: can my link be something.com/pitch instead of a thirty-two-character string?
Short answer: yes, on a document you've decided should be public. No, on a private one — and the reason isn't a product decision that might soften next quarter. It's arithmetic.
A private link here has no login and, unless you add one, no password. That's deliberate — the whole appeal is that your client clicks once and the work opens, with nothing to install and nobody to sign up as.
But it means the address itself is the access control. There's no second thing checking whether the person holding it should be holding it.
So the address is built to be unproducible: 32 characters of base62, roughly 190 bits of entropy. That number is hard to hold in your head, so the useful version is this — there is no rate of guessing, no amount of computing, and no amount of time that turns this into a viable attack. It's not "hard to guess." It's outside the category of things you guess.
There's also no directory. No public gallery, no index of documents, no sitemap listing anyone's files. A crawler can't enumerate what it can't see linked, which is why the long string and the absent directory are really one design rather than two.
Now shorten it.
/pitch is six characters. So is /demo, /proposal, /q3, /report, /deck. A person doesn't need software to try those — they need a keyboard and mild curiosity. Any short, meaningful, human-memorable slug lives in a space small enough that walking it is trivial, and the more sensible your slug is, the higher up someone's guess list it sits.
This is the part worth sitting with: making the URL shorter doesn't weaken the protection a bit, it removes it. You can't have a link that's easy for your client to remember and impossible for a stranger to construct. Those are the same property viewed from two sides.
Given that, there are only two honest options. Pretend otherwise and offer short slugs on private documents anyway — which quietly converts an unguessable link into a guessable one while the interface still says "private." Or accept the trade and put it where the user can see it.
A custom slug is only available on a document you've marked searchable — the explicit per-document opt-in that says this one should be public and findable. Try to set a custom slug on a private document and the request is refused, not warned about.
That coupling is the whole idea. Once you've decided a document is public, "guessable" stops being a cost — it's a page you want found, and a short address is now purely an upgrade. The privacy default hasn't been weakened; you've stepped outside it deliberately, for one document, and picked up a nicer URL on your way out.
Everything else stays exactly as it was. Every document you haven't opted in carries its noindex meta tag and X-Robots-Tag header and its full-length unguessable address, on every plan. The searchable opt-in has its own reasoning worth reading, because the interesting cases are the documents that should be both public and controlled.
The practical rules, for when you get there: three to sixty characters, lowercase letters, digits and single hyphens, no reserved words that would collide with a real page on the site, and first-come across a shared namespace. How many documents you can opt in is tiered — one on free, five on Solo, unlimited on Studio — which keeps turning off the default a considered act rather than a habit.
Your own domain on the front, the unguessable tail on the end — recognisable to the client, still unproducible by anyone else.
Between "bare random string" and "custom short slug" sits the default, and it solves the actual complaint more often than people expect.
The address gets a readable label in front of the random portion — proposal-acme- followed by the same 32 characters. The recipient can see what they're about to open. It looks like a deliverable rather than a tracking link. And the label is cosmetic: it adds no guessability, because the random tail is untouched.
That matters because the real complaint behind "the URL is too long" is usually not length. It's that a bare string looks anonymous, slightly suspicious, and like something that might be a phishing link — which is a genuine problem when you're sending work to a client who doesn't know you well. What the client actually sees when they open a private link covers the rest of that impression, and most of it turns out to be the page rather than the address.
Sometimes the requirement is real: you're saying the URL out loud on a call, printing it, putting it on a slide. Then honestly assess which half you need.
If the content can be public — a lead magnet, a public one-pager, a resource you'd be happy to have found — mark it searchable, take the short slug, and enjoy it. That's what the feature is for.
If the content must stay private, the answer is a custom domain rather than a shorter path. On Studio, your own domain in prefix mode puts your name at the front while the unguessable tail stays on the end. Your client sees your brand; a stranger still can't construct the address. You get recognition, which is what "professional-looking link" usually meant anyway. (The domain-root mode, where the bare domain serves one document with no tail at all, is subject to the same rule as a short slug — that document has to be searchable, because a bare domain root is as guessable as a URL gets.)
And if it's genuinely sensitive, the address was never the right layer to be relying on. A password you can change survives a forwarded link, which no amount of URL length does. Length protects against strangers finding it. A password protects against the person you sent it to passing it on.
Different problems, different layers. The short link only ever solved the first one, and only by giving it up.
Pointing a subdomain at a private-link host so the URL says your brand, not the vendor's. Steps, DNS gotchas, and when the apex vs subdomain choice matters.
Instant hosts trade takedown for tamper-proofing — and most people meet that trade at the worst possible moment. What immutable actually means, why support usually can't help, and the three questions worth asking before you press publish.
Grok's share button makes a public link, and xAI says plainly it can be indexed by a search engine. On Grok Business the same button does close to the opposite. Here's what the person on the other end receives, and the page where you revoke it.
miinideck turns a single HTML file into an unguessable link with optional password and expiry. Default-private, never indexed.