contact_statistics
The contact_statistics widget renders a json field as a read-only list of statistics. It exists for one screen, the contact form, and it takes no configuration at all.
September 18, 2026Updated September 18, 20263 min read
| Technical name | contact_statistics |
|---|---|
| Field types | json |
| Views | form |
| Module | web, present in every Odoo database |
| Used in core | 2 uses in Odoo 19, both in odoo/addons/base/views/res_partner_views.xml. Unchanged in Odoo 20. |
| Versions | Odoo 19.0, Odoo 20.0 |
| No-code setup | No. There is no Studio entry, and the widget depends on a server-computed json field. |
| Alternatives | statinfo, json, percentpie |
What the contact_statistics widget does
What this means for your team
Working examples
Version compatibility
| Version | Status | Notes |
|---|---|---|
| Odoo 19.0 | Verified | Verified against the shipped 19.0 source. |
| Odoo 20.0 | Verified | Verified against the 20.0 branch. No changes. |
Unchanged between the two branches we checked, including its usage count.
What is changing in Odoo 20
Common problems and fixes
| Symptom | Cause and fix |
|---|---|
| The block renders empty | The json field is unset or empty. The getter falls back to an empty array and the template renders nothing. Check the compute that fills the field. The widget cannot invent content. |
| A statistic you expected is missing | The server is not sending it. The widget renders exactly what the json contains. Change the Python compute, not the view. |
| Options on the field have no effect | The widget declares and reads no options. Remove them. Layout and content are controlled by the template and the server value. |
Contact_statistics widget vs the alternatives
| Widget | Best for | Key difference |
|---|---|---|
contact_statistics | The contact form's computed statistics block | Read-only, no options, and tied to a server-computed json shape |
| statinfo | A single headline number on a smart button | Clickable through to a filtered list, and far more widely used |
| json | Showing the raw json payload | Prints formatted JSON text rather than a statistics list |
| percentpie | One value shown as a proportion | Graphical, and takes a single number rather than a list |
Frequently asked questions
What does the Odoo contact_statistics widget do?+
Can I configure which statistics appear?+
Where is contact_statistics used in standard Odoo?+
Contact records that do not tell you enough?
The statistics on an Odoo contact form come from Python, not from the view, so the numbers your sales team keeps asking for are a compute away rather than a config change. We add the ones that actually drive your conversations.
Book a free consultation