...
 

Multi-tenancy Types for IOMAD Issues and Fixes

City-like grid of buildings representing IOMAD tenant structures - Multi-tenancy Types for IOMAD Issues and Fixes.

IOMAD extends standard Moodle to support organizational learning in a multi-tenant environment, allowing multiple company tenants to operate within one platform while departments and branches can be structured within those tenants for management and reporting. Yet the complexity of tenancy combined with licensing introduces challenges as you scale: course visibility may bleed, permissions may get tangled, catalogues exposed across tenants and duplication becomes operational overhead. This article illustrates and explains major multi-tenancy and licensing types in IOMAD, identifies issues and limitations we have encountered (such as the need to duplicate courses for each branch), and presents recommended fixes to address them.

I recently migrated my site to Mindfield from another host, and the experience couldn’t have been better. Mindfield kept working until they were certain that my site was operating as well as it was before, and they even helped clean up a few issues to improve my site’s performance – issues my prior host never mentioned. I also found Mindfield’s communication to be excellent. Before the migration, they prepared me for what to expect, and during the migration they kept me well-informed. No small feat considering that changing hosts is inherently stressful! They also provided clear and concise explanations when required. I’d highly recommend Mindfield if you’re looking for an IT consultant, developer, or host.

 

Jim Benedek
Owner, Student First Media Inc.

review Source: Google Reviews

 

Outline

 

 

Why Multi-Tenancy and Licensing Issues Matter

Balanced scale showing buildings to illustrate multi-tenancy challenges - Multi-tenancy Types for IOMAD Issues and Fixes.

Multi-tenancy provides powerful tenant separation, but misconfiguration leads to unpredictable results. These problems matter because they directly impact platform stability, maintenance workload, security, reporting accuracy, and user experience.

  • Visibility and Permission Risks

Incorrect catalogue rules or license configurations can cause users from one branch or company to see courses intended for another. This is one of the most common issues reported in IOMAD environments.

  • Course Duplication and Maintenance Burden

One of the biggest issues in IOMAD is the assumption that licenses require separate course copies for each branch. This results in heavy maintenance overhead.

  • Reporting and Data Leakage

When roles or licenses bypass tenant boundaries, managers may see data from other tenants, undermining trust in reports.

  • Broken Learning Paths and Enrollment Drift

When users move between tenants, their training plans and enrollment logic may not update automatically.

  • Licensing Constraints Can Force Inefficiencies

Licenses in IOMAD exist inside a tenant. This creates false assumptions that each tenant needs its own course version. Without correct use of cohorts and catalogue filtering, administrators are forced into unnecessary duplication.

IOMAD is widely used across industries that require centralized training with strong organizational separation. Common examples include professional associations, franchise networks, healthcare and clinical training providers, financial services organizations, retail and hospitality chains, manufacturing and logistics companies, government or regulatory bodies, and corporate learning academies supporting multiple subsidiaries or regions. In all of these environments, maintaining clear tenant boundaries while avoiding unnecessary duplication is critical for scale.

Understanding these risks helps organizations avoid major maintenance and governance problems as they scale.

 

Multi-Tenancy Types in IOMAD and Licensing Models

Centralized hub with connected nodes symbolizing IOMAD licensing models - Multi-tenancy Types for IOMAD Issues and Fixes.

Before configuring IOMAD, it is important to distinguish between a tenant and the organizational structure that exists inside a tenant.

In IOMAD, a company represents a tenant. Departments and sub-departments organize users within that company, while parent and child companies allow organizations to create multiple related tenants when stronger separation is required.

A practical IOMAD hierarchy can therefore look like:

IOMAD Site → Parent Company Tenant → Child Company Tenant → Departments → Sub-departments

The correct level depends on how much separation each part of the organization requires.

1. Company Tenant

A company is the primary tenant level in IOMAD. Each company can have its own users, management structure, branding, course access, reporting, and configuration.

Use a Company Tenant When

Create a separate company tenant when an organization, customer, subsidiary, or business unit requires meaningful separation such as:

  • Separate branding
  • Separate company administrators
  • Independent user management
  • Separate catalogue or course access
  • Tenant-specific reporting
  • Separate licensing or training administration

For example, if a training provider serves five unrelated corporate customers, each customer would normally be created as its own company tenant rather than as a department of the training provider.

2. Parent and Child Company Tenants

IOMAD also supports parent and child companies. This is useful when separate business entities need their own tenant environments but still belong to a larger organizational structure.

A parent company can sit above multiple child company tenants, allowing the organization to preserve separation while supporting centralized oversight.

Use Parent and Child Companies When

This model works well for:

  • Corporate groups with multiple subsidiaries
  • Multi-brand organizations
  • Franchise structures requiring stronger separation
  • Regional companies with independent administration
  • Training resellers managing their own customers

For example:

Northstar Manufacturing Group
Northstar Canada — Child Company Tenant
Northstar USA — Child Company Tenant

