MetricSign
Start free
Medium severityprivacy

Power BI Refresh Error:
Formula.Firewall

What does this error mean?

Power Query's privacy firewall blocked a query because it would combine data from sources with different privacy levels. This is a security mechanism that prevents accidental data leakage between sources.

Common causes

  • 1A query reads from a database and an API (or any two sources) with mismatched privacy levels
  • 2Parameters or values from one data source are being passed to a query against another source
  • 3Privacy levels are set to 'None' (not configured) on one or more data sources
  • 4A function that buffers data (List.Buffer, Table.Buffer) is reading across sources of different trust levels

How to fix it

  1. 1In Power BI Desktop: File → Options → Current File → Privacy → select 'Ignore the Privacy Levels and potentially improve performance'.
  2. 2Alternatively, set consistent privacy levels on all data sources: File → Options → Global → Privacy.
  3. 3In Power BI Service, go to dataset settings → Data source credentials → set the privacy level for each source to 'Organizational' or 'Public' as appropriate.
  4. 4Restructure your M queries to avoid passing values from one source into queries against another source.
  5. 5Use a SQL view or stored procedure to pre-join data on the server side, eliminating cross-source combinations in Power Query.

Frequently asked questions

Why does Power BI enforce privacy levels on data sources?

Privacy levels prevent data from private or organizational sources from being combined with public data in ways that could leak sensitive information during query folding or query evaluation.

Can I disable privacy level checks?

You can set datasets to ignore privacy levels in Power BI Service (dataset settings → 'Skip privacy checks'), but this is not recommended for production datasets handling sensitive data.

Does this error appear in Power BI Desktop?

Yes — Privacy level errors appear in Desktop during manual refreshes too. Desktop prompts you to configure privacy levels for each data source before refreshing.

How do I determine the correct privacy level for each source?

Public: data available to anyone (e.g., a public API). Organizational: internal data (e.g., SQL Server, SharePoint). Private: highly sensitive data that should not be combined with other sources.

Source · learn.microsoft.com/en-us/power-bi/connect-data/desktop-privacy-levels

Other privacy errors