← All Tools
URL Shortener🔒 100% local
Shorten URLs (client-side hash-based). Privacy-first, no server uploads.
Related Tools
Produces a short-looking link from a long URL by hashing the characters with a 31-multiplier loop and rendering the result as base36 under a placeholder domain: https://your-domain.com/<code>. The code is deterministic, so the same input always gives the same string, which is handy for fixtures and test data. Nothing is contacted and nothing is stored - this is a string function, so the URL you paste is not registered with any shortening service.
How to use it
- Paste the long URL into the Input box.
- Press Process.
- Copy the short-looking string from the Output panel.
Worked example
https://example.com/very/long/url/path/with/many/segmentsbecomeshttps://your-domain.com/oqv7nuthe page's default input; the same text always yields this code
https://example.com/abecomeshttps://your-domain.com/se6lk0six characters, not eight - see the limits
When to use it
- You need a short, stable identifier for a URL when generating test fixtures or seed data.
- You want a compact handle for a long link in a mock-up or screenshot where a real redirect is not required.
- You are comparing several similar URLs and want a quick visual token that differs between them.
What it does not do
- It does not shorten anything in the practical sense: no request is made, no redirect exists, and your-domain.com is a literal placeholder, so the output link is dead. For a working short link you need a real shortening service.
- The code can be shorter than eight characters, because Math.abs(hash).toString(36).slice(0, 8) only truncates a number that is long enough in base36; https://example.com/a gives the six-character code se6lk0.
- The hash is a simple imul loop with no collision handling and no salt, so two different URLs can land on the same code and the mapping is guessable rather than a secure digest.
- It ignores URL structure entirely: the hash covers the exact characters you typed, so https://example.com/x and https://example.com/x/ are unrelated codes.