One badge.
Every client.
Zero exceptions.
CustomBadges prints your badge on anyone's screen: Vencord, Equicord, BetterDiscord, it doesn't matter which client they're on. Set it once on your account, and it's stamped everywhere from then on.
CustomBadges
One Badge, Every Client
by ItzMeShadow999
Works everywhere Discord does
Install the plugin that matches your client. Vencord-based clients (Equicord and friends) all use the same CustomBadges core.
Vencord
Full native support. Install straight from the CustomBadges repo and your badge shows to every client on this list.
github.com/ItzMeShadow999/CustomBadges
Equicord
Equicord is Vencord-based, so it uses the exact same CustomBadges plugin, no separate build needed.
github.com/ItzMeShadow999/CustomBadges
Other Vencord Forks
Any Vencord-based client (forks, mods built on top of Vencord) can install CustomBadges the same way.
github.com/ItzMeShadow999/CustomBadges
BetterDiscord
A dedicated BD build of CustomBadges, so BetterDiscord users get the same cross-client badge display.
github.com/ItzMeShadow999/CustomBadgesBD
UserScript
Run CustomBadges as a browser userscript (Tampermonkey/Violentmonkey) on Discord's website, no client mod required.
github.com/ItzMeShadow999/CustomBadgesUS
Website
Manage your badges directly on this site, connect your Discord account, add badges, and set your active one, no plugin needed. Don't want to edit or use a client? No worries, you can still set a custom badge via the website.
Website
Revenge
Mobile support is coming. Revenge users will be able to set and see CustomBadges right from the app.
github.com/revenge-modHow to install (Main)
No forms, no DMs. Pick your client, grab the repo, and set your badge.
Pick your client
Vencord, Equicord, any Vencord fork, or BetterDiscord, find your card above.
Install the plugin
Follow the linked repo's README to add CustomBadges to your client.
Set your badge
Configure it once in settings, it's cross-client from that point on.
Get seen everywhere
Anyone running CustomBadges on any supported client sees your badge, no matter what they use.
Frequently Asked Questions
Common questions about badge storage, sharing, limits, and troubleshooting.
Your badge data expires 180 days after your last update, every time you set, switch, or delete a badge, that 180-day timer resets. So as long as you touch the plugin at least occasionally, nothing gets deleted.
If you go longer than that without any changes, your data quietly expires from the backend and you'd need to set your badge up again.
Use Share Badge to export your current active badge (image, name, and all style settings) as a copyable code, it's base64-encoded JSON. Paste someone else's code into Import Badge Code and hit Import Badge to apply their look as your own.
Invalid or corrupted codes will just show an error toast instead of silently failing.
Yes, badge writes (setting, switching, or deleting a badge) are rate-limited server-side. You won't hit it under normal use, it exists to stop abuse/spam, not to get in your way.
Export is capped at 12, since that's also the max number of badge slots you can have saved at once, a pack you make (Make Pack (Copy JSON)) can never contain more than 12 badges anyway.
Import is different: a pack file can technically contain as many badges as you want, but the plugin will only import the first 6 from it. Anything beyond that gets ignored.
Recommended: keep packs you share to 6 badges so people get everything in one import. If you've already got a bigger pack, split it into multiple packs of 6 rather than one large one.
You can save up to 12 badges per account and switch which one is active. This is a server-side limit to keep storage reasonable for everyone, delete an old badge if you're at the cap and want to add a new one.
- Badge changes are saved server-side and can take a moment to propagate. Try switching channels/reopening your profile. If it still doesn't show, check that your image URL is a direct link ending in
.png,.jpg,.jpeg,.gif, or.webp, links to a webpage instead of the raw image file will be rejected. - Check whether you have Hide Own Badge toggled on.
That split is expected during an outage. Viewing badges (yours or anyone else's) is a public, unauthenticated read, so it keeps working even if other parts of the backend are having issues. Verifying, setting, switching, or deleting a badge all require a fresh Discord OAuth "verify" round-trip first, if that flow (or the write path behind it) is degraded, those actions will fail even though reads look totally normal.
Check the status page, if Discord Verify or KV Writes is showing degraded/failing there, that's the cause, and it's already a known, tracked issue rather than something wrong on your end. Nothing you do locally (reinstalling the plugin, re-verifying repeatedly, etc.) will fix it, it needs to clear on the backend first, so it's best to just wait it out and try again once that subsystem goes back to operational.
Have more questions?
Please consider joining the server for more FAQs and support.
This build is for testers, not the main release. Beta setup can corrupt, reset, or vanish without warning, that's expected here. Read and agree to the terms before opting in.
Read the Terms of Service