How to Automatically Publish Power BI Report

Cody Schneider9 min read

Manually clicking the "Publish" button in Power BI Desktop every time you need to update a report is tedious and inefficient. Instead of getting stuck in a cycle of downloading data, refreshing your report, and republishing it, you can set it to update automatically. This article will show you exactly how to automate your Power BI reports so your team and stakeholders always have the latest data, with no manual effort required.

GraphedGraphed

Still Building Reports Manually?

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

Watch Graphed demo video

Why Should You Automate Power BI Reports?

Before diving into the "how," it's helpful to understand the "why." Automating your Power BI reports isn't just about saving a few clicks, it's about fundamentally improving your reporting workflow. When you set up automated refreshes, you gain several key advantages:

  • Saves Valuable Time: This is the most obvious benefit. The hours spent each week or month on the manual refresh-and-publish routine can be completely eliminated. That time can be reinvested into analyzing the data and finding insights, which is where the real value lies.
  • Ensures Consistency and Reduces Errors: Manual processes are prone to human error. You might forget to refresh a data source, an intern might publish an incorrect version, or someone might be on vacation, halting the entire reporting process. Automation standardizes the process, ensuring the correct report is updated on a consistent schedule every single time.
  • Delivers Fresh Data to Decision-Makers: In a fast-moving business, decisions based on stale data are risky. Automated reports ensure that your stakeholders - from the marketing team to the C-suite - are always looking at the most current information available when they view a dashboard. This builds trust in the data and empowers them to make timely, informed decisions.

The Core Concept: It's All About the Data Refresh

A common point of confusion is the difference between "publishing" a report and "refreshing" its data. Let’s clear this up.

Publishing is the one-time action of moving your report file (the .PBIX file) from Power BI Desktop to the Power BI Service (the cloud-based platform where users view and interact with reports). You do this when you first create the report or when you make major structural changes to its design, visuals, or data model.

Refreshing is the process of updating the data within the visuals of the report that is already published in the Power BI Service. This is the part you'll be automating.

So, the goal isn't to re-publish the entire report file constantly. It's to publish it once and then create an automated schedule for Power BI to fetch the latest data from your sources and refresh the visuals.

GraphedGraphed

Still Building Reports Manually?

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

Watch Graphed demo video

Method 1: Using the Built-in Scheduled Refresh

The easiest and most common way to automate your reports is by using the "Scheduled Refresh" feature directly within the Power BI Service. This method works for the majority of use cases and is relatively simple to set up.

Step 1: Publish Your Report to the Power BI Service

First, you need to get your report from your computer into the cloud. Open your completed report in Power BI Desktop.

  1. On the Home ribbon, click Publish.
  2. You’ll be prompted to sign in to your Power BI account if you haven’t already.
  3. Choose a destination workspace to publish the report to. "My workspace" is your personal space, but it’s better practice to use a shared workspace if you collaborate with a team.
  4. Click Select. Once it’s done, you’ll get a success message with a link to open the report in the Power BI Service.

Step 2: Configure Your Dataset Settings

Now that your report is in the Power BI service, you need to tell Power BI how to access your data sources on its own.

  1. Navigate to the workspace where you published your report.
  2. Find your new dataset in the list (it will have the same name as your report file). Hover over it, click the three-dot menu (...), and select Settings.

Here, you'll see a few key sections that need your attention.

Step 3: Provide Data Source Credentials

Expand the Data source credentials section. Power BI needs permission to log into your data sources and pull data. For a cloud source like a SQL Azure database or SharePoint Online, you'll need to edit the credentials and sign in using a method like OAuth2, which securely connects your Power BI account to the source.

If you're connecting to a local file (like an Excel or CSV file on your hard drive) or an on-premises database (like a SQL Server inside your company’s network), you'll run into a different challenge, which leads to the next step.

GraphedGraphed

Still Building Reports Manually?

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

Watch Graphed demo video

Step 4: Set Up an On-Premises Data Gateway (If Needed)

The Power BI service lives on the internet, it has no way to directly "see" the files on your computer or your company's internal servers. A data gateway acts as a secure bridge between your on-premises data and the Power BI service in the cloud.

