Home › Guides › Power BI Tutorial
Tutorial · 2026Power BI Tutorial for Beginners 2026: Build Your First Dashboard From a CSV in 8 Steps
This Power BI tutorial for beginners takes you from a raw CSV to a published dashboard in 8 steps: install Power BI Desktop free, clean the data in Power Query, build a date table and a star schema, write three DAX measures, lay out four visuals, and publish to the Power BI service.
- Power BI Desktop costs nothing. Steps 1 to 7 all happen in a free Windows download. You pay only when other people need to read the result.
- Power BI Pro is $14 per user per month on annual billing, per Microsoft's published pricing, unchanged since 1 April 2025. Every reader of your report needs one.
- Clean in Power Query, calculate in DAX. Mixing the two up is why beginner files become unmaintainable.
- A date table is not optional. Without one, SAMEPERIODLASTYEAR returns wrong numbers rather than errors.
- Turn off Auto date/time first. It builds a hidden table behind every date column, which is how a 40 MB extract becomes a 300 MB file.
- A Pro semantic model is capped at 1 GB. Microsoft Learn documents the limit, and beginners hit it sooner than they expect.
You are the whole MIS function at a Pune auto-parts distributor. Every Monday you export roughly 180,000 order lines from Tally, paste them into a workbook that now takes four minutes to open, rebuild the same six pivot tables, and email a PDF that your sales head immediately replies to with a question your pivot cannot answer. That is the problem Power BI solves, and this tutorial rebuilds exactly that weekly file as something you refresh with one click.
What You Need Before You Start
Three things: a Windows machine, the free Desktop app, and a CSV you actually care about.
Power BI Desktop download and system requirements
Microsoft's documentation states that Power BI Desktop runs on Windows 10 version 21H2 or later and Windows 11, and that the app is 64-bit only since Microsoft dropped 32-bit builds in January 2024. The documented memory minimum is 2 GB, but with 180,000 rows you want 8 GB. The recommended 1440x900 screen matters more than it sounds, because the formatting pane eats horizontal space. Take the Microsoft Store build if you can: Power BI ships a feature release every month and a manual install drifts out of date fast.
The dataset
No CSV of your own yet? Use Microsoft's Financial Sample workbook, documented on Microsoft Learn at under 800 rows, or pick Learn with sample data from the Desktop Home page. The walkthrough below assumes a file called orders.csv with seven columns: OrderID, OrderDate, CustomerCode, ProductCode, Segment, Units, UnitPrice. Different column names change nothing about the steps.
Power BI at a glance before you install
The four numbers that decide whether Power BI fits your situation at all.
Microsoft published pricing and Microsoft Learn documentation, checked 2 October 2026.
How Power BI Actually Works: The Four Layers You Will Touch
Most beginner Power BI files are a mess for one reason. The person building them did not know which of four layers they were standing in, so they solved every problem wherever they happened to be. Learn the layers first and the rest of this tutorial is mechanical.
From CSV to published dashboard
Data moves in one direction through four layers, then leaves your laptop as a .pbix file.
Layer names follow the Power BI Desktop interface as of the September 2026 release.
| Layer | What it is for | Do this here | Never do this here |
|---|---|---|---|
| Power Query (M) | Reshaping data before it is stored | Set data types, remove junk rows, split and rename columns, unpivot | Business logic that changes with the filter a user clicks |
| Data model | Relationships between tables | One-to-many joins from dimension to fact, mark the date table | Bi-directional filters, which is where mystery totals come from |
| DAX measures | Numbers that respond to filters | Sums, ratios, prior-period comparisons, running totals | Row-by-row cleanup that Power Query does faster and cheaper |
| Report canvas | How a human reads the answer | Visual choice, layout, slicers, conditional formatting | Calculations typed into a visual as a quick fix, never to be found again |
The rule worth memorising: if the answer does not change when a user clicks a slicer, it belongs in Power Query. If it does change, it belongs in DAX. Everything else is layout.
If this split sounds familiar, it is the same extract-transform-load thinking that runs every data pipeline. Also read: What Is ETL? How Extract, Transform and Load Works, and When ELT Wins in 2026.
Power BI Tutorial for Beginners: The 8 Steps at a Glance
Budget three hours for a first pass. Steps 4 and 6 hold all the thinking, and they are exactly where most tutorials skip ahead to pretty charts.
The 8 steps, with the deliverable for each
Finish each step with something that exists, not something you understand.
Install and turn off Auto date/time
File, Options and settings, Options, Data Load, clear Auto date/time for new files. A blank file that will not bloat.
Connect to the CSV
Home, Get data, Text/CSV, then Transform Data rather than Load. You land in Power Query with nothing committed.
Clean and type every column
Promote headers, set explicit types, drop null and zero Units, trim text. Applied Steps becomes a readable recipe.
Create a date table
A calculated table with CALENDAR across your fiscal range, marked as the date table. Time intelligence now works.
Build the star schema
Split out Product and Customer dimensions, join one-to-many, single direction. Model view shows a star, not a web.
Write three DAX measures
Total Sales, Sales LY, Sales YoY %. Format once in the model so every visual inherits it.
Lay out four visuals
Two KPI cards, a bar chart by Segment, a line chart by month, a date slicer. Nothing else.
Publish and schedule refresh
Publish to a workspace, schedule refresh, share the link. The weekly rebuild is now a button.
Menu paths reflect Power BI Desktop as shipped in the September 2026 release.
Steps 1 to 3: Load the CSV and Clean It in Power Query
Do step 1 before anything else. Under File, Options and settings, Options, Data Load, clear Auto date/time for new files. Power BI's default is to build a hidden date hierarchy table behind every date column in the model. With one date column that is harmless. With the four a real order table carries, it is why your 40 MB extract becomes a 300 MB file that refreshes in nine minutes.
Then Home, Get data, Text/CSV. Pick your file and click Transform Data, not Load. That one choice is the difference between a file you can maintain and a file you rebuild from scratch in three months.
Every click inside the Power Query editor is recorded in the Applied Steps pane and written as a line of M. Open View, Advanced Editor to see it. Here is this tutorial's cleanup as M, ready to paste in and adjust:
let
Source = Csv.Document(
File.Contents("C:\data\orders.csv"),
[Delimiter=",", Columns=7, Encoding=65001, QuoteStyle=QuoteStyle.Csv]
),
Promoted = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
Typed = Table.TransformColumnTypes(Promoted, {
{"OrderID", type text},
{"OrderDate", type date},
{"CustomerCode", type text},
{"ProductCode", type text},
{"Segment", type text},
{"Units", Int64.Type},
{"UnitPrice", type number}
}),
Cleaned = Table.SelectRows(Typed, each [Units] <> null and [Units] > 0),
Trimmed = Table.TransformColumns(Cleaned, {{"Segment", Text.Trim, type text}})
in
Trimmed
Rename the query to Orders before you load, because the query name becomes the table name and renaming later breaks every measure that referenced it. Then Close & Apply.
Your dates import as text, because the CSV says 02-10-2026 and your machine locale reads it as February. Nothing errors. The column quietly becomes text, your line chart sorts alphabetically, and six weeks later somebody asks why September comes after April. Right-click the column, Change Type, Using Locale, English (India). Then sort the column ascending and eyeball the first and last value every single time.
Power Query is also where you point at something other than a flat file: a gateway-connected Azure SQL database, a SharePoint folder, a Fabric lakehouse. The connection and identity side of that is ordinary cloud architecture work, which 360DT's Azure Solutions Architect and DevOps program covers through the AZ-305 material.
Steps 4 and 5: Build a Date Table and a Power BI Star Schema
This is the step beginners skip and seniors never do. A date table is a separate table, one row per calendar date, no gaps, marked in Power BI as the official date table. Without it, SAMEPERIODLASTYEAR does not error. It returns a number that is wrong in a way nobody notices until a board pack goes out.
Go to Modeling, New Table, and paste this. It builds an Indian fiscal year running April to March, which is what your sales head actually reports on:
Date =
VAR MinDate = MIN( Orders[OrderDate] )
VAR MaxDate = MAX( Orders[OrderDate] )
RETURN
ADDCOLUMNS(
CALENDAR( DATE( YEAR(MinDate), 4, 1 ), DATE( YEAR(MaxDate) + 1, 3, 31 ) ),
"Year", YEAR( [Date] ),
"MonthNo", MONTH( [Date] ),
"MonthName", FORMAT( [Date], "MMM" ),
"FiscalYear", "FY" & RIGHT( YEAR( [Date] ) + IF( MONTH( [Date] ) >= 4, 1, 0 ), 2 )
)
Two follow-ups, neither optional. Right-click the Date table and choose Mark as date table, picking the Date column. Then select MonthName, open Column tools, Sort by column, and choose MonthNo. Skip that and your month axis reads Apr, Aug, Dec, Feb.
Why the star schema is worth the extra twenty minutes
Your flat Orders table repeats the same product and customer names thousands of times across 180,000 rows. A star schema moves the repeated descriptive columns into small dimension tables and leaves keys and numbers in the fact table. In Power Query, reference the Orders query twice, remove duplicates on ProductCode in one and CustomerCode in the other, and you have DimProduct and DimCustomer. In Model view, drag DimProduct[ProductCode] onto Orders[ProductCode], cross-filter direction single.
The payoff is not theoretical. The VertiPaq engine compresses a column by how few distinct values it holds, so moving a 60-character product description out of a 180,000-row fact table into a 900-row dimension can cut model size by a double-digit percentage. That matters, because Microsoft Learn documents a 1 GB ceiling on a semantic model in a Pro workspace, and ordinary data reaches it.
Star schema modelling is the part of 360DT's Data Analyst course that changes how people think rather than what they can click. If your interest runs upstream to the pipelines feeding these models, a live Microsoft Fabric data engineering program covers DP-700 and Direct Lake, which removes the import step from this picture entirely.
Step 6: Write Three DAX Measures That Earn Their Keep
You do not need forty DAX functions. You need to understand that a measure is evaluated inside whatever filters the visual applies, and then you need three patterns.
A short Power BI DAX tutorial: the three measures to write first
Total Sales =
SUMX( Orders, Orders[Units] * Orders[UnitPrice] )
Sales LY =
CALCULATE( [Total Sales], SAMEPERIODLASTYEAR( 'Date'[Date] ) )
Sales YoY % =
VAR Curr = [Total Sales]
VAR Prior = [Sales LY]
RETURN
IF( NOT ISBLANK( Prior ) && Prior <> 0, DIVIDE( Curr - Prior, Prior ) )
SUMX iterates row by row and multiplies before summing, which is what line amount means, whereas SUM(Units) * SUM(UnitPrice) returns a number that is not wrong so much as meaningless. CALCULATE is the only function that changes filter context, and SAMEPERIODLASTYEAR works only because you marked that date table in step 4. DIVIDE handles division by zero without a visual-level error, which is the entire reason it exists.
Worked through with numbers: filter the report to the Government segment and September 2026. Total Sales returns 48,20,000. Sales LY shifts the filter to September 2025 and returns 38,56,000. Sales YoY % computes (48,20,000 minus 38,56,000) divided by 38,56,000, which is 0.25, shown as 25.0% once formatted. Now click the Enterprise segment in the bar chart. All three recompute against that slice with no extra code, and that is why a measure beats a calculated column almost every time.
Set the format once on the measure, in Measure tools: currency with zero decimals for the sales measures, percentage with one decimal for YoY. Formatting each visual separately is how one page ends up showing three versions of the same number.
Writing DAX with an AI assistant works better than people expect, provided you can read the output. Ask Claude for a measure handling a 445 retail calendar and you get something plausible and occasionally subtly wrong, so the real skill is reviewing generated code against your own model. That literacy is what the Claude Certified Associate Foundations prep course is built around.
Step 7 and Step 8: How to Create a Dashboard in Power BI and Publish It
Resist eleven visuals. Page one of a working dashboard holds four objects plus a date slicer set to Between: a card for Total Sales, a card for Sales YoY %, a clustered bar chart of Total Sales by Segment, and a line chart of Total Sales by Date[MonthName]. Sort the bar chart descending by value, because an unsorted bar chart makes the reader do work one click could have done.
One vocabulary note that trips up beginners and shows up in interviews: what you build in Desktop is a report. A dashboard exists only in the Power BI service, a single page of tiles pinned from one or more reports. People say dashboard for both. Know the difference anyway.
Then Home, Publish, pick a workspace. Here is where it stops being free.
What publishing actually costs
Desktop is free. Distribution is the line item nobody budgets for.
Microsoft published pricing and Microsoft Learn documentation, checked 2 October 2026.
The licence rule that surprises everyone: a Power BI Free licence cannot read a report shared with it, and cannot share one either. For your eight colleagues to open the dashboard, each needs Pro, or the workspace must sit on Fabric capacity. Two people on an MIS desk is $28 a month and fine. A 400-person sales org is the conversation that sends you to capacity pricing instead.
Then set the refresh: semantic model settings, Scheduled refresh, add a time. If the source is a CSV on your own laptop rather than cloud storage, you also need the on-premises data gateway installed. A missing gateway is the single most common reason a published report shows Monday morning stale numbers.
Two things from Microsoft's September 2026 Power BI release matter even on day one. Power BI Projects, the PBIP format that stores a report as plain text files you can commit to Git, reached general availability, which finally makes version control normal here. And Power BI Agentic Experiences went generally available, letting AI agents generate and edit semantic models for a developer to review. Treat that one as a draughtsman, not an author. Where Copilot is rolling out across Microsoft 365, the governance sits with an administrator, which is what the Microsoft 365 Copilot and Agent Administrator course covers through AB-900.
Go from your first dashboard to a PL-300 certified data analyst
A live weekend program over 10 weeks covering Python, SQL, advanced Excel and Power BI, with preparation for the Microsoft PL-300 certification. Includes hands on projects, mentor support and placement guidance.
Explore the course
Where This Power BI Tutorial for Beginners Usually Goes Wrong
Five errors account for most of the time beginners lose, and each has a precise symptom. Read the message instead of guessing.
| What you see | What is actually wrong | The fix |
|---|---|---|
| "A table of multiple values was supplied where a single value was expected" | Your measure references a column directly instead of aggregating it | Wrap it: SUM( Orders[Units] ) or SELECTEDVALUE( DimProduct[Name] )
|
| Month axis reads Apr, Aug, Dec, Feb |
MonthName is sorting alphabetically as text |
Column tools, Sort by column, MonthNo
|
| Sales LY is blank everywhere | No date table, or it is not marked as the date table, or it has gaps | Build the CALENDAR table from step 4 and mark it, then use 'Date'[Date] in the measure |
| Totals do not match your Excel pivot | A bi-directional relationship, or blank rows on the many side creating an unmatched key | Set cross-filter direction to Single, then check for blanks in the key column in Power Query |
| File is 300 MB and refresh takes nine minutes | Auto date/time hidden tables, plus wide text columns in the fact table | Turn off Auto date/time, move descriptive columns into dimensions, delete columns you never use |
One honest caveat the marketing skips. Power BI Desktop does not run on macOS, and browser authoring, even with the web Report ribbon added in the September 2026 release, is no substitute for a real modelling session. On a Mac you are looking at a Windows virtual machine or a cloud desktop. If a Mac is non-negotiable for you, Tableau will be less friction.
The other thing nobody says out loud: Power BI's gentle learning curve is a trap. Everything up to step 3 is genuinely easy, which convinces people they have learned the tool. Steps 4 to 6 are where the skill lives, and they are the only part an interviewer will probe.
Also read: PL-300 Exam Prep 2026: A 6-Week Study Plan to Pass the Microsoft Power BI Data Analyst Certification and Power BI vs Tableau in 2026: Which BI Tool Wins for Data Analyst Jobs in India?.
What to Build Next
In your position I would do exactly one thing differently from most people: redo this tutorial with your own messy export instead of sample data, then build three more small reports rather than one ambitious one. Repetition on real data is what turns modelling from something you look up into something you do, and no amount of reading substitutes for it. SQL at the source comes next, then row-level security and incremental refresh.
If you would rather watch the modelling steps done live before paying for anything, a free webinar is the cheap way in and a demo class lets you sit through a real weekend session. The full certifications overview shows how the Microsoft and Anthropic credentials connect.
Related guides
- SQL Interview Questions for Data Analyst Roles in 2026 because the interview that follows your first dashboard will be about SQL, not visuals.
- SQL Query Optimization in 2026 for when your refresh is slow because the query behind it is, not because Power BI is.
- Microsoft Fabric vs Databricks in 2026 to understand the platform your Power BI model will eventually sit on.
- Data Engineer Interview Questions 2026 if the modelling half of this tutorial interested you more than the charts half.
- What Is Apache Kafka? for the point where a daily scheduled refresh stops being fast enough.
Frequently asked questions
Is this Power BI tutorial for beginners enough to start without any coding background?
Yes. Steps 1 to 3 and 7 to 8 are entirely point and click. The two code blocks for the date table and the measures can be pasted as written and adjusted by changing table and column names, which is how most working analysts started with DAX.
Is Power BI free for beginners?
Power BI Desktop is a free Windows download, so learning, modelling and building reports costs nothing. You only pay once other people need to read your report in the Power BI service, where Pro is $14 per user per month on annual billing per Microsoft's published pricing.
Can I learn Power BI on a Mac?
Not natively. Power BI Desktop is Windows only, so Mac users run it in a Windows virtual machine, on Boot Camp era hardware, or on a cloud Windows desktop. Browser-based authoring in the service has improved but still lacks parts of the Desktop modelling experience.
How long does it take to learn Power BI?
About three hours to complete this tutorial, two to three weeks of evenings to be genuinely useful at work, and two to three months of regular practice to be interview-ready on data modelling and DAX. The charting is the fast part, filter context is the slow part.
Do I need to learn DAX to use Power BI?
You can drag fields onto a visual with no DAX at all, and the implicit sums you get are correct for simple questions. The moment anyone asks for a year on year change, a share of total, or a running figure, you need measures, which means DAX.
What is the difference between a Power BI report and a dashboard?
A report is the multi-page file you build in Power BI Desktop and publish. A dashboard exists only in the Power BI service and is a single page of tiles pinned from one or more reports. In everyday speech people use dashboard for both.
Can I share a Power BI dashboard with someone who does not have a licence?
Not with a Power BI Free licence on either side. A Free user cannot view content shared with them, and cannot share their own. Either every reader needs Pro, or the workspace needs to sit on Fabric capacity, which changes the cost model entirely.
Should I learn Power BI or SQL first?
Power BI first, for two weeks, because a finished dashboard is motivating and shows up in a portfolio. Then SQL properly, because most analyst interviews are a SQL screen and most real data sources are databases rather than CSV files.
About this guide. 360 Digital Transformation is an Anthropic Partner. Other certification bodies, vendors and employers named here are not affiliated with us. Tools and versions change quickly; commands and figures cited were checked on 2 October 2026.




