many2many_tags_avatar
The avatar tags field renders people-type relations as pills with faces: each tag carries the record's avatar, and kanban cards get a quick-assign popover.
| Studio name | Tags (avatar variant selected via the widget picker) |
|---|---|
| Technical name | many2many_tags_avatar |
| Field types | many2many, one2many |
| Views | form, list, kanban |
| Form variant | The base registration; form and list views add the command-palette assignment flow via withCommand |
| Also registered as | list.many2many_tags_avatar, kanban.many2many_tags_avatar, many2many_tags_avatar_popover |
| Module | web, present in every Odoo database |
| Used in core | 10 occurrences across 4 modules, including im_livechat, l10n_in, survey, hr_recruitment |
| Versions | Odoo 20.0, Odoo 19.0, Odoo 18.0, Odoo 17.0, Odoo 16.0 |
| No-code setup | Partially. Studio can add the field; selecting the avatar widget needs the developer-mode widget picker or XML. |
| Alternatives | many2one_avatar_user, many2many_tags, many2many_avatar_user, many2many_checkboxes |
What the avatar tags field does
What this means for your team
Setting it up in Odoo Studio (no code)
What Studio cannot do here
Supported options in Odoo 19
| Option | Type | What it does |
|---|---|---|
no_create | boolean | Inherited from Tags. Removes creation entirely from the dropdown. Note the kanban popover already blocks creation regardless. |
no_quick_create | boolean | Inherited from Tags. Removes only the inline create-from-typed-text entry. |
no_create_edit | boolean | Inherited from Tags. Removes only the Create and Edit popup entry. |
create | domain | Inherited from Tags. A domain evaluated against the current record that enables creation conditionally. |
search_threshold | number | Inherited from Tags. Minimum characters typed before the search RPC fires. |
placeholder_field | field name | Inherited from Tags. A char field on the current record supplying a dynamic placeholder. |
create_name_field | field name | Inherited from Tags and undocumented: which field of the related model receives the typed text on inline creation.(default: name) |
color_field | field name | Inherited from Tags but effectively inert here: the avatar variant empties the extra data specification and shows an image instead of a color chip. |
The color options are technically inherited but pointless here. The avatar variant overrides its data specification so the color subfield is not fetched, and the pill template shows an image where the color chip would matter. Configure people-picking behavior, not colors, on this widget.
Working examples
Inside the kanban quick-assign machinery
Version compatibility
| Version | Status | Notes |
|---|---|---|
| Odoo 20.0 | In development | Not released. Kanban-to-card rename, popover deregistration and avatar cache busting are visible on the development branch; details below. |
| Odoo 19.0 | Verified | Verified against the shipped source. |
| Odoo 18.0 | Verified | Same options and per-view behavior; dropdown avatars use a different internal component. |
| Odoo 17.0 | Verified | Full popover architecture present; kanban cards cap at 2 visible pills instead of 3. |
| Odoo 16.0 | Partial / changed | Avatar pills render, but the kanban quick-assign popover does not exist yet. |
Upgrade note for 18 to 19. Odoo 18 rendered the dropdown avatars through a dedicated AvatarMany2XAutocomplete component; 19 does the same job with an option template on the standard autocomplete. Pure internals for users, but a JavaScript patch targeting the 18 component class will not find it in 19.
What is changing in Odoo 20
Common problems and fixes
| Symptom | Cause and fix |
|---|---|
| Pills show gray placeholder circles instead of faces | The related model has no avatar_128 field, or the user lacks read access to the images. Point the field at a model with the avatar mixin, or accept placeholders; the image field is not configurable. |
| Only 3 people show on kanban cards | The kanban variant caps visible pills at 3 and collapses the rest into a counter. Expected. The full set is visible in the popover or on the form view; the cap is a class constant, not an option. |
| Users cannot create new people from the kanban popover | The popover hardcodes creation off, independent of create options. Create the person first, or assign from the form view where your create options apply. |
| Adding someone on a card saved the record instantly | The popover saves on every change by design. Train for it, or restrict assignment editing to the form view if immediate writes are unacceptable. |
| Tag colors are not showing despite color_field | The avatar variant does not fetch or render the color subfield. Use plain many2many_tags when colors matter more than faces. |
| Avatar changes do not appear until a hard refresh | In Odoo 19 the avatar URL carries no cache-busting parameter. Known limitation; the development branch adds write_date busting for Odoo 20. |
Avatar tags field vs the alternatives
| Widget | Best for | Key difference |
|---|---|---|
many2many_tags_avatar | Multi-person assignment fields: collaborators, interviewers, operators | Tags pills with avatar images and a kanban quick-assign popover |
| many2one_avatar_user | Single-assignee fields pointing at users | One avatar, user-specific extras like presence and assign-to-me |
| many2many_tags | Non-people relations where a name and color suffice | Color chips instead of avatars, color picker on forms |
| many2many_avatar_user | User fields wanting avatar rows plus user commands | User-model specific variant with popover save semantics on kanban and list |
| many2many_checkboxes | Short fixed people lists picked by ticking | Every option visible as a checkbox, no search, no avatars |
Frequently asked questions
What does the many2many_tags_avatar widget do?+
Which models work with the avatar tags widget?+
Can users create new records from the avatar tags dropdown?+
Why did adding a person on the kanban card save the record?+
How is this different from many2many_avatar_user?+
What changes in Odoo 20 for this widget?+
Boards that assign work in one click?
Quick-assign popovers, workload-aware assignment rules, avatars on your own models: small UX upgrades that change how fast a team dispatches work. We build custom Odoo kanban and assignment flows that make the board the only tool your team needs.
Upgrade your team's boards