PL-300 · Domain 1 of 4

PL-300 Domain 1: Prepare the data

This domain covers getting data into Power BI and shaping it. It covers connecting to data sources, choosing between Import, DirectQuery and DirectLake, profiling and cleaning data, and transforming and loading it with Power Query, including building fact and dimension tables.

Exam format
25–30%
Official functional groups
3
Assessment estimate
11–16
Suggested study time estimate
15–20 hrs

About 11 min read Reviewed October 2026

Overview

Prepare the data is the first stage of the Power BI workflow and 25–30% of the PL-300 exam. It has three objective groups. Getting or connecting to data covers identifying and connecting to data sources and shared semantic models, changing data source settings such as credentials and privacy levels, choosing between DirectLake, DirectQuery and Import storage modes, and creating parameters. Profiling and cleaning covers evaluating data with column statistics and properties and resolving inconsistencies, null values, quality issues and import errors. Transforming and loading covers selecting column data types, creating and transforming columns, grouping and aggregating, pivoting and unpivoting, converting semi-structured data to tables, building fact and dimension tables, using reference versus duplicate queries, merging and appending, creating keys for relationships, and configuring data loading.

Most of this work happens in Power Query. The exam rewards knowing how to connect appropriately, choose the right storage mode, clean messy data, and shape it into a well-structured model-ready form.

How it's tested

PL-300 questions are scenario-based and hands-on, often describing a data situation and asking which Power Query transformation, connection or storage mode to use. In this domain they describe a source, quality issue or shaping need and reward the correct Power Query step or storage decision. Read the scenario for the specific preparation task.

  • Right storage mode

    A data-size, freshness or source scenario is described, and you choose Import, DirectQuery or DirectLake.

  • Clean the data

    A quality issue is described, and you choose the profiling or cleaning step to resolve it.

  • Shape with Power Query

    A transformation need is described, and you choose the correct Power Query operation.

Reasoning it through

A report must show near real-time data from a very large source that cannot fit in memory, and users need the latest values on each interaction. Importing the data would cache a snapshot and not reflect live changes, and may not fit. DirectQuery leaves the data in the source and queries it live on each interaction, meeting the freshness and size requirement, so DirectQuery is the storage mode the exam expects for live, large-source scenarios.

Functional groups 3

Official functional groups from the Microsoft outline, in outline order.

1.1 Get or connect to data sources and choose a storage modeConnecting to sources, credentials, privacy levels, storage modes and parameters.
What it means
This covers identifying and connecting to data sources or a shared semantic model, changing data source settings including credentials and privacy levels, choosing between DirectLake, DirectQuery and Import storage modes, and creating and modifying parameters.
What to understand
Power BI connects to many sources, and the storage mode is a key decision: Import caches data in memory for fast performance, DirectQuery queries the source live for freshness and large data, and DirectLake (in Fabric) reads directly from a lakehouse for both scale and performance. Credentials and privacy levels govern access and data combination, and parameters make connections flexible. Choosing the right mode for the scenario is central.
How it shows up
A source, size or freshness scenario is described, and you must choose the connection or storage mode.
Common confusion
Confusing Import (cached snapshot) with DirectQuery (live query); Import is faster but not live, DirectQuery is live but can be slower.
1.2 Profile and clean the dataEvaluating data quality and resolving issues.
What it means
This covers evaluating data using data statistics and column properties (such as column quality, distribution and profile), resolving inconsistencies, unexpected or null values and data quality issues, and resolving data import errors.
What to understand
Before transforming, you profile the data to understand its quality, using Power Query's column quality, column distribution and column profile tools to spot errors, nulls and outliers. You then clean it: replacing or removing nulls, fixing inconsistencies, and resolving import errors. Clean data prevents problems in the model and visuals. Profiling first, then cleaning, is the disciplined approach.
How it shows up
A data quality issue is described, and you must choose the profiling or cleaning step.
Common confusion
Cleaning data without profiling first, or confusing the column quality, distribution and profile views.
1.3 Transform and load the data with Power QueryShaping columns, rows, queries, and building fact and dimension tables.
What it means
This covers selecting appropriate column data types, creating and transforming columns, grouping and aggregating rows, pivoting, unpivoting and transposing, converting semi-structured data to tables, creating fact and dimension tables, choosing reference versus duplicate queries, merging and appending queries, creating keys for relationships, and configuring data loading.
What to understand
Power Query shapes raw data into model-ready tables. Setting correct data types is essential, and operations like unpivot, group and merge restructure data. Building fact tables (events and measures) and dimension tables (descriptive attributes) prepares a star schema. Reference queries point to another query's result while duplicate queries copy its steps, and merge joins tables while append stacks them. Configuring whether a query loads controls what reaches the model.
How it shows up
A shaping or structuring need is described, and you must choose the Power Query transformation or query type.
Common confusion
Confusing reference with duplicate queries, or merge (join) with append (stack).

