Menu

HashtagPLUS guide · Updated 2026-10-30

How we make a shortlink and keep your credit attached to it

We give each link a repeatable short code so it is easy to share, while keeping a separate record of who shared it first and who can manage it.

Start with an example

You find an article at https://www.Example.com/path/?utm_source=news and want to share it. We turn that address into https://htpl.us/l9FoadRM, while HashtagPLUS keeps the post, the discussion, and the record of who first shared it here.

1. Clean up the address. The www. and the newsletter tracking tag do not change which article you mean, so we remove them and use example.com/path as the input. Someone who pastes the clean address gets the same input as someone who follows the newsletter link.

2. Work out its fingerprint. We pass example.com/path through SHA-256, which produces a repeatable fingerprint of that text. We then write that fingerprint using letters and numbers and apply our eight-character code rules, giving this address the code l9FoadRM.

3. Make the shortlink. Putting that code after htpl.us/ gives you https://htpl.us/l9FoadRM. Anyone can check the calculation, and the verifier at the canonical source lets you try a URL yourself without creating a post or reserving its code.

4. Keep the credit with the right person. When the link is successfully claimed, HashtagPLUS records who claimed it and who can manage it. If someone shares the same address later, knowing the code does not let them take over that record or edit your link.

1. What we clean up, and why

The same article can arrive with several different-looking addresses, especially when it is shared through newsletters, social networks, or advertising campaigns. We normalize those addresses before calculating the code so tracking information does not turn one article into a collection of unrelated shortlinks. That means trimming the input, adding HTTPS when needed, lowercasing the hostname, removing a leading www. and the fragment after #, collapsing repeated path slashes, and removing a trailing path slash; the saved canonical destination uses HTTPS.

We remove parameters beginning utm_ or mc_, together with fbclid, gclid, igshid, mkt_tok, ref, ref_src, ref_url, source, campaign, cmpid, and si, then sort the remaining query parameters by name and value. Meaningful paths and query values still distinguish links. The text we hash is the cleaned address without its scheme or final root slash, which is why the example above becomes example.com/path. These are rules for grouping addresses, rather than a claim that we have compared the contents of two pages.

2. How that becomes an eight-character #GG code

For anyone who wants to reproduce the calculation, we hash the UTF-8 input with SHA-256, read the full digest as an unsigned big-endian integer, and encode it using this exact Base62 alphabet: 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ. We pad that encoding to at least eight characters, then take the first eight-character window containing a digit or uppercase letter that is not a reserved route name. If no window qualifies, we use the first seven characters followed by 0. Codes are case-sensitive, so the capitalization is part of the link.

This gives example.com/path the code l9FoadRM and cnn.com the code F9pCT6SY. The short code uses only eight characters of an encoding of the full fingerprint, so different URLs can theoretically produce the same short code. HashtagPLUS enforces code uniqueness in its database, and being able to calculate a code does not give someone the right to claim an occupied code or change its destination.

3. What first-poster credit means

We want the person who brings a link to the community to keep the credit when other people share it, so HashtagPLUS records the first successful eligible claim and keeps that attribution attached to the original post. The database decides which claim succeeds if two arrive together; seeing a code in a preview does not reserve it. This is a record of who shared the link here first, rather than proof that they discovered it before anyone else on the internet or own the article itself.

Today, submitting an already-shared URL through htpl.us brings you back to the existing shortlink with a credit banner and a way to join the original discussion. A repeat URL post created directly on HashtagPLUS can receive its own fallback code when the URL-derived code is already occupied, while private posts, text-only posts, and comments use randomized codes. Older posts also keep their existing codes, so the URL calculation should not be used to infer every post’s identity or ownership.

4. What protects ownership

The calculation is public because you should be able to verify how we made the link, but the ownership record is checked separately on the server. Ownership is a separate server-side record attached to an account or an anonymous browser credential. Someone can know the URL, reproduce the code, or copy the QR image without gaining access to the settings that control your link.

For a signed-in owner, HashtagPLUS checks the account recorded on the link before allowing a change. Signing in from htpl.us uses a one-time handoff and a signed session token, and HashtagPLUS checks that token’s signature, expiry, and session version when it authorizes owner operations. Revoked sessions and banned accounts do not retain access through an old token.

If you create a link anonymously, control stays with a random credential held in that browser’s Secure, HttpOnly, SameSite cookie, while HashtagPLUS stores a hash of the credential. That makes the owning browser important: clearing its cookies, switching browsers, or losing the device can mean losing control of the link. Signing in from the owning browser lets you attach eligible anonymous links to your account so you can manage them after that browser session.

An authorized owner can change the destination, adjust hashtags and tracking, or disable the link, while a visitor cannot do those things simply by supplying its code. Web form writes also check their origin, and htpl.us authenticates its calls to HashtagPLUS. Discovery credit, control of a shortlink, and ownership of the external article remain separate; the code does not encrypt the destination, guarantee that it is safe or permanent, or give its owner control over another person’s comments.

5. How comments and discussion work today

The shortlink normally opens the destination chosen for it, but you can always use htpl.us/<post-code>?p to open the HashtagPLUS post and its discussion instead. The original-poster banner links there too, so someone who wants to respond can join the conversation without having to find the post again; commenting and voting continue to follow the site’s identity, moderation, and throttling rules.

Comments and replies get their own case-sensitive, randomized #GG codes, which take readers back to the parent post and the relevant comment anchor. A reply is resolved through its thread, and deleted comments or posts the viewer is not allowed to see are not publicly resolved. These comment codes describe a particular contribution to a discussion, so they are not calculated from the article URL.

At present, sharing an existing URL through htpl.us shows the original link and a discussion button. Your note is not automatically added as a comment, and sharing the link does not make you the author of the original post or of anyone else’s contribution.

6. Repeat-share comments — planned, not live

The next step is to let you share a link that is already here and add your own note directly to its existing discussion. The original discoverer will keep their discovery credit, while your comment will belong to you and receive its own #GG code. Anonymous comments are included in the approved design under the existing comment limits, and sharing without a note will upvote the original post and record your share without repeatedly adding votes.

That implementation is approved and in progress, but it is not live yet. We are adding retry protection so a double-click or interrupted request cannot duplicate a comment, vote, or share credit, along with a bounded notification to the original poster. Until those changes are tested and deployed, use the discussion button to add a comment explicitly on HashtagPLUS.

7. Try it yourself

You can check any address with the live verifier on the canonical guide at https://htpl.us/about#props, or request https://htpl.us/api/build?url=example.com/path. The calculation is available without creating a post or claiming ownership, and this guide is also mirrored at https://hashtagplus.com/shortenurl with a link back to its originating source.

Once a new URL is claimed, its shortlink normally opens the article, although the owner can choose the HashtagPLUS discussion or another web destination. Add ?p when you want the post, ?a when you want its article, or ?qr when you want the printable QR page and available settings; a disabled link stops redirecting.

Back to the feed