Not sure which Odoo apps you actually need? Start with a free diagnostic call Book a call →
Studio · Approvals · Automation Rules

Odoo Studio is brilliant. Right up until it isn’t.

Studio lets anyone on your team add a field, tweak a view, or wire up a one-step automation without touching code. The Approvals app gives you multi-step sign-off out of the box. Automation Rules fire actions when a record changes — no developer required. All genuinely useful. All with real, well-known limits once your process gets more complicated than the demo data suggests.

Book a call See where Studio hits a wall
The genuinely good part

What Studio actually lets you do safely.

No exaggeration needed here — Studio is one of the better no-code layers in any ERP. It writes real Odoo metadata, not a cosmetic overlay, and for the straightforward cases it’s the right tool.

Custom fields

Add a text, selection, many2one, boolean, or date field to any model in minutes. No XML, no module, no restart — Studio writes proper ir.model.fields records, the same as a developer would by hand.

View editing

Drag fields onto forms, lists, and kanban cards. Add tabs, group boxes, conditional visibility rules. It’s genuine view inheritance under the hood, not a cosmetic skin over the real form.

Reports & filters

Custom filters, saved group-bys, and cloned QWeb PDF layouts — tweak your invoice or quotation template without opening the report engine directly.

Access rights

New fields and models get sensible default access rules out of the box. Restrict a field to one security group without hand-writing an ir.model.access.csv line.

New simple models

Need a register — asset log, visitor log, complaint tracker — that doesn’t fit any existing app? Studio can build the model, the views, and the menu entry in an afternoon.

Single-step automations

Set a field on save, notify a user on a stage change, create an activity when a deadline passes. Studio’s automation editor handles the straightforward, one-trigger-one-action case well.

Approvals & Automation Rules

Real workflow apps. Real, well-known gaps.

The Approvals app and Automation Rules (what used to be called Automated Actions) are separate from Studio’s field-and-view editor, but they live in the same no-code world — and they hit the same kind of wall.

Approvals app

A dedicated workflow app: define approval categories (Purchase Order, Expense, or a custom category), set the approver sequence, and require a minimum number of sign-offs per step before a record can proceed.

The escalation gap

Odoo’s Approvals app has no native “auto-escalate if not actioned within 48 hours.” It’s one of the most common requests we hear — a request just sits in someone’s inbox until they open it.

The backup-approver gap

Also missing out of the box: “if the assigned approver is on leave, route to their manager.” Every business runs into this eventually — usually the week someone’s on holiday and a PO is stuck.

Automation Rules

Trigger on create, on update, on a time condition relative to a date field, or when specific fields change. Actions can update a field, send an email, create an activity, or run Python code.

Where the no-code UI runs out

Loop over related records, call an external API, branch on more than two or three conditions — Studio’s automation editor gets unreadable fast. At that point a proper server action is less work, not more.

Performance at volume

Automation Rules with a wide domain re-evaluate on every write to that model. Stack six or seven of them on sale.order or stock.move and you’ll feel it in write times before anyone works out why.

The honest problem

The one nobody warns you about: scope confusion.

Studio makes it too easy to self-serve. That’s a compliment and a warning. Every field and automation your team adds is real, unversioned, and invisible to whoever supports the system next — including us.

Studio drift, over time

  • Fields piled onto core models until forms are unreadable and nobody remembers why one exists
  • Overlapping automated actions firing on the same record, in an order nobody controls
  • An automation that worked fine at a few hundred records a month, grinding writes to a crawl at a few thousand
  • Studio-added fields silently breaking during a version upgrade because the dependency was never tracked
  • No record of what’s Studio-added versus core — your partner (or the next one) can’t tell what’s safe to touch
  • “Just add a field” quietly becomes years of undocumented one-off logic nobody wants to own

How we handle it

  • Studio-safe fields and views left as Studio — we don’t rebuild what isn’t broken
  • Fragile Studio automations replaced with proper module-based server actions once logic gets conditional
  • Heavy or high-volume automation moved to scheduled actions or queued jobs instead of firing on every write
  • Escalation and backup-approver logic built once, as a small module, instead of re-invented per approval category
  • Every Studio customisation documented and migration-tested before a version upgrade
  • A clear map of what’s Studio, what’s custom module, and what’s core — so nobody’s guessing on a support call
2apps we’ve shipped ourselves on apps.odoo.com
0Studio changes we leave undocumented after an engagement
48 hrstypical escalation window we build into approval chains
Fixedscope quote before any custom automation work starts

Not sure what’s Studio-safe and what needs a real module?

Send us your Approvals categories and your busiest Automation Rules. We’ll tell you honestly which ones are fine as they are, which ones are a performance risk, and which ones should become a proper module before your next upgrade.