The best custom domain Bluesky handles aren't just vanity usernames. They tell you about the user if you check out the website they lead to. For that reason, it's helpful to have a website at that address. Not everyone can register a personal domain name, but there are free web hosting options that you can use for a Bluesky username as well as a website. If you don't have a website, check out my Make Your Own Website guide.
How do I change my Bluesky username to my domain name?
Bluesky Handles I've Tested
- Domain with DNS method- ✅ verified
- Subdomain with DNS and No DNS Panel method - ✅ verified
- Emoji Subdomains - ❌ do not work. Emoji subdomain such as 🦄.shannonkay.com do not verify as Bluesky handles with either method.
- Neocities Subdomain - ✅ verified
- Nekoweb Subdomain - ✅ verified
- Codeberg Pages Subdomain - ✅ verified
- Glitch Subdomain - ❌ did not work
- GitHub Pages - ✅ verified
- Yay.boo - ❌ did not work
The Bluesky Handle Tests
Neocities
- Neocities subdomain test: @shannonkay.neocities.org - ✅ verified
- I tried the @neocities.org subdomain Bluesky handle, and it was easy to set up with the built-in site settings in Neocities. and the no DNS panel option on Bluesky.
- How to get to the Bluesky handle settings in Neocities: Click your username and go to settings. Under Your Sites, click on Manage Site Settings next to the site you want to use. Click on the Bluesky tab link.
- This would be great for someone who doesn't have a custom domain to set up a personal website and have a matching Bluesky handle.
Nekoweb
- Nekoweb subdomain - @shannonkay.nekoweb.org - ✅ verified
- I used the "No domain panel" option in Bluesky which is the .well-known method. I uploaded an
index.html
file with mydid:
text string in it(and nothing else!) into.well-known/atproto-did
folders that I created in the Nekoweb file uploader. The method is described in this Neocities-specific tutorial: NeoCities Bluesky Handles from Bob Draws
Codeberg Pages
Codeberg Pages subdomain username @shannonkay.codeberg.page - ✅ verified- Log into Codeberg and browse to my "pages" repo.
- Click "new file"
- To make the folders, just type the slashes, then the filename like this:
.well-known/atproto-did/index.html
- Paste the
did:
text string into the text box of the new file. - Scroll down and press commit changes
- The
shannonkay.codeberg.page
subdomain verified as long as I didn't have a custom domain configured. - This method also worked with my configured custom subdomain when it was configured, so I was able to verify @shannonkay.codeberg.page and @codeberg.shannonkay.com with the same text file.
GitHub Pages
GitHub Pages subdomain username @shannonkay.github.io - ✅ verified- I'm going to try to use GitHub Pages to make this work. Mine is shannonkay.github.io
- In the repository for my GitHub Pages site, I clicked add file/ create new file
- In the box next to my site's address, shannonkay.github.io, I typed
.well-known/atproto-did/index.html
to create the folders and file that I need. - In the edit text box, paste I pasted my
did:
text string. - Click the Commit changes button
- I need to enter a Commit message, so I entered
Bluesky handle
and clicked Commit changes again. I waited a minute for checks to be complete on GitHub. - GitHub Pages uses Jekyll by default, but it needs to be turned off for this text verification to work properly, so we need to turn off Jekyll.
- To turn off Jekyll, add a
.nojekyll
file. To do that, I clicked add file/create new file. I named the file.nojekyll
and added nothing to it, then committed changes. - Now it verifies, and I can update my username to
shannonkay.github.io
in the Bluesky settings. - After setting up a custom domain on GitHub Pages(in this case, a subdomain) I was able to change my Bluesky handle to it without changing any other settings. I verified and updated my username to
github.shannonkay.com
Glitch
The glitch subdomain didn't work as a Bluesky subdomain. I tried making a glitch.me subdomain handle with the text file uploading method on my homepage test project. It didn't work. Maybe they have hidden folders blocked or something. Too bad, I thought their glitch in bio link tree project might be a good option to combine with a subdomain handle. You could still make the project, download it, and upload it to one of the other free hosts that work with Bluesky usernames.
How do I change my Bluesky username to my domain name?
I've written a whole new guide about how to change your Bluesky username to a domain name handle.
- Official doc: How to verify your Bluesky account
- NeoCities Bluesky Handles - Tutorial about using the "No DNS panel" method. For Neocities, but the method works elsewhere. You don't need it for Neocities anymore, now that they have the built-in panel. It's still a good explanation of how the method works.
Tip: Your account's
did:
text string is the same with DNS method or No DNS panel and does not change. You can set up domains and subdomains with yourdid:
text file and change your Bluesky username back to previously used ones, and they will still verify as long as the file is still there.
Where can I buy a domain name?
I suggest porkbun.com
Why would I want to use a subdomain for my Bluesky handle if I have a domain name?
Maybe you have a family, group, company, or team, and you want everyone to get a handle on the subdomain.
Even if it's just you, you might have reasons to want a subdomain handle. If you have a domain name of your name, like shannonkay.com
, but your usual online username is something else like bluecat74
, you could use a subdomain to keep your screen name as part of your username, but also be verified with your domain and make your username @bluecat74.shannonkay.com
. If you make a subdomain to use as a Bluesky handle, I recommend also making it go somewhere. Forward it to your main website, or put a profile page or link-tree-style page at that subdomain.
You might also use a subdomain to create alternate accounts, like a work account, art account, or photos account, using different subdomains as usernames.