How Many Rows Can Power BI Import?

Cody Schneider8 min read

Trying to find a single, straightforward answer to how many rows Power BI can handle feels like an impossible task. The truth is, there isn't one simple number. The limit depends entirely on how you connect to your data and which version of Power BI you're using. This article breaks down the different connection methods and explains the real-world limits you're likely to encounter.

GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

So, What's the Real Limit? It Depends on How You Connect

The core of understanding Power BI's capacity lies in its three primary ways of connecting to a data source. Each method has its own rules, limits, and ideal use cases. Choosing the right one is the key to building fast, efficient reports, regardless of your data's size.

  • Import Mode: You're copying data directly into your Power BI file. This is the fastest and most common method.
  • DirectQuery: Power BI keeps the data in its original source and just sends questions (queries) to it when you interact with a report.
  • Live Connection: A special version of DirectQuery for specific datasets, like SQL Server Analysis Services or another Power BI dataset.

Let's look at each of these in more detail to see what the practical row limits are for you and your business.

Understanding Mode 1: Import

When you use Import mode, you are pulling a copy of your data from a source (like an Excel file, a database, or Google Analytics) and loading it into your Power BI file (.pbix). This data is then compressed and stored using a powerful in-memory engine called VertiPaq.

The Pros of Import Mode

  • Blazing-Fast Performance: Because the data is stored within the Power BI file itself, reports and visuals are extremely fast. You're not waiting for a query to run on an external database.
  • Full DAX Functionality: You get access to the entire Data Analysis Expressions (DAX) library, allowing you to create complex calculations and measures without limitations.
  • Data Combination: You can easily import data from multiple different sources (e.g., a spreadsheet, Salesforce, and a SQL database) and combine them into a single data model.
GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

The Cons and Limits of Import Mode

The primary limitation of Import mode is not a specific number of rows, but rather the size of the data model after it's been compressed. Think of it like a highly efficient ZIP file for your data.

  • For Power BI Desktop (Free version) and Pro licenses, the limit is 1 GB per dataset.
  • For Power BI Premium licenses, this limit is increased to 10 GB or more, depending on the capacity tier.

So, how many rows is 1 GB? This is the million-dollar question, and the answer is: it depends.

The VertiPaq engine uses columnar compression, which is incredibly efficient. A 10 GB source file might shrink down to less than 1 GB once imported. The amount of compression depends on:

  • Cardinality: This is a fancy term for uniqueness. A column with a few unique values (like a "Status" column with 'True' or 'False') compresses incredibly well. A column with millions of unique values (like a transaction ID) will take up much more space.
  • Data Types: Numbers compress much more efficiently than text.
  • Number of Columns: More columns mean more data and a larger file, even if the row count is the same.

As a rough rule of thumb, you can often fit tens or even hundreds of millions of well-structured rows into the 1 GB Pro limit. For a small e-commerce business, this could be your entire Shopify order history. For a marketing team, this could be several years of campaign data from Google Ads and Facebook Ads combined. However, if your data contains many columns with long, unique text strings, you might hit the limit much sooner.

Understanding Mode 2: DirectQuery

DirectQuery is completely different. Instead of copying data, Power BI leaves the data at its original source (like Salesforce, HubSpot, or a SQL Server). When you open a Power BI report or interact with a visual, Power BI sends a live query to the source system to fetch only the data needed for that specific view.

When DirectQuery Makes Sense

  • Massive Datasets: You have to work with datasets that are simply too large to fit within the Import mode's 1 GB model limit (think billions of rows).
  • Real-Time Data: The underlying data changes constantly, and you need your reports to reflect those changes instantly without waiting for a scheduled refresh.
GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

The Catch with DirectQuery

DirectQuery sounds like the perfect solution for big data, but it comes with limitations. The most frequently discussed limit for DirectQuery is a default cap of 1 million rows per visual. This is often misunderstood as a total dataset limit, but it's not.

This means a single visual (like a table or matrix in your report) trying to retrieve a result set with more than 1 million rows from the external source will show an error. It does not mean your source database can only contain 1 million rows. Your source can have billions of rows, but your Power BI queries to it are restricted.

For example, a marketing analyst looking at ad impressions across all campaigns over 5 years might have a source database with 2 billion rows of impression data. DirectQuery can handle this. However, if a single visual in the report attempts to generate a table listing each individual impression, it would hit the 1 million row limit. The solution is to create visuals that show summarized data, such as impressions per campaign or per month, which would always result in a much smaller data return.

Other limitations include:

  • Slower Performance: Report speed is entirely dependent on the performance of the underlying data source. If the source database is slow, your report will be slow.
  • Limited DAX: Some DAX functions aren't optimized for DirectQuery, forcing calculations to happen on Power BI's side, which can further slow down performance.

Understanding Mode 3: Live Connection

Live Connection is a very specific type of DirectQuery. It’s used when connecting to analysis models that are already built, such as SQL Server Analysis Services (SSAS), Azure Analysis Services (AAS), or even Power BI datasets. Think of this as Power BI pointing to a "master" data model that someone (perhaps a data team in a larger company) has already created and optimized.

In this mode, Power BI is essentially a visualization layer on top of a powerful, pre-built model. The row count limits here are not defined by Power BI at all, but rather by the capabilities of the source model it’s connected to.

Real-World Tips for Working with Large Datasets

Instead of worrying about specific row counts, focus on working smarter with your data to stay within the limits while still getting the insights you need.

1. Only Import What You Need

This is the most critical rule. Before connecting your data source, think about what you actually need to build your report. You can use Power Query to filter out unnecessary data before it ever gets imported.

  • Do you need 10 years of sales data, or will the last 3 years suffice?
  • Instead of pulling all columns from your HubSpot deals table, select only the ones you need for your report, like Amount, Close Date, Owner, and Stage. Deselecting extraneous text, notes, or ID columns can drastically reduce your model size.
GraphedGraphed

Still Building Reports Manually?

Watch how growth teams are getting answers in seconds — not days.

Watch Graphed demo video

2. Aggregate Your Data

Sometimes you don't need line-by-line detail. If your Google Analytics has daily traffic data but you only report on weekly or monthly trends, consider grouping and summarizing the data in Power Query before importing it. Turning 365 rows of daily data into 12 rows of monthly data is a huge space-saver.

3. Optimize Your Data Model

Take steps to make your data model as clean and efficient as possible:

  • Remove unused columns: Each column adds to your model size. If you don't need it for a visual or a calculation, remove it.
  • Optimize data types: Make sure numbers are stored as numbers (e.g., Whole Number or Decimal) and not text. This makes a massive difference in compression.
  • Split date/time columns: A single datetime column has extremely high cardinality. Splitting it into separate "Date" and "Time" columns can dramatically improve compression if you don't need the time information.

Final Thoughts

The number of rows Power BI can handle isn't a simple figure. Import Mode can manage tens to hundreds of millions of rows depending on your data's structure, but is constrained by a 1GB model size on the Pro plan. DirectQuery has virtually no limit on source data size but places a 1 million row cap on the data returned to any single visual. Ultimately, mastering Power BI's capacity is about choosing the right connection mode and being efficient with the data you bring in.

Throughout our journey of building reporting tools, we've seen how often users get stuck on capacity limits, connection types, and performance tuning inside traditional BI software. We designed Graphed to remove this friction completely. Instead of worrying about Import versus DirectQuery or how to optimize a data model, you just connect your sales and marketing sources - like Google Analytics, Shopify, QuickBooks, or Salesforce - and ask questions in plain English. We handle the data connection and optimization so you can create real-time dashboards in seconds without ever needing a tutorial on database performance.

Related Articles