High-yield concepts

The terms, rules and formulas this domain turns into questions most often.

  • Import vs. DirectQuery vs. DirectLake

    Cached in memory, live query, or direct lakehouse read.

    Remember
    Import is fast, DirectQuery is live, DirectLake scales in Fabric.
    Tested as
    Storage mode questions.
    Trap
    Confusing Import with DirectQuery.
  • Privacy levels

    Govern how data from different sources may combine.

    Remember
    They protect against unintended data leakage.
    Tested as
    Connection questions.
    Trap
    Overlooking privacy levels when combining sources.
  • Parameters

    Reusable values that make queries flexible.

    Remember
    Use them for source paths and filters.
    Tested as
    Connection questions.
    Trap
    Hard-coding values instead of using parameters.
  • Column profiling tools

    Column quality, distribution and profile.

    Remember
    Profile before cleaning.
    Tested as
    Profiling questions.
    Trap
    Confusing the three profiling views.
  • Handling nulls and errors

    Replacing, removing or resolving bad values.

    Remember
    Fix quality issues before loading.
    Tested as
    Cleaning questions.
    Trap
    Loading uncleaned data.
  • Data types

    Correct types for each column.

    Remember
    Set types early; they affect the model.
    Tested as
    Transformation questions.
    Trap
    Leaving incorrect types.
  • Unpivot

    Turns columns into rows for a normalized shape.

    Remember
    Use it to tidy wide, cross-tab data.
    Tested as
    Transformation questions.
    Trap
    Keeping data in a wide, unmodelable shape.
  • Fact vs. dimension tables

    Events and measures versus descriptive attributes.

    Remember
    They form a star schema.
    Tested as
    Structuring questions.
    Trap
    Confusing the two table types.
  • Reference vs. duplicate query

    Points to a query's result versus copies its steps.

    Remember
    Reference links; duplicate copies.
    Tested as
    Query questions.
    Trap
    Confusing the two.
  • Merge vs. append

    Join tables by key versus stack rows.

    Remember
    Merge joins; append stacks.
    Tested as
    Query questions.
    Trap
    Confusing merge with append.
  • Configure data loading

    Whether a query loads to the model.

    Remember
    Disable load for staging queries.
    Tested as
    Loading questions.
    Trap
    Loading unnecessary staging queries.

Side by side

Concepts candidates mix up, compared on the point that decides the answer.

Import vs. DirectQuery vs. DirectLake

ConceptMeaningKey differenceCommon trap
Import Data cached in memory Fast, but a snapshot Expecting live data
DirectQuery Queries the source live Live, but can be slower Expecting Import-level speed
DirectLake Reads directly from a Fabric lakehouse Scale and performance Confusing with DirectQuery

Reference vs. duplicate query

ConceptMeaningKey differenceCommon trap
Reference Points to another query's output Linked; updates flow through Confusing with duplicate
Duplicate Copies the query's steps Independent copy Confusing with reference

Merge vs. append

ConceptMeaningKey differenceCommon trap
Merge Joins tables on a key Adds columns Confusing with append
Append Stacks tables' rows Adds rows Confusing with merge

Exam traps

