Discord Role Connections let server moderators and admins link a user’s membership in a specific role to an external account, such as Spotify or Steam. This feature automates role assignment based on a user’s activity or subscription status, reducing manual moderation work. When a user links their Spotify or Steam account, Discord can automatically assign or remove roles when the external account meets certain criteria, like owning a specific game or being a Spotify Premium subscriber. This article explains how to set up Role Connections for Spotify and Steam, including the prerequisites, configuration steps, and common pitfalls to avoid.
Key Takeaways: Setting Up Role Connections for Spotify and Steam
- Server Settings > Role Connections > Create Connection: Enables linking a role to an external service like Spotify or Steam.
- Spotify Premium or Steam game ownership: The external account must meet the condition you set, such as having an active Premium subscription or owning a specific game.
- User Settings > Authorized Apps > Manage Role Connections: Users must authorize the server to read their external account data before the role is assigned.
What Are Discord Role Connections and How Do They Work
Role Connections are a server moderation feature that automates role assignment based on a user’s linked external accounts. Unlike traditional role assignment where a moderator manually grants a role, Role Connections use a trigger condition defined by the server admin. When a user links their Spotify or Steam account and that account satisfies the condition — for example, owning a specific game or having an active Spotify Premium subscription — Discord automatically assigns the corresponding role. If the condition is no longer met, Discord removes the role.
The feature relies on OAuth2 authorization. The server requests permission to read specific data from the external service. Users must approve this request in their Discord User Settings under Authorized Apps. Once approved, Discord checks the condition periodically and updates the role accordingly.
Prerequisites for using Role Connections:
- You must have the Manage Server permission or be the server owner.
- The server must have at least one role created before you can set up a connection.
- Users must have a linked Spotify or Steam account in their Discord User Settings under Connections.
- Spotify integration requires a Premium subscription to check subscription status. Free tier users cannot be detected as Premium.
- Steam integration requires the user to have a public Steam profile and own the specific game you want to check.
Steps to Set Up Role Connections for Spotify or Steam
The setup process is identical for both Spotify and Steam. Follow the steps below to create a Role Connection for either service.
- Open Server Settings
Right-click your server icon in the left sidebar and select Server Settings. Alternatively, click the server name at the top of the channel list and choose Server Settings from the dropdown menu. - Navigate to Role Connections
In the left menu, scroll down to Role Connections under the User Management section. Click it to open the Role Connections page. - Create a New Connection
Click the Create Connection button. A dialog box appears asking you to select the external service. Choose Spotify or Steam from the list. - Select the Role and Set the Condition
After selecting the service, pick the role you want to assign from the dropdown. Then define the condition. For Spotify, you can choose Has Spotify Premium. For Steam, choose Owns Game and enter the game’s App ID. To find a Steam App ID, open the game’s store page in a browser — the URL contains a number likeapp/730for Counter-Strike 2. Enter that number. - Save the Connection
Click Save to create the Role Connection. The connection now appears in the list with a status indicator showing whether it is active. - Inform Users to Authorize the Connection
Users will not receive the role automatically until they authorize the server to read their external account data. Each user must go to User Settings > Authorized Apps, find your server in the list, and click Authorize. They need to approve the specific permissions requested — for Spotify, this is Read your Spotify account data; for Steam, it is Read your Steam profile and game library. - Wait for Role Assignment
After authorization, Discord checks the condition within a few minutes. If the condition is met, the role is assigned. If not, the role remains unassigned until the condition changes.
Common Mistakes and Limitations When Using Role Connections
Role Connection Does Not Appear in the List
If you do not see the Role Connections option in Server Settings, your server may not meet the feature requirements. Role Connections are available on all servers, but the server must have at least one role created. Create a role first under Server Settings > Roles, then return to Role Connections.
Users Do Not Get the Role After Authorizing
The most common cause is that the user’s external account does not meet the condition. For Spotify, only Premium subscribers trigger the role. Free tier users never get the role. For Steam, the user must own the exact game identified by the App ID. DLC or free versions may not count. Also, the user’s Steam profile must be set to Public in their Steam Privacy Settings. If it is set to Friends Only or Private, Discord cannot read the library.
Role Connection Stops Working After a While
Discord periodically rechecks the condition, but if the user revokes authorization in their Authorized Apps settings, the role is removed. Users may also unlink their Spotify or Steam account entirely, which breaks the connection. Remind users to keep their accounts linked and authorized.
Cannot Use Multiple Conditions for One Role
Each Role Connection supports only one condition. You cannot combine conditions like “owns Game A AND has Spotify Premium” for a single role. To achieve multi-condition logic, create separate Role Connections for each condition and assign different roles, or use a bot like Carl-bot or MEE6 that supports custom role assignment based on multiple criteria.
Role Connection Does Not Work with Bots
Role Connections are a native Discord feature and cannot be triggered or managed by bots. Bots cannot create, edit, or delete Role Connections. All configuration must be done manually through Server Settings.
Discord Role Connections: Spotify vs Steam
| Item | Spotify | Steam |
|---|---|---|
| Condition Available | Has Spotify Premium only | Owns a specific game by App ID |
| Prerequisite for User | Linked Spotify account with Premium subscription | Linked Steam account with public profile and owned game |
| Data Read by Discord | Subscription status (Premium or free) | Game library and profile visibility |
| Role Update Frequency | Checked every few minutes | Checked every few minutes |
| Common Use Case | Grant a VIP role to Premium subscribers | Grant a gamer role to owners of a specific game |
Role Connections for Spotify and Steam are both limited to a single condition per connection. Neither supports negative conditions, such as “does not own a game” or “does not have Premium.” For more complex logic, use a moderation bot that can read external account data via Discord’s API.
Setting up Role Connections for Spotify or Steam streamlines server management by automating role assignment based on real-world account status. After configuring the connection, test it with a user who meets the condition to confirm the role is assigned. For advanced automation, consider combining Role Connections with Discord’s built-in onboarding or welcome screen features to guide new members through the authorization process.