If your dataset settings show an error message like "You can't schedule refresh for this dataset because the following data sources currently don't support refresh," it's likely because you need a gateway.

  • Download and install the "standard mode" data gateway on a computer that is always on and connected to your network (ideally a server).
  • Sign in with your Power BI account.
  • In the Power BI Service dataset settings, under the Gateway connection section, you should now see your configured gateway. You'll need to map your local data sources to the gateway connection. You’ll only need to do this setup once per machine.

Step 5: Configure the Scheduled Refresh

This is where the automation happens. In the dataset settings, expand the Scheduled refresh section.

  • Toggle the switch to On.
  • Refresh frequency: Choose whether you want the refresh to happen Daily or Weekly.
  • Time zone: Select your local time zone so the refreshes happen when you expect them to.
  • Time: Click Add another time to specify the exact time of day for the refresh.

With a Power BI Pro license, you can schedule up to 8 refreshes per day. With a Premium license, this jumps up to 48 refreshes per day (every 30 minutes).

Lastly, check the box under Send refresh failure notifications. This ensures you (and any other specified contacts) get an email if the automated refresh fails for any reason, like a password change or a server being down.

Click Apply, and you're done! Your report's data will now update automatically based on the schedule you set.

Method 2: Triggering Refreshes with Power Automate

What if you don't want your report to refresh on a fixed schedule? What if you want it to refresh in response to a specific event? For example, "refresh the report every time my team adds a new file to our SharePoint folder." For this, you can use Power Automate (previously known as Microsoft Flow).

Power Automate lets you create workflows that connect different apps and services. One of its built-in actions for Power BI is "Refresh a dataset."

GraphedGraphed

Still Building Reports Manually?

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

Watch Graphed demo video

A Common Use Case: Refreshing on a Data Update

Imagine your sales team inputs their daily reports into a SharePoint list. You can build a flow that triggers a Power BI data refresh every time a new item is added to that list.

High-Level Steps in Power Automate:

  1. Go to Power Automate and start creating a new Automated cloud flow.
  2. Choose your trigger: Select the trigger for your use case, such as "When an item is created" from the SharePoint connector. Configure it to point to your specific SharePoint site and list.
  3. Add an action: The next step in your flow should be the Power BI action. Search for "Power BI" and select the Refresh a dataset action.
  4. Configure the action: Select the Power BI Workspace and the Dataset you want to refresh from the dropdown menus.
  5. Save and Test: Save your flow. Now, every time the trigger condition is met, Power Automate will tell Power BI to initiate a data refresh outside of its regular schedule.

This method is incredibly powerful for creating a truly real-time reporting experience that responds instantly to business events.

Best Practices for Trouble-Free Automation

Once you've set up automated refreshes, keep these tips in mind to ensure everything runs smoothly:

  • Monitor Your Refresh History: In the dataset settings, you can check the "Refresh history" to see a log of all successful and failed refresh attempts. Check this periodically to catch any recurring issues.
  • Keep Your Gateway Healthy: If you use a data gateway, make sure the machine it's installed on remains on and has a stable internet connection. If the gateway computer goes offline, your refreshes will fail.
  • Optimize Your Data Model: Faster refreshes are better refreshes. Before publishing, use the Power Query editor in Power BI Desktop to remove unnecessary columns, filter out unneeded rows, and disable "auto date/time" to reduce the size and complexity of your data model.
  • Manage Data Source Changes: If you change a password, a server name, or a file path for one of your data sources, remember to update the credentials or location in the Power BI Service dataset settings to prevent refresh failures.

Final Thoughts

Automating your Power BI reports moves them from static documents to dynamic, living dashboards. By taking the time to set up scheduled refresh or trigger-based automation, you eliminate manual busywork, reduce errors, and empower your organization with timely, trustworthy data.

While Power BI is a powerful tool, getting started often involves a steep learning curve of setting up data gateways, managing data models, and navigating complex interfaces. That is exactly why we built Graphed. We wanted to solve the reporting headache for marketing and sales teams by connecting their data sources in seconds and allowing them to build dashboards using simple, natural language. It's like having a real-time data analyst who creates and refreshes your reports for you, so you can focus on insights instead of setup.

Related Articles

How to Enable Data Analysis in Excel

Enable Excel's hidden data analysis tools with our step-by-step guide. Uncover trends, make forecasts, and turn raw numbers into actionable insights today!