Each trap is an answer that looks right. Learn the clue that should change your mind.

  1. Import for live data

    What candidates pick
    Use Import mode when near real-time data is required.
    Why it looks right
    Import is fast and familiar.
    Why it's wrong
    Import caches a snapshot that only updates on refresh; DirectQuery queries the source live for near real-time needs.

    Clue to watch for The report must reflect the latest data on each interaction.

  2. DirectQuery for best speed

    What candidates pick
    Use DirectQuery when fast interactive performance on a moderate dataset is the priority.
    Why it looks right
    It avoids importing data.
    Why it's wrong
    Import caches data in memory for the fastest performance; DirectQuery can be slower because it queries the source each time.

    Clue to watch for Performance matters and the data fits in memory.

  3. Append to join tables

    What candidates pick
    Use append to add columns from a related table by a key.
    Why it looks right
    Both combine queries.
    Why it's wrong
    Append stacks rows from similar tables; merge joins tables on a key to add columns.

    Clue to watch for You need to add related columns using a matching key.

  4. Duplicate when reference fits

    What candidates pick
    Duplicate a query when you want changes to the base query to flow through.
    Why it looks right
    Both create another query.
    Why it's wrong
    A reference query links to the base query so changes flow through; a duplicate is an independent copy.

    Clue to watch for Changes to the source query should propagate.

  5. Skip profiling

    What candidates pick
    Begin cleaning without profiling the data first.
    Why it looks right
    It seems faster.
    Why it's wrong
    Profiling with column quality, distribution and profile reveals the issues to clean; skipping it misses problems.

    Clue to watch for The data quality is unknown before cleaning.

  6. Wide data unmodeled

    What candidates pick
    Load cross-tab data with many value columns directly into the model.
    Why it looks right
    It matches the source layout.
    Why it's wrong
    Unpivoting turns those columns into rows, giving a normalized shape that models and aggregates correctly.

    Clue to watch for The data has repeated value columns like months across the top.

Answer framework

For any Domain 1 data-preparation scenario, use these steps to find the answer PL-300 expects.

  1. Identify the source and requirements, then choose the storage mode: Import for speed, DirectQuery for live or very large data, and DirectLake for scale in Fabric.
  2. Set credentials and privacy levels appropriately, and use parameters to keep connections flexible.
  3. Profile the data with column quality, distribution and profile before cleaning, then resolve nulls, inconsistencies and import errors.
  4. Transform in Power Query: set correct data types, shape columns and rows, and unpivot wide data into a normalized form.
  5. Build fact and dimension tables and relationship keys, choosing reference versus duplicate queries and merge versus append correctly, and configure which queries load.

Practice question

A report must display near real-time data from a very large transactional database, and users need to see the latest values each time they interact with the report. The dataset is too large to fit comfortably in memory. Which storage mode should the data analyst choose?

Choose one answer

Want more like this? The PL-300 practice test has questions for every domain.

Checklist

0 of 10

Tick each one you can do without notes. Your ticks stay in this browser.

Study strategy

This is a hands-on Power Query domain, so practice in Power BI Desktop with real, messy data rather than only reading. Start with the storage-mode decision, which is heavily tested: learn when Import, DirectQuery and DirectLake each fit, and fix the Import-versus-DirectQuery trade-off (speed versus live data) firmly.

Then practice profiling, using column quality, distribution and profile to find issues before cleaning, and the cleaning steps for nulls, inconsistencies and errors. Spend the most time on Power Query transformations, since they recur throughout: data types, unpivot, group, merge versus append, reference versus duplicate queries, and building fact and dimension tables for a star schema.

Because the exam tests doing, shape a real dataset end to end from a raw source to clean, typed, model-ready tables. Afterwards, move to Domain 2, Model the data, which builds the model on this prepared data. Because PL-300 is hands-on, practice every task in Power BI Desktop and the Power BI service with real data rather than only reading, and review missed practice questions by domain to find weak spots.

FAQ

How much of PL-300 is Domain 1?

Prepare the data is 25–30% of the exam, one of three equally weighted largest domains, and the foundation of every Power BI solution.

What is the difference between Import and DirectQuery?

Import caches a snapshot of the data in memory for the fastest performance, updating only on refresh. DirectQuery leaves the data in the source and queries it live on each interaction, giving near real-time data and handling very large datasets, but can be slower.

What is DirectLake?

A storage mode in Microsoft Fabric that reads data directly from a lakehouse, aiming to combine the scale of DirectQuery with performance closer to Import. It is newer content in the current PL-300 outline.

What is the difference between a reference and a duplicate query?

A reference query points to another query's output, so changes to the base query flow through. A duplicate query copies the base query's steps into an independent query that does not update when the base changes.

What is the difference between merge and append?

Merge joins two tables on a matching key to add columns, like a SQL join. Append stacks the rows of similar tables on top of each other to add rows, like a union.

Why profile data before cleaning?

Profiling with column quality, distribution and profile reveals errors, nulls, outliers and inconsistencies, so you know what to clean. Cleaning without profiling first risks missing quality issues that break the model.

How does Domain 1 connect to the rest of the exam?

The clean, well-shaped tables prepared here are the input to the data model in Domain 2, which is visualized in Domain 3 and managed and secured in Domain 4.

Test your Domain 1 knowledge

You have covered connecting to data, storage modes, profiling, cleaning and Power Query transformations. Test whether you can prepare data correctly under exam conditions.

Keep going