Role sync — Discord roles → VRChat group roles¶
Role sync mirrors a Discord role onto a VRChat group role: when a linked member gains a configured Discord role, LogDog gives them the mapped role in your VRChat group — and removes it when they lose the Discord role or leave the server.
It builds on account linking: only members who've linked their VRChat
account can sync, since that's how LogDog knows which VRChat user to update. It's off by
default and set up per server with the /config panel.
Linking comes first
Role sync only applies to linked members. Set up account linking and have your members link before (or alongside) configuring role sync — unlinked members are simply skipped.
Permission LogDog needs in your VRChat group
To change a member's group roles, LogDog's VRChat account needs the Assign Roles
permission in your group. The /config panel runs a live check and shows a clear
✅ / ❌ status — if it's ❌, grant the permission in your VRChat group's role settings and hit
Refresh. LogDog won't let you add a mapping until it can actually assign roles.
Setting it up¶
Run /config (admins only) and pick Role Sync. From the panel you can:
- Check the permission status — make sure it shows ✅ that LogDog can assign roles in your group (see the warning above if not).
- Pick a Discord role and the VRChat group role it should map to.
- Add mapping — LogDog saves it and immediately starts syncing every currently-linked member who already has that Discord role (the initial backfill).
- Repeat for as many role pairs as you like. You can map several Discord roles, and even map one Discord role to more than one VRChat role.
That's it. From then on, LogDog keeps the VRChat role in step with the Discord role automatically.
Big roles sync gradually
If you map a Discord role that already has a lot of members, the initial sync can take a few hours. LogDog applies changes gradually on purpose so your VRChat group account is never rate-limited by VRChat. You can keep using everything normally while it works through them.
How it works day to day¶
- Gains the Discord role → LogDog adds the mapped VRChat group role.
- Loses the Discord role → LogDog removes that VRChat group role.
- Leaves the Discord server, or runs
/unlink→ LogDog strips the VRChat roles it had synced for that member. - Re-sync now — a button on the panel that re-checks every mapping and queues anyone who's missing a role they should have. It skips members who are already in sync, so it's safe to press anytime.
Who gets synced¶
Only linked members sync, and a server's cross-server trust setting (the same one used by account linking) decides which links count:
- Off (default) — only members who linked in this server sync.
- On — any member who has linked their account (in any server that trusts links) syncs here too.
Good to know¶
LogDog can't outrank itself
VRChat won't let an account change the roles of a member whose rank is the same as or higher than its own — this includes group owners. Those members are skipped automatically; it's a VRChat restriction, not a bug. Give LogDog's account a sufficiently high role if you need it to manage higher-ranked members.
Removing a mapping doesn't strip existing roles
Deleting a mapping stops future syncing for that role, but it doesn't pull the VRChat role off members who already have it — so removing the bot from a server never yanks roles out from under your members. If you want those roles gone, remove them in your VRChat group.
Failure notifications¶
If some members can't be synced (for example, the rank limit above), LogDog sends the admin who configured the sync one summary message listing what couldn't be applied and why, plus a CSV with the full list. It groups everything into a single notification rather than pinging repeatedly, and it doesn't bother you about members who were already in sync.