Tech Reads
ERP & Enterprise Systems9 min read

The ERP Reporting Trap: Why Standard Reports Never Tell You What You Need

Odoo 17 ships with 847 standard reports. Business Central ships with over 300. After eleven ERP implementations, we have found that clients regularly use about seven of them — aged receivables, aged payables, inventory valuation, general ledger, bank reconciliation, and one or two operations-specific reports that vary by industry. The other 840 exist because somebody asked for them during a product meeting, not because they reflect how management teams actually make decisions. The trap is spending the first six months after go-live trying to make standard reports work before accepting that you need to build the five specific reports your team actually needs.

Why standard reports fail in practice

Standard ERP reports are built to be generally applicable. They answer questions that are true across a wide range of businesses: what is the total outstanding receivables balance, what is inventory on hand by location, what journal entries were made in period X. These are legitimate questions. They are not the questions that drive weekly management decisions in a specific business.

The operations director at a regional logistics company does not need to know total receivables. She needs to know which customers are over 45 days and also have an upcoming shipment scheduled — because the decision to release that shipment or hold it pending payment is what she makes on Monday morning. That report does not exist in standard Odoo. Building it requires joining the receivables aging data with the delivery schedule, applying a threshold filter, and sorting by shipment date. Two days of custom report development. Or three months of downloading data into Excel every Friday and manually doing the same analysis.

~7standard ERP reports that clients actually use regularly, out of hundreds shipped with the platform

The Excel symptom

The leading indicator that your ERP reporting is failing is Excel. Specifically: if more than two people in your company are regularly exporting ERP data into Excel to build reports that should come from the ERP directly, you have a reporting gap.

We have done reporting audits at three clients as part of post-go-live reviews. The pattern is always the same. A finance analyst has a workbook that pulls from three ERP exports, joins them on a unique field that the ERP does not join natively, applies some filters, and produces the one report the CFO wants to see every week. The workbook took two days to build initially and takes 45 minutes to refresh every Friday. Nobody questions it because it works. Nobody fixes it because it requires custom development and is not on anyone's priority list.

Every Excel workbook that exists to compensate for a missing ERP report is a liability. It has version history nobody tracks, transformation logic nobody documents, and failure modes nobody monitors. When the analyst who built it leaves, the CFO's weekly report breaks and nobody knows why. Identify and replace these workbooks systematically. Each one is a custom report that should be in the ERP.

Why custom reports get deprioritized

Custom reports feel like a nice-to-have during implementation. The ERP consultant demonstrates the standard reports, the client nods along, and the decision is made to launch with standard reports and "add custom ones later." Later does not come. The implementation team moves on. The internal IT team does not have ERP-specific development capacity. The consultant would charge $2,000–$5,000 per custom report and the budget for post-go-live work is gone.

The result is that the management team runs on whatever combination of standard reports and Excel workarounds they can assemble. Decisions get made slower. Analysis that could take ten minutes takes two hours. And when someone asks "why is the ERP not delivering value," the answer they give is usually about adoption or training — not about reporting gaps that make the system genuinely harder to use than a good spreadsheet.

Our take

The reporting requirements workshop: We run a two-hour session at the start of every ERP project where we ask each department head to describe the three reports they look at every week and what decisions those reports drive. We explicitly exclude anything that is currently automated or pulled from the legacy system — we want to know how they actually make decisions, not how they think they make them. This session typically surfaces 12–18 specific report requirements, 4–6 of which are genuinely critical and 2–3 of which do not exist in any standard configuration.

Where AI reporting tools actually help (and where they do not)

There is a category of ERP reporting tools — Metabase, Looker, Power BI connected to the ERP database, and more recently AI-driven query interfaces — that promise to solve the custom reporting problem without custom development. They can work. They also introduce a different set of problems.

The AI query interface scenario: a user asks "show me customers over 45 days with upcoming shipments" in natural language and the tool generates a SQL query against the ERP database. This works when the data model is clean and the relevant tables are obvious. It breaks when:

  • The ERP has been customized and the custom fields are not documented anywhere the AI tool can find them
  • The business logic that defines "over 45 days" is specific to this client (some invoices have extended terms, some have early-payment discounts that change the calculation)
  • The person asking the question does not know enough about the data model to recognize when the generated query is wrong

AI-assisted reporting is most useful for ad-hoc exploration by technically proficient users and for standard operational reports that have clear, well-documented data models. It is not a replacement for the 4–6 critical management reports that embed company-specific business logic. Those still need to be built properly, tested against known data, and maintained when the underlying data model changes.

The approach that actually works

Build the six critical custom reports during implementation, not after. Budget $15,000–$30,000 for reporting development as a line item in the ERP project. This is roughly 5–10% of a typical mid-market ERP implementation budget and it is the investment that most directly affects whether the management team actually uses the system.

The reports to prioritize are the ones that drive weekly decisions — the ones people currently do in Excel, the ones that drive the Monday morning meeting, the ones that the COO or CFO asks for by name. Everything else can use standard reports or be added later.

One rule we have kept since our third ERP project: we do not sign off on user acceptance testing until we have run the critical management reports with real data and confirmed the output matches what the business expects. If the aged receivables report shows a different balance than the legacy system because of how opening balances were migrated, that is not a reporting problem — it is a migration problem that the reporting exposed. Catching this in UAT is far cheaper than catching it three months after go-live when a customer relationship has been damaged by a payment chase on an invoice they already paid.
Share