Each regional company can operate as a separate tenant while remaining connected to the parent organizational structure.

3. Departments Within a Tenant

Departments are not separate tenants. They are used to represent the internal organizational hierarchy inside a company tenant.

Departments can also contain sub-departments, allowing the structure to follow an organization’s reporting hierarchy.

For example:

Northstar Canada — Company Tenant
→ Toronto
→ Operations
→ HR
→ Sales
→ Vancouver
→ Operations
→ HR
→ Sales

Use Departments When

Use departments for:

  • Branches
  • Locations
  • Internal divisions
  • Teams
  • Functional departments
  • Management and reporting hierarchies

Departments are the better choice when users belong to the same tenant but need to be segmented for management, reporting, training assignment, or organizational purposes.

4. Shared Courses Across Tenants

Shared courses are not another tenant type. They are an access and course-management model used when multiple company tenants need the same training content.

Instead of creating a separate copy of the same course for every tenant, organizations can maintain a master course and control access using appropriate company assignments, licensing, enrolment, and catalogue rules.

This reduces course duplication while allowing tenant-specific user management and reporting.

Use Shared Courses When

Use this model when:

  • Multiple tenants require identical training
  • Course content is centrally maintained
  • Tenant-specific course copies are not required
  • Administrators want to reduce update and maintenance overhead

The key is separating course ownership and maintenance from tenant access and reporting.

 

Why These Issues Occur: Root Cause Analysis

Layered blocks with warning symbols representing root cause analysis - Multi-tenancy Types for IOMAD Issues and Fixes.

Across IOMAD deployments, the same root causes appear repeatedly:

  • Misunderstood Licensing Model (“Donuts and Desks”): Licenses exist inside tenants, not globally. This concept, commonly explained in IOMAD as Donuts and Desks, describes how access (the donut) is separated from organizational structure (the desk). Misunderstanding this relationship leads directly to unnecessary course duplication and incorrect catalogue exposure.
    For a detailed explanation, refer to the official IOMAD documentation on Donuts and Desks.
    Why licenses are like donuts and desks… – IOMAD
  • Poor Category Architecture: Global categories cause cross-tenant visibility.
  • Manual Enrollment Drift: Users manually enrolled into courses bypass tenant rules.
  • Department or Tenant Moves Without Plan Rebuilds: Training plans remain attached to old structures.
  • Excessive Use of Blanket Licenses: Blanket licenses ignore tenant boundaries when configured incorrectly.
  • Reactive Duplication of Courses: Instead of using cohorts and license rules, administrators duplicate everything to solve access issues quickly.

Once these root causes are addressed, architecture becomes far more stable and scalable.

 

Solutions and Recommendations

Gear and system icons illustrating solution planning - Multi-tenancy Types for IOMAD Issues and Fixes.

Short Term Fixes

These are immediate actions that resolve common multi-tenant issues:

  • Audit All Licenses

Ensure licenses do not span tenants unintentionally.

  • Reduce Duplicate Courses

Consolidate duplicates into one master version.

  • Tighten Role Permissions

Ensure managers do not have global view capabilities.

  • Fix Catalogue Structure

Make sure course categories mirror tenant boundaries.

  • Validate All Enrollment Methods

Check that:

    • self enrollment is tenant restricted
    • training plans reflect current users
    • no manual enrolments break license logic

Long Term Solutions

These actions ensure system health as the organization grows.

  • Establish Governance Rules

Define clear procedures for tenant creation, license assignment, course sharing, and reporting. Consistent governance prevents ad-hoc decisions that lead to duplication and access issues.

  • Use a Master Template Course Model

Maintain a single authoritative course version wherever possible. Control tenant access through cohorts, catalogue rules, and license constraints instead of duplicating content.

  • Automate User Assignment

Use SSO, HR feeds, or identity integrations to align users with the correct tenants and departments automatically. Automation reduces enrollment drift and manual errors.

  • Set Up Standardized Update Procedures

Centralize course updates and configuration changes to avoid version drift across tenants. Standard procedures ensure updates remain consistent and auditable.

  • Train Administrators on Licensing and Tenancy Concepts

Ensure administrators understand tenant boundaries, license behavior, and catalogue visibility rules. Shared understanding prevents configuration mistakes as teams grow.

  • Retire Redundant or Legacy Course Copies

Regularly audit and remove outdated or duplicated courses. Reducing clutter lowers maintenance overhead and improves reporting accuracy.

  • Design and Enforce a Clear Organizational Hierarchy

Before creating a new tenant, determine what level of the organization actually requires independent administration and separation.

A simple rule is:

  • Company tenant: Use when the entity requires its own users, administrators, branding, reporting, catalogue, or training administration.
  • Child company tenant: Use when an independently managed entity still needs to sit beneath a larger parent organization.
  • Department: Use for branches, locations, divisions, or teams that belong inside the same tenant and primarily require organizational, management, or reporting separation.
  • Sub-department: Use for additional hierarchy within a department.

