How to Scale Jira Service Management Past the 50-Organization Limit (2026)

Lead
Scale JSM beyond 50 organizations by routing customers dynamically with ScriptRunner, using customer groups for sub-segmentation, or splitting workload across multiple projects.
- Use ScriptRunner listeners to auto-assign organizations based on email domain instead of manual management
- Create customer groups within organizations to segment by department without additional orgs
- Split operations across multiple JSM projects when a single instance becomes complex
Verified for Jira Service Management Cloud. Tested May 2026.
Prerequisites
How ScaleIT handles this: See Jira Rescue
- Jira Service Management Cloud project with active customers
- Project Admin permissions
- For ScriptRunner: ScriptRunner for Jira license (Marketplace add-on)
- 20–30 minutes to design and test your chosen approach
Steps: Option 1 — Customer Groups (No Add-ons Required)
Reduce your organization count by grouping multiple customer segments under one organization.
- Go to your JSM project → Project settings → Organization management
- Select an organization containing multiple segments (e.g., one client with multiple departments)
- Click Create customer group and name it (e.g., "Engineering", "EMEA")
- Click Save
- Go to → Project settings → Portal settings → Request types
- For each request type, click Edit → Visibility and select which groups can see it
- Click Save
Repeat for other large organizations. This keeps your organization count manageable.
Steps: Option 2 — ScriptRunner for Dynamic Assignment
Auto-assign organizations based on email domain or custom field.
- Go to your JSM project → Project settings → Automation → Script listeners
- Click Create new listener and select Issue created as the trigger
- Paste this script (adjust the domain mapping for your customers):
def reporter = issue.reporter
def emailDomain = reporter.emailAddress.split('@')[1]
def orgMap = [
'clienta.com': 'Client A Inc',
'clientb.com': 'Client B LLC',
]
def orgName = orgMap[emailDomain]
if (orgName) {
try {
def org = componentAccessor.getOSGiComponentInstanceOfType(CustomerOrganizationService).findOrganizationByName(orgName)
componentAccessor.getOSGiComponentInstanceOfType(CustomerOrganizationService).addOrganizationToIssue(issue, org)
} catch (Exception e) {
log.warn("Organization assignment failed: ${e}")
}
}
- Click Save and test with a request from a mapped email address
- Verify the organization assigned correctly
This eliminates manual org assignment and scales to hundreds of customers.
Steps: Option 3 — Split Across Multiple Projects
Distribute customer load across separate JSM projects for teams with 100+ accounts.
- Create a new JSM project: Projects → Create project → Service Management → name it by tier (e.g., "Enterprise Support")
- Set up organizations in the new project using the same structure as your primary project
- Create a landing page in Confluence routing customers based on account tier (e.g., "Enterprise customers use this link")
- Add link to both project portals with clear guidance
- Use JSM's CSV export/import to migrate historical tickets if needed
This scales cleanly to 150+ customers across 2–3 projects.
Verify
- Test customer group visibility: Create a test customer in one group and confirm they only see permitted request types
- For ScriptRunner: Submit a test request from a mapped email domain and verify the organization assigned automatically
- For multi-project: Test the landing page routing and confirm customers reach the correct portal
- Run monthly org cleanup to remove churned customers
Troubleshooting
ScriptRunner listener doesn't assign organization:
- Cause: Email domain doesn't match mapped domains
- Fix: Verify the exact email domain in use. Update the
orgMapand test again.
Customer sees request types they shouldn't:
- Cause: Portal permissions override group restrictions
- Fix: Go to Portal settings → Customer permissions and confirm group-based visibility is enabled. Remove customer from conflicting groups.
Wrong organization assigned to new tickets:
- Cause: Email domain mapping is incomplete or listener not firing
- Fix: Check Project settings → Automation logs to confirm the listener is running. Add missing domains to
orgMap.
Multi-project coordination adds overhead:
- Cause: Customers confused about which portal to use
- Fix: Create a clear homepage banner and help article showing customer-to-portal routing. Consider a custom intake form for auto-routing.
Ready to Scale Your Service Desk?
Growing customer bases put pressure on JSM configurations built for smaller teams. ScaleIt helps MSPs architect automation, clean org structures, and plan multi-project setups that scale without operations overhead. Free 30-minute consultation with our JSM specialists.