← All Kits · Power BI Kit

Power BI Refresh Failed: Reading the Error Instead of Guessing

Michael Nocito · Updated August 2026 · Every number on this page was worked before it was published

Refresh fails, the message is long, and the instinct is to click Refresh again. Power BI errors are unusually literal: nearly all of them name the thing that is missing. Reading the message is faster than any of the fixes people try first.

What you do: open Power Query, click down the Applied Steps until one shows the error, and read what it is asking for. That locates the fault in under a minute in most cases.

The short version. The report did not break. The source changed, and the query still describes the old one.

The seven causes

1. A column was renamed or removed upstream

The key did not match any rows in the table, or Column X of the table wasn't found.

Power Query hard-codes column names into steps such as Changed Type and Removed Columns. Rename Amount to Amount_GBP in the source and every step naming it fails.

The fix is to rename it back at the top of the query, immediately after the source step, so the rest of the query never sees the change. The durable version is to be less specific in the first place: choose the columns you want rather than removing the ones you do not, so new columns arriving upstream cannot break anything.

2. A data type changed

We couldn't convert to Number, or a column of nulls where values used to be.

A text value has appeared in a numeric column, often N/A or a total row that crept into an export. Set the type with locale where the source is regional, and add a step that removes rows that are not data before typing anything. Watch for a column that used to be whole numbers arriving with decimals, which changes the type Power Query infers on a fresh load.

3. The file path only exists on your laptop

The file couldn't be accessed in the Service, while Desktop refreshes fine.

C:\Users\you\Downloads\data.xlsx is invisible to the Service. Move the file to SharePoint or OneDrive and connect through the web or SharePoint connector, or install an on-premises data gateway. Also: use a parameter for the folder path so the same file can move without editing every query.

4. Credentials expired or were never set in the Service

Failed to update data source credentials.

Desktop credentials and Service credentials are separate stores. Set them in the Service under the dataset settings, Data source credentials. Password changes, expired tokens and revoked OAuth consent all land here, and the fix is always in the Service rather than in the file.

5. No gateway for an on-premises source

You don't have any gateway installed or configured.

Any source that lives inside your network, including a SQL Server and a network share, needs the on-premises data gateway installed on a machine that is switched on when the refresh runs. A gateway on a laptop that sleeps at night is the reason for a scheduled refresh that fails only overnight.

6. Privacy levels clash

Information is required about data privacy, or a formula firewall error.

Power Query blocks combining sources when a value from a private source could be sent to another source, for example a customer id from a private file used in a web query. Set consistent privacy levels in File, Options, Data source settings, or turn the check off for sources you control and understand.

7. Query folding broke and the refresh now times out

Not an error message so much as a refresh that used to take a minute and now takes forty.

Query folding means Power Query pushes your steps back to the database as SQL. Some steps cannot fold, and everything after the first non-folding step is done locally, row by row, in memory. Right click a step and look for View Native Query: if it is greyed out, folding has stopped at or before that step. Move the non-folding steps as late as possible.

The dangerous failure is the one that succeeds. A source that returns zero rows refreshes perfectly and produces an empty report. Add a row-count check into the model and a card visual showing it, so an empty load is visible rather than silent.

Diagnosing in order

StepWhat it tells you
Read the full error, including the detail expanderUsually names the column or file
Open Power Query and click every Applied StepThe first step showing the error is the fault line
Compare Desktop against ServiceWorks in Desktop only means credentials, gateway or path
Check the refresh history in the ServiceTells you when it last worked, which dates the change
Open the source itselfHalf of all refresh errors are a changed export

Making refreshes fail less

  1. Select the columns you need rather than removing the ones you do not. New columns then cannot break the query.
  2. Parameterise paths and dates, so a moved folder is one edit.
  3. Do not type columns in the middle of a query. Type once, near the end, after the shape is settled.
  4. Keep a row-count and a max-date card on page one of the report. Stale or empty data becomes visible to everyone, not just to you.
  5. Set failure notifications in the dataset settings so you learn about it before the audience does.

How to apply this to your own work

  1. Open your most important report and check whether it has any absolute local file paths in its sources.
  2. Add the row-count and max-date cards today. It is fifteen minutes and it catches the silent failures.
  3. Check who owns each upstream source and ask to be told about schema changes.
  4. Turn on refresh failure emails for every scheduled dataset you own.
  5. Look at one long-running query for a broken fold, using View Native Query on each step.

The one habit to keep

Read the error before changing anything. Power BI names the missing thing more often than any other tool an analyst uses, and the habit of reading first is what turns a two-hour afternoon into a two-minute fix.

Would you know today if your main report had refreshed with no rows?

Written from the tools as they ship. Applied Steps, View Native Query, Data source settings and the Service dataset settings are all current Power BI Desktop and Service features.
A refresh that fails loudly is a good day. The one that succeeds with stale data is the problem.

Power BI for Analysts is 187 pages that take filter context apart one modifier at a time, so a measure stops being a guess about what Power BI was filtering when it ran.

Power BI for Analysts, $19 →
Most refresh errors are load-step errors.

Power Query or Power Pivot explains which layer you are in, and importing a CSV covers the connection basics. The Power BI Kit has the drills.

Open the Power BI Kit →