Sync Linear Teams With Slack User Groups
SyncMyGroup team · October 12, 2026
In most engineering orgs that use Linear, each Linear team has a twin in Slack. The Payments team in Linear is @payments in Slack. The Platform team triages in Linear and gets pinged as @platform when something breaks.
Those two lists are supposed to be the same people. They drift for the usual reasons: someone joins the Linear team when they pick up a ticket and never gets added to the handle; someone moves to another team in Slack terms but stays in the old Linear team for months; a contractor rolls off and is removed from one but not the other.
This post covers why the two drift, what Linear offers natively, how to choose which side is the source, and how to set up the sync.
Why the two drift
Linear teams and Slack user groups are maintained by different people for different reasons.
- Linear team membership decides whose issues, cycles and triage queue you see, and which team's notifications you get. Engineers often add themselves when they start working on something.
- Slack user groups decide who gets notified when someone types
@payments. They're usually created by a manager or an admin, then forgotten.
Nobody owns keeping them aligned, so nobody does. The result shows up in small ways: an @payments mention that misses two people who joined last month, or an incident ping to a handle that includes someone who moved teams in the spring.
What Linear offers natively
Linear's own route to managed team membership is SCIM with group push. According to Linear's documentation (2026):
- SCIM provisioning is available on the Enterprise plan, requires SAML SSO, and is enabled through Linear's sales team.
- Group push is supported. Pushed groups map 1:1 with teams in Linear. You can link an IdP group to an existing team by importing teams from Linear first, or by setting the team's SCIM group mapping to the IdP group's display name.
- Once linked, the team's membership is solely managed through your identity provider. You can't edit it in Linear.
- Deleting a pushed group in the IdP removes all members from the Linear team and converts the team to private. Issues are left as they were.
- Role groups (
linear-admins,linear-guests, andlinear-ownerson Enterprise) assign workspace roles but don't create or sync teams.
That's a solid model if you're on Linear Enterprise with an IdP that drives everything. It doesn't help with Slack, though. Your IdP would need to push the same groups into Slack separately, which brings its own requirement: Slack's SCIM API is available on Business+ and Enterprise plans.
If you're on Linear's Free, Basic or Business plan, or your Slack workspace is on Pro, the SCIM route isn't available on one side or the other.
Pick the source of truth first
Before any configuration, decide which side wins when they disagree. There are three sensible setups.
| Source | Direction | Choose this when |
|---|---|---|
| Linear team | Linear → Slack | Engineers manage their own team membership in Linear, and the handle should follow |
| Slack user group | Slack → Linear | Managers maintain @handles carefully, and Linear should match |
| Google Group (or Entra ID) | Google → Linear and Google → Slack | A directory group already defines the team and both tools should follow it |
Linear → Slack is the most common. The Linear team is where the work is, so it's usually the more accurate list. The Slack handle follows.
A directory group driving both is the cleanest at scale. If payments@company.com already exists, use it as the source for the Linear team and the Slack user group. Neither tool is then the master of the other, and onboarding becomes "add to the Google Group." See Google Group → Linear and our post on automating onboarding into Slack groups.
Whichever you choose, write it down and tell the team. A sync that reverts someone's manual change looks like a bug to anyone who didn't know which side was authoritative.
Things to check in Linear before you sync
Private teams
Linear's private teams are available on the Business and Enterprise plans. Visibility rules differ by plan: on non-Enterprise paid plans, workspace admins can see all private teams; on Enterprise, workspace owners can add themselves but only see a private team's issues after joining.
For sync, that means the account you connect needs to be able to see the private teams you want to sync. If it can't see a team, it can't read or update it. Decide which account authorises the integration with that in mind.
Sub-teams
Linear added sub-teams in 2025 (Business and Enterprise), and multi-level nesting in April 2026 (Enterprise). Linear's rule is that members of a sub-team must also be members of the parent team, with guests as the exception.
That has two consequences for sync:
- If you sync into a sub-team, the people you add also need to be in the parent. Sync the parent too, or make sure the parent already includes them.
- If you sync from a parent team to Slack, decide whether the Slack handle should represent the parent (everyone) or whether each sub-team gets its own handle. Usually both:
@product-engfor the parent,@paymentsand@growthfor the children.
Guests
Linear has guest users. Slack has guests too, and Slack's help center notes that guests and Slack Connect users can't be added to your organisation's user groups. A Linear guest on the Payments team won't land in @payments, however the sync is configured. If they need to be reachable, add them to the team's channel instead.
Seats
Before syncing into Linear, check how adding someone to a team affects your Linear workspace membership and billing. Only add people who should be Linear users.
Setting it up with SyncMyGroup
SyncMyGroup syncs Linear teams with Slack user groups and channels in either direction, without SCIM on either side. Here's the setup for Linear → Slack.
1. Connect Linear and Slack
In the app, add both integrations. For Slack, the install needs permission to manage user groups. If your workspace restricts who can edit user groups, install with an account that has that permission, or writes will fail.
2. Create a sync team
One sync team per mapping: one Linear team to one Slack user group. Resist building one big mapping. Separate ones are easier to pause, debug and explain.
3. Choose source and destination
Source: the Linear team (for example, Payments). Destination: the Slack user group @payments. If the user group doesn't exist yet, SyncMyGroup can create it.
You can add a second sync team with the same source and the #payments channel as the destination. SyncMyGroup will add and remove channel members to match, so the handle and the channel stay consistent.
4. Set filters and permanent users
- Exclude anyone who's in the Linear team for visibility only — a PM shadowing two teams, a designer who works across all of them — if they shouldn't be paged by
@payments. - Permanent users stay in the destination regardless of the source. Use this for the engineering manager who isn't in the Linear team but should be in the handle, or a bot that needs to be in the channel.
5. Read the preview
The preview shows exactly who will be added to and removed from @payments before anything is written. On a handle that's drifted for a year, expect removals. Check each one. A wrong removal usually means the Linear team is missing someone, not that the sync is wrong.
6. Turn on notifications and run
Subscribe an ops or team channel to changes:
@SyncMyGroups subscribe payments
Every add and remove is posted there. It doubles as an audit trail and as an early warning if a mapping is wrong. @SyncMyGroups help lists the other commands.
Going further
Linear rarely sits on its own. Common companions:
- GitHub → Linear if your GitHub teams are the most accurate list of who works on what.
- Jira → Linear during a migration, so both tools have the same teams until you switch off Jira.
- Slack → Linear if your Slack user groups are the curated list and Linear should follow.
For the bigger picture of which tools should drive which, see one-way vs two-way group sync.
FAQ
Does Linear have a native Slack user group sync?
Linear's documented route to managed team membership is SCIM group push from an identity provider, which Linear lists as an Enterprise-plan feature in 2026. Syncing those groups into Slack is a separate job for your IdP (which needs Slack Business+ or Enterprise for SCIM) or for a sync tool.
Can I sync a Linear sub-team to its own Slack user group?
Yes. Treat each sub-team as its own mapping. Remember Linear's rule that sub-team members must also be in the parent team, so if you sync into a sub-team, make sure the parent covers those people.
What happens if someone edits the Slack user group by hand?
If Linear is the source, the next sync reverts the change. That's the point: one side wins. If people need to be in the handle without being in the Linear team, add them as permanent users instead of editing the group directly.
Should Linear or Slack be the source?
Pick the one the team actually maintains. In most engineering teams that's Linear, because people join teams there as their work changes. If you already have a Google Group per team, use that for both.
Set up your first Linear ↔ Slack mapping in SyncMyGroup. It's free up to 5 users, and the Starter plan is $2/user/month. See pricing or browse all workflows.