Salesforce Team Sharing is a permission model that extends record access beyond ownership and role hierarchy. It enables cross-functional collaboration by allowing record owners or administrators to share specific records with teams, public groups, or individual users without modifying org-wide defaults or restructuring your role hierarchy.
How Does Team Sharing Actually Work?
Team sharing operates through sharing rules that grant access to specific records based on team membership rather than organizational hierarchy. When a user is added to a team, they automatically gain access to records shared with that team.
The key mechanisms include:
- Manual sharing: Record owners share individual records
- Sharing rules: Administrators create criteria-based sharing
- Apex managed sharing: Programmatic sharing for complex scenarios
- Teams: Account Teams, Opportunity Teams, Case Teams
Implementation Note
Team sharing rules are evaluated at runtime. Changes to team membership take effect immediately without requiring a full sharing recalculation.
Sharing recalculation time is the metric that catches most orgs off guard. Iโve seen implementations where adding one more criteria-based rule pushed recalc from minutes to hours. The orgs that manage this well treat sharing rules like technical debt: they review them periodically, remove unused ones, and consolidate overlapping criteria before performance becomes a problem.
What Problems Does Team Sharing Solve?
Traditional role hierarchy works vertically: managers see what their direct reports see. But modern organizations donโt operate purely vertically.
Common challenges team sharing addresses:
- Cross-functional deal teams: Sales, legal, and finance need to collaborate on the same opportunity without being in the same reporting line
- Regional specialists: A product expert needs visibility into accounts across multiple territories
- Project-based access: Temporary access for initiative-specific collaboration
- Partner collaboration: External partners need limited access to specific records
The scenario I encounter most often: teams need to collaborate on custom objects (Projects, Engagements, client-specific records) but standard sharing doesnโt fit. Before, this meant either complex Apex sharing code that nobody wants to maintain, or admin-managed sharing records that fall out of sync within weeks. The orgs that move to team-based sharing on custom objects usually report two things: less admin overhead and fewer โI canโt see this recordโ support tickets.
When Should You Choose Team vs. Role-Based Sharing?
The decision depends on your access pattern:
| Scenario | Recommended Approach |
|---|---|
| Manager needs visibility to teamโs records | Role Hierarchy |
| Cross-department collaboration on specific records | Team Sharing |
| Executive dashboards across org | Role Hierarchy |
| Project-based temporary access | Team Sharing |
| Compliance-based access restrictions | Sharing Rules + Teams |
Performance Consideration
Excessive sharing rules can impact query performance at scale. Test with production-like data volumes before deploying.
How Do You Implement Team Sharing in Your Org?
Step 1: Define Your Sharing Model
Start by mapping your collaboration patterns:
- Who needs to share records with whom?
- Is the access pattern temporary or permanent?
- What level of access is required (Read, Edit)?
Step 2: Configure Teams and Groups
For standard Salesforce team sharing:
Setup โ Users โ Public Groups โ New Group
Setup โ Accounts โ Account Teams โ Enable
For flexible team structures, consider Flexible Team Share which extends native team functionality to any object.
Step 3: Create Sharing Rules
Navigate to Setup โ Sharing Settings and create criteria-based or owner-based sharing rules that reference your teams.
Step 4: Test and Validate
Use the Sharing Hierarchy button on records to verify access grants are working as expected.
Every sharing model Iโve implemented gets the same test: I create users for each role and profile combination, then systematically check what they can and canโt access. Can they see the record? Edit it? See related records? Itโs tedious, but skipping this step is how sharing bugs make it to production. The bugs are always the same: someone assumed access would cascade, or a permission set grants more than expected. Testing catches these before users do.
What Are Common Team Sharing Pitfalls?
1. Over-Sharing
Opening access too broadly defeats the purpose of your security model. Start restrictive and expand based on demonstrated need.
2. Orphaned Sharing Records
When users leave teams, their manual sharing records may persist. Implement cleanup routines.
3. Performance at Scale
Large numbers of sharing rules require careful indexing and query optimization. Monitor SOQL query performance.
4. Inconsistent Patterns
Different teams implementing sharing differently creates confusion. Document and standardize your approach.
Architecture Decision Record
Document your sharing model decisions in ADRs. Future administrators will thank you.
Key Takeaways
- Team sharing extends, not replaces, role hierarchy: use it for horizontal collaboration patterns
- Start with clear requirements before implementing. Map who needs access to what
- Test at scale with production-like data volumes before deployment
- Document your decisions in architectural decision records for maintainability
- Consider managed packages like Flexible Team Share for complex team structures
Related Articles
Written by
Tucario Team
Salesforce Architects & Engineers
Tucario is led by a Salesforce Certified Technical Architect (CTA) and staffed by senior architects and engineers with multi-cloud delivery experience. The team has shipped enterprise Salesforce programs across Sales Cloud, Service Cloud, Marketing Cloud, Experience Cloud, Field Service, Revenue Cloud, and B2B Commerce, with deep MuleSoft integration expertise. Our writing reflects what we see on real projects: where standard configurations hit their limits, how to design systems that hold up after release, and how to keep technical debt out of your platform.