Plain-language questions
Ask for operating expense ratio (OPEX ratio) per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
KPI · Finance
The operating expense ratio, or OPEX ratio, is total operating expenses divided by revenue. Operating expenses are all the costs of running the business apart from cost of goods sold: staff, premises, marketing, IT, depreciation and other overheads. The ratio shows how much of each euro of revenue is spent on the organisation itself.
(Staff costs + other operating expenses + depreciation) ÷ revenue × 100%
In 2025 Acme Groothandel had €1,800,000 of staff costs, €840,000 of other operating expenses and €240,000 of depreciation, €2,880,000 in total. With revenue of €12,000,000, the OPEX ratio is €2,880,000 ÷ €12,000,000 × 100% = 24%.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A falling OPEX ratio means revenue is growing faster than overheads: the business is scaling. A rising ratio can reflect investment in growth, but also costs getting out of hand. Read it together with gross margin: only when gross margin exceeds the OPEX ratio is there a positive operating profit.
SQL & DAX
Two examples on a fictitious data warehouse for Acme Groothandel: a PostgreSQL query and a measure for a Power BI model. Adjust table and column names to your own model.
SELECT date_trunc('month', entry_date)::date AS month,
SUM(amount) FILTER (WHERE account_group IN ('personnel', 'other_opex', 'depreciation')) AS opex,
SUM(amount) FILTER (WHERE account_group = 'revenue') AS revenue,
ROUND(100.0 * SUM(amount) FILTER (WHERE account_group IN ('personnel', 'other_opex', 'depreciation'))
/ NULLIF(SUM(amount) FILTER (WHERE account_group = 'revenue'), 0), 1) AS opex_ratio_pct
FROM gl_entries
WHERE entry_date >= date_trunc('month', current_date) - interval '12 months'
GROUP BY 1
ORDER BY 1;OPEX = CALCULATE(SUM(GL[Amount]), GL[AccountGroup] IN {"personnel", "other_opex", "depreciation"})
OPEX Ratio % = DIVIDE([OPEX], CALCULATE(SUM(GL[Amount]), GL[AccountGroup] = "revenue"))In ENABLE
Ask for operating expense ratio (OPEX ratio) per month, customer or product in the SQL Explorer with AI. The AI writes the SQL, you see the query and run it yourself; the AI only receives metadata.
Define the KPI as a measure in your Power BI model and show it in the portal, with "Last refreshed" next to it. Access profiles and optional row-level security decide who sees which figures.
Add the KPI as a tile to a custom dashboard, compared with last year. The Dashboard Builder is a pilot and can be switched on per client.
With the built-in Targets app you set a target for the KPI per month, so you see actuals and target side by side.
FAQ
Add up all operating expenses, excluding cost of goods sold, divide by revenue and multiply by 100%. With €2,880,000 of operating expenses on €12,000,000 of revenue, the OPEX ratio is 24%.
OPEX are running costs that go straight to the income statement, such as salaries and rent. CAPEX are investments in assets that last several years, such as machinery or software; they reach the income statement gradually through depreciation.
It depends on the definition: some organisations include depreciation, others use only costs before depreciation. Without depreciation the ratio ties in with EBITDA margin, with depreciation it ties in with operating margin. Choose one definition and stick to it.
In an online demo we show how ENABLE makes your data securely available and how you build on it: describing an app in the AI Builder, plain-language questions, dashboards and APIs. And how we set it up and manage it for you.