Plain-language questions
Ask for net profit margin 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
Net profit margin is net profit after tax as a percentage of revenue. It shows how much of each euro of revenue is ultimately left once all costs, depreciation, interest and tax have been paid. It is the broadest measure of a company's profitability.
Net profit after tax ÷ revenue × 100%
Acme Groothandel had revenue of €12,000,000 in 2025. After cost of goods sold (€8,400,000), staff costs (€1,800,000), other operating expenses (€840,000), depreciation (€240,000), interest (€120,000) and tax (€150,000), net profit is €450,000. Net profit margin is €450,000 ÷ €12,000,000 × 100% = 3.75%.
Fictitious figures for Acme Groothandel, a sample wholesaler.
A higher net profit margin means the business keeps more of its revenue. Because interest and tax are included, it is also affected by how the company is financed and by tax choices, so read it alongside gross margin and EBITDA margin. Focus on the trend over several years and on the comparison with budget.
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('year', entry_date)::date AS year,
SUM(amount) FILTER (WHERE account_group = 'revenue') AS revenue,
SUM(CASE WHEN account_group = 'revenue' THEN amount ELSE -amount END) AS net_profit,
ROUND(100.0 * SUM(CASE WHEN account_group = 'revenue' THEN amount ELSE -amount END)
/ NULLIF(SUM(amount) FILTER (WHERE account_group = 'revenue'), 0), 2) AS net_profit_margin_pct
FROM gl_entries
WHERE account_group IN ('revenue', 'cogs', 'personnel', 'other_opex', 'depreciation', 'interest', 'tax')
GROUP BY 1
ORDER BY 1;Net Profit =
CALCULATE(SUM(GL[Amount]), GL[AccountGroup] = "revenue")
- CALCULATE(SUM(GL[Amount]), GL[AccountGroup] IN {"cogs", "personnel", "other_opex", "depreciation", "interest", "tax"})
Net Profit Margin % = DIVIDE([Net Profit], CALCULATE(SUM(GL[Amount]), GL[AccountGroup] = "revenue"))In ENABLE
Ask for net profit margin 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
Divide net profit after tax by revenue and multiply by 100%. With €450,000 of net profit on €12,000,000 of revenue, net profit margin is 3.75%. Use the same period for both figures.
Operating margin looks at operating profit before interest and tax, while net profit margin looks at profit after both. The gap between the two shows how much financing costs and tax take out of the result.
Yes, if the business makes a loss, net profit margin is negative. That happens when total costs, including interest and tax, exceed revenue. Check first whether the loss comes from one-off items or from day-to-day operations.
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.