For example, a manufacturing group should not automatically create one tenant for every factory. If all factories belong to the same company and share the same branding and administration, the company can remain one tenant while each factory is represented as a department. If a regional subsidiary operates independently and requires separate administration, branding, or reporting, it can instead be configured as a child company tenant.

The decision should therefore be based on the level at which true organizational separation is required, rather than simply creating a tenant for every level of the org chart.

 

Related Articles

If you are working with IOMAD multi-tenancy, licensing models, or complex enterprise learning structures, the following articles offer deeper insights into performance, catalogue control, role configuration, and long term platform stability. Each resource provides practical guidance that builds on the concepts discussed here and helps you create a reliable and scalable IOMAD ecosystem.

Turning Multi-Tenancy Challenges into Scalable Solutions

meeting with client in conference room - Why Moodle CSS Gets Overwritten When Administrators Work Together.

Designing and maintaining a stable multi-tenant IOMAD environment requires deep understanding of Moodle core architecture, IOMAD’s tenant extensions, licensing behavior, catalogue rules, course access logic, and enrollment pathways. Many of the most common issues—such as cross-tenant visibility, unnecessary course duplication, blanket license leakage, broken training plans, and managers seeing users outside their tenant—occur not because the platform lacks capability, but because its multi-tenancy structure has been configured without a clear architectural plan. Experienced Moodle and IOMAD experts know how to set up clean tenant boundaries, optimize catalogue visibility, design proper course structures, and implement license rules that reduce maintenance instead of increasing it.

By working with specialists, organizations gain a reliable foundation that scales smoothly as more branches, companies, departments, or training programs come online. Experts help eliminate duplicated courses, strengthen reporting isolation, automate user assignment via SSO or HR feeds, design upgrade-safe configurations, and introduce governance models that keep the system future ready. Instead of reacting to issues after they surface, a seasoned IOMAD expert builds a long term roadmap, ensuring your LMS remains efficient, secure, and easy for administrators and learners to navigate.

 

 

Frequently Asked Questions (FAQs)

How can I determine whether a course should be duplicated for each tenant or maintained as a single shared master?
Course duplication is almost always a workaround for licensing or catalogue issues, not a structural requirement. In most cases, courses should not be duplicated unless there are regulatory or compliance requirements that mandate tenant-specific content, assessments, or record retention. Duplication is typically a shortcut used to solve access problems quickly, but it creates long-term maintenance and reporting debt. The preferred approach is to maintain a single master course and control access through cohorts, company constraints, and license filtering, duplicating content only when compliance or curriculum differences truly require it.
What is the most reliable method to prevent managers from unintentionally gaining cross-tenant visibility?
The safest approach is to audit role assignments at both the tenant and system level, remove global or system-wide capabilities, and ensure that manager roles are scoped strictly to the company context. Relying on default Moodle role inheritance often grants more visibility than expected. A periodic role audit and standardized role templates help prevent future drift.
Why do training plans behave inconsistently when users move between companies or departments?
Training plans do not automatically rebuild when a user’s tenant or department changes. Legacy enrollments, group memberships, and plan completions often remain linked to the user’s previous structure. To resolve this, administrators should rebuild or reassign training plans after any structural change and verify that cohorts, company assignments, and department memberships are correctly aligned.
How can I ensure that blanket licenses do not expose catalogues across tenants?
Blanket licenses must be paired with strict tenant filtering. Without tenant-specific constraints, these licenses can override catalogue separation and expose courses broadly. Administrators should apply company filters or cohort-based restrictions, validate catalogue rules, and avoid placing shared courses in global categories unless required.
What is the recommended strategy for maintaining reporting integrity when a shared master course is used by multiple tenants?
Maintaining clean reporting requires correct cohort filtering, tenant-scoped enrollment methods, and strict manager role boundaries. Reporting separation depends on ensuring that users enter courses only through tenant-specific pathways and that manual enrollments are avoided. Proper category structure and consistent license rules further protect reporting integrity.
How can organizations reduce long-term technical debt caused by years of course duplication?
The most effective approach is to consolidate duplicate course copies into a small number of master versions and manage tenant access through cohorts and catalogue rules. Before merging, conduct a full content audit to verify that no tenant-specific differences are lost. After consolidation, implement governance rules that prevent ad hoc duplication and define clear procedures for updates.
What architectural signals indicate that a multi-tenant IOMAD deployment may require restructuring?
Key indicators include frequent catalogue visibility issues, licenses behaving unpredictably across tenants, rapid growth of duplicate course copies, inconsistent reporting, and confusion about where content belongs in the category structure. These signs typically reflect misaligned tenant boundaries, poor category design, or outdated license strategies. An architectural review can prevent larger failures as your environment grows.

Request Consultation

    *By submitting you agree to the Mindfield  Terms of Use.

    Mindfield Insights