Built-in Roles
A vs B comes with five built-in roles that cover the most common team structures. Each role grants a specific set of permissions that controls what a member can see and do inside your organization.
The five built-in roles
Owner
The Owner is the account that created the organization. There is exactly one Owner per organization. The Owner has full access to everything — every project, every setting, every experiment, billing, and member management. The Owner role cannot be modified, deleted, or transferred to another member through the UI. If you need to transfer ownership, contact A vs B support.
Admin
Admins have all nine permissions enabled. They can do everything Owners can do except change billing details and delete the organization. Admins can invite and remove members, create and delete roles, and manage all projects and experiments. Assign the Admin role to trusted team leads who need full operational control.
Developer
Developers can edit project settings, create and edit experiments (including writing variation JavaScript and CSS), publish experiments to production, view reports, and export data. They cannot manage team members or roles. This role is suited for engineers and technical team members who build and ship experiments.
Collaborator
Collaborators can create experiments and view reports, but they cannot edit project settings, write variation code, or publish to production. This role works well for product managers, designers, or marketers who define experiments but rely on developers to implement and ship them.
Viewer
Viewers have read-only access. They can browse experiments, view results and analytics, and read project configurations — but they cannot make any changes. This role is appropriate for stakeholders who need visibility into what is being tested and how it is performing, without needing to act on it.
Permissions by role
The table below shows which of the ten permissions each built-in role includes. A checkmark means the permission is granted.
| Permission | Owner | Admin | Developer | Collaborator | Viewer |
|---|---|---|---|---|---|
| Manage Projects | ✓ | ✓ | ✓ | ||
| Edit Project Settings | ✓ | ✓ | ✓ | ||
| Create Experiments | ✓ | ✓ | ✓ | ✓ | |
| Edit Code Variations | ✓ | ✓ | ✓ | ||
| Publish to Production | ✓ | ✓ | ✓ | ||
| View Reports | ✓ | ✓ | ✓ | ✓ | ✓ |
| Export Data | ✓ | ✓ | ✓ | ||
| Manage Support | ✓ | ✓ | ✓ | ||
| Manage Webhooks | ✓ | ✓ | ✓ | ||
| View Flag Drafts | ✓ | ✓ | ✓ | ✓ | ✓ |
The View Flag Draftspermission controls whether a role can see another teammate's unpublished flag draft. When the permission is granted, the "unpublished draft" banner on the flag detail page is visible and the role can adopt or discard another teammate's in-progress changes. When revoked, the role edits its own local draft only — shared stashes from teammates stay hidden until someone with the permission picks them up.
The permission defaults to true for every built-in role and every newly created custom role; revoke it on a custom role when you want to keep an audience (e.g. external auditors, contract reviewers) from seeing in-progress flag changes.
Assigning roles
Roles are assigned when you invite a member and can be changed at any time from the Members tab. To change a member's role, see Managing Members.