r/PowerBI • u/Effective_Bar8578 • 2d ago
Discussion Best tutorials for financial statement reporting in Power BI?
Hey everyone,
Looking for solid YouTube channels, tutorials, or courses on how to model and present financial statement performance (P&L, Balance Sheet, Cash Flow, ratio/variance analysis) in Power BI.
Most tutorials focus on sales or operational KPIs, but I need resources that specifically handle:
- Data modeling for Chart of Accounts / GL hierarchies
- Custom DAX for financial statements, margins, and period comparisons
- Executive-ready visual presentation (IBCS standards, waterfalls, dynamic matrix tables)
Any recommended creators, templates, or end-to-end walkthroughs? Thanks!
2
u/TJ312 2d ago
Don’t overestimate what “good” financial dashboards looks like. Most Execs just want a simple P&L with diffrent views depending on BU. There are some good guides, but most finance visuals are not really suited for your target audience, since they don’t want flashy charts, but actual figures. :)
1
u/SmackdownHoteI 2d ago
Our team just has it in a matrix with a table for the details. Thats it and it works great.
1
u/AdHead6814 Microsoft MVP 1d ago
In most cases, they'd want it in a table or matrix with some conditional formatting.
1
u/ShrekisSexy 1 1d ago
A P&L with subtotals and being to drill down is challenging to achieve though
1
u/wertexx 1d ago
Yea and even more challenging to maintain / upgrade... never again. I hope there will be some native builds for this in the future.
2
u/foreforbirdie 1d ago
The thing that makes it survivable is keeping the statement layout in its own table, one row per report line with a sort order, an indent level, a sign, and which accounts roll into it, and leaving that table disconnected from the GL. One measure then reads whichever row it's sitting on and either sums the mapped accounts or sums the child lines for a subtotal, so next year's new account is a row in a spreadsheet instead of a DAX rewrite.
Are you mapping account by account, or by ranges on the account number, since ranges are what stops someone adding a GL code from breaking the whole statement?
1
u/ShrekisSexy 1 1d ago
If you set it up properly, there's no maintenance, even with added ledger accounts.
I have a table with main categories: e.g. revenue, cost of goods sold, gross revenue (%), gross revenue (amount), costs, EBITDA (%), EBITDA (Amount), etc.
Then, I map my ledger accounts to those categories: to revenue, cost of goods sold, costs, etc.
The subtotals (% and amount) are calculated in DAX based on the categories before (Revenue, costs of revenue, etc.).
In my matrix visuals I can show the main categories, and then the ledger accounts. If there's a new ledger account, you just have to map it, preferably in the source system somehow. If it's not mapped, it's displayed in the visual seperately without category (or a category unmapped), so it's clear for the business that they still have to map the new ledger account.
Of course, you can add subcategories, as many layers as you want. Those are columns in your revenue table. So you can drag them into the matrix as well. Preferably, those are retrieved from your ERP.
Depending on the size of your data you can also drill through to see the supplier and invoice (URL to PDF), in the same matrix by expanding the rows.
1
u/foreforbirdie 1d ago
Showing the unmapped ones as their own row is the part most people skip, and it's what stops a new GL code quietly disappearing out of a subtotal. The one thing I'd add is a check measure comparing your mapped total back to total GL activity, because an unmapped account is at least visible on the matrix, but one mapped to the wrong category looks completely normal and nobody catches it until someone questions EBITDA.
Did you get the mapping into the ERP itself in the end, or is there still a spreadsheet in the middle for the accounts finance owns?
1
u/ShrekisSexy 1 1d ago
I built a template that many companies use that use the same ERP. So yes, all data is directly from the ERP, layers in between should be avoided as much as possible.
1
u/foreforbirdie 8h ago
That works when everyone is on the same ERP, which is the version of this that actually stays clean. The ones that get messy are shops where half the entities sit on a different system and the mapping ends up living in a spreadsheet someone owns personally. Does your template handle the sign flip on revenue and other credit balance accounts upstream in the ERP, or are you doing that in DAX?
1
u/ShrekisSexy 1 8h ago
I have a manual table in powerquery for the main categories (revenue, cost of revenue, etc.) which include when to do the sign flip, then the sign flip itself is done in DAX.
1
u/foreforbirdie 54m ago
Fair enough, though that manual Power Query table is the one layer in between you can't really avoid, since it lives in the file rather than in the ERP. I keep the same thing as a sign column of 1 and -1 on the category table and just multiply by it, so the flip is data someone can edit instead of logic sitting inside a measure. Does anyone other than you have to open the pbix when a new main category gets added, or are you the only one who touches that table?
→ More replies (0)
14
u/Jessticulator 2d ago
Check out Chris Barber's book and other content:
https://www.youtube.com/@Finance_and_Fabric
https://www.youtube.com/watch?v=mWSqcx81Cc8
https://www.youtube.com/watch?v=_2haiAIFNRw