Summary and recommendation
Domo user management can be run manually, but complexity usually increases with role models, licensing gates, and offboarding dependencies. This guide gives the exact mechanics and where automation has the biggest impact.
Domo's user management lives under Admin > Governance > People (https://<instance>.domo.com/admin/people). From there, admins invite users by email, assign a security role, and optionally place them into Groups - all in a single flow.
Five default roles cover the full spectrum: Admin (full control), Privileged (content creation + user invites), Editor (content creation, no DataSet creation), Participant (read-only), and Social (Buzz collaboration only). Enterprise contracts unlock custom roles with granular, toggle-level permission sets, though availability varies by contract - confirm with your Domo account team.
Quick facts
| Admin console path | Admin > Governance > People (or Admin > People) |
| Admin console URL | Official docs |
| SCIM available | Yes |
| SCIM tier required | Enterprise |
| SSO prerequisite | Yes |
User types and roles
| Role | Permissions | Cannot do | Plan required | Seat cost | Watch out for |
|---|---|---|---|---|---|
| Admin | Full platform access: manage users, billing, security settings, all content, SSO/SCIM configuration, data governance, and all Admin panel features. | Nothing restricted at the platform level; full control. | All plans | Counts as a full licensed seat | Admins can see all content in the instance by default, including sensitive datasets. Granting Admin role should be tightly controlled. |
| Privileged | Can create and share content (cards, dashboards, DataSets), manage groups, and invite users. Cannot access Admin panel or billing. | Cannot access Admin settings, manage SSO/SCIM, or view billing. | All plans | Counts as a full licensed seat | Privileged users can invite new users, which may inadvertently consume licensed seats if not monitored. |
| Editor | Can create and edit cards and dashboards, connect to existing DataSets. Cannot create new DataSets or manage users. | Cannot create new DataSets, manage users, or access Admin panel. | All plans | Counts as a full licensed seat | |
| Participant | Read-only access to content shared with them. Can view cards and dashboards but cannot create or edit content. | Cannot create, edit, or share content. Cannot connect data or manage users. | All plans | Counts as a licensed seat; lower-cost viewer license may be available depending on contract | Participant seats may still count against licensed seat totals depending on contract terms. Verify with Domo account team. |
| Social | Can interact with Buzz (Domo's collaboration/messaging feature) and view content shared with them. Very limited data access. | Cannot create content, access DataSets, or manage users. | All plans | Typically a lower-cost or free seat type; verify with contract | Social role is primarily for collaboration-only users; limited analytics utility. |
Permission model
- Model type: hybrid
- Description: Domo uses a combination of default security roles (Admin, Privileged, Editor, Participant, Social) and custom roles. Custom roles allow admins to define granular permission sets by toggling individual capabilities (e.g., 'Can export data', 'Can manage DataSets', 'Can share content'). Row-level security (PDP - Personalized Data Permissions) is applied at the DataSet level to restrict data visibility by user or group.
- Custom roles: Yes
- Custom roles plan: Enterprise (custom roles feature availability may vary by contract; confirm with Domo)
- Granularity: Role-level permissions control feature access (create, edit, share, admin); PDP policies control row-level data access per DataSet; content sharing controls object-level visibility.
How to add users
- Navigate to Admin > Governance > People (or Admin > People) in the top navigation.
- Click 'Invite People' or the '+' / 'Add User' button.
- Enter the user's email address.
- Select a security role (Admin, Privileged, Editor, Participant, Social, or a custom role).
- Optionally assign the user to one or more Groups.
- Click 'Send Invite'. The user receives an email invitation to set up their account.
Required fields: Email address, Security role
Watch out for:
- Invited users consume a licensed seat as soon as the invitation is accepted (or in some configurations, when sent - verify with contract).
- If SSO is enforced, users must authenticate via the configured IdP; password-based login may be disabled.
- Admins should verify the correct role is assigned at invite time; changing roles later requires returning to the People admin panel.
- Users invited but who never accept still appear as 'Pending' and may count against seat limits depending on contract.
| Bulk option | Availability | Notes |
|---|---|---|
| CSV import | Yes | Admin > Governance > People > Import Users (CSV upload option within the People management screen) |
| Domain whitelisting | No | Automatic domain-based user add |
| IdP provisioning | Yes | Enterprise (SCIM provisioning requires Enterprise tier and SSO prerequisite) |
How to remove or deactivate users
- Can delete users: Verify in tenant
- Delete/deactivate behavior: This app exposes delete operations in its API documentation, but the admin-console path may present removal as deactivation, archiving, or deletion depending on tenant configuration. Confirm whether the UI action is reversible before treating removal as recoverable.
- Navigate to Admin > Governance > People.
- Search for or locate the user to deactivate.
- Click on the user's name to open their profile.
- Select 'Deactivate' or use the action menu to deactivate the user.
- Confirm the deactivation. The user will immediately lose the ability to log in.
| Data impact | Behavior |
|---|---|
| Owned records | Content (cards, dashboards, DataSets) owned by the deactivated user remains in the system and is not deleted. Ownership may need to be manually transferred to another user. |
| Shared content | Shared content remains accessible to other users who had access. The deactivated user's sharing permissions are effectively revoked. |
| Integrations | DataSet connectors and data pipelines owned by the deactivated user may stop refreshing or fail if they relied on that user's credentials. These should be reassigned before deactivation. |
| License freed | Deactivating a user frees up their licensed seat, making it available for reassignment. Verify with Domo account team for billing cycle timing. |
Watch out for:
- DataSet connectors authenticated with the deactivated user's credentials will fail to refresh; reassign connector ownership before deactivating.
- Content ownership is not automatically transferred; orphaned content may become inaccessible to other users without manual reassignment.
- Deactivated users still appear in the People list with a 'Deactivated' status; they are not removed from the directory.
- If SCIM is enabled, deactivation can be triggered automatically from the IdP when the user is removed or deprovisioned there.
License and seat management
| Seat type | Includes | Cost |
|---|---|---|
| Full User (Admin/Privileged/Editor) | Full platform access including content creation, data connectivity, and collaboration features depending on role. | Included in platform subscription; individual licenses reported up to ~$700/user/year depending on contract |
| Participant / Viewer | Read-only access to shared dashboards and cards. | Typically lower cost than full user seats; exact pricing negotiated per contract |
| Social | Buzz collaboration and limited content viewing. | Typically lower cost or included; verify with contract |
- Where to check usage: Admin > Governance > People - shows total users, active users, and seat counts. Admin > Billing may show license consumption depending on plan.
- How to identify unused seats: Filter the People list by 'Last Login' date in Admin > Governance > People to identify users who have not logged in recently. Domo does not have a built-in 'unused seat' report natively; admins typically export the user list and sort by last login date.
- Billing notes: Domo moved to a credit-based pricing model in mid-2023. User seats are one component of credit consumption alongside data rows, API calls, and feature usage. Seat costs vary significantly by contract tier (Standard ~$50K-75K/year, Enterprise ~$100K-200K+/year, Business Critical ~$200K-500K+/year). Individual user license costs reported up to ~$700/user/year. Actual per-seat costs are negotiated and not publicly listed. Contact Domo account team for current seat pricing and credit allocation details.
The cost of manual management
Domo operates on a credit-based pricing model (introduced mid-2023), where user seats are one component of overall credit consumption alongside data rows and API calls. Seat costs are negotiated per contract and not publicly listed; individual licenses have been reported up to ~$700/user/year.
Participant and Social seats are typically lower cost than full-user seats, but whether pending (unaccepted) invitations count against seat limits depends on your specific contract terms - verify this before running bulk invite campaigns.
There is no built-in unused-seat report; admins must export the People list and sort by Last Login date to identify candidates for deactivation.
What IT admins are saying
Practitioners managing Domo at scale flag a consistent set of friction points. DataSet connector ownership is not automatically transferred when a user is deactivated, which causes data pipeline failures that must be resolved manually before offboarding.
Deactivated users are never permanently removed from the directory, creating long-term clutter in large organizations. Privileged users can invite new users independently, which can silently consume licensed seats if not monitored.
Azure AD (Entra ID) SCIM provisioning requires additional configuration beyond what Domo's native setup wizard covers, and SSO SAML claims configuration is reported as error-prone.
Common complaints:
- Azure AD (Entra ID) SCIM provisioning is not natively supported without additional configuration; users report difficulty setting up automated provisioning with Microsoft Entra.
- SSO SAML claims token method is limited and can be difficult to configure correctly.
- No true permanent user deletion; deactivated users remain in the directory indefinitely, causing clutter in large organizations.
- DataSet connector ownership is not automatically transferred when a user is deactivated, causing data pipeline failures.
- Pending (unaccepted) invitations may consume licensed seats depending on contract terms, leading to unexpected seat usage.
- Custom roles feature availability and granularity varies by contract tier, causing confusion about what is included.
- The credit-based pricing model introduced in 2023 makes it difficult to predict costs as user counts and feature usage interact with credit consumption.
- Bulk user management via CSV is available but the import process is reported as cumbersome for large user bases.
- No built-in report for identifying inactive or unused seats; admins must manually export and analyze user lists.
The decision
Manual administration in Domo is viable for teams managing a stable, moderate-sized user base where every app in the provisioning workflow can tolerate a human-in-the-loop step.
The process is straightforward for individual adds and deactivations, but the absence of automatic content-ownership transfer and the lack of a native unused-seat report create compounding overhead as headcount scales.
Organizations on Enterprise contracts with Okta or Entra ID already configured should evaluate SCIM-based provisioning to eliminate the connector-ownership and pending-invite risks that manual workflows cannot prevent.
Bottom line
Domo's manual user management is functional but carries meaningful operational risk at scale.
The deactivation-only offboarding model (no permanent deletion), the absence of automatic DataSet connector reassignment, and the lack of a built-in stale-user report mean that every departure requires a multi-step checklist to avoid broken pipelines and orphaned content.
For organizations on the Enterprise tier with SSO already in place, SCIM provisioning via an IdP removes the most failure-prone manual steps and is the recommended path for teams managing more than a few dozen users.
Automate Domo workflows without one-off scripts
Stitchflow builds and maintains end-to-end IT automation across your SaaS stack, including apps without APIs. Built for exactly how your company works, with human approvals where they matter.