Scale Power Automate Desktop (PAD) using multiple Machines
Scale Power Automate Desktop (PAD) using multiple Machines
Whether you should use Power Automate Desktop or not has been described by my colleague in the community Reza Dorrani in his excellent video about this topic (https://www.youtube.com/watch?v=z19CAWq1tK8).
However, since the practical application of this topic is relatively rare we cannot cover all uses cases. So we will show how to scale a small solution to multiple machines. One thing in advance: The solution shown here should only be used as a last "resort" if you can't or don't want to replace the corresponding solution with a newer application that has an API (e.g. due to budget restrictions).
Power Automate Desktop (PAD), at least in the context of Power Automate cloud flows, is a bridging technology for applications without API. It does this very well, without question. However, it should by no means be seen as a long-term solution. A clearly better solution is to scrap the old software and replace it with a modern solution, for example based on the Power Platform. But anyways, lets go now. Keep in mind the following scenario is very much simplified to keep this article within reading span of most people.
In the following scenario we have a VM with Power Automate Desktop and a corresponding flow. Next to it we have a second VM on which nothing else is currently happening:

In our use case, to keep the example simple, we have an Excel file that stores contact information. Two flows exist for this purpose: 1x a Power Automate Desktop flow that fetches the data from the Excel file and 1x a cloudflow that checks if there is a duplicate when creating a contact. So far so good:

When the users enters a name which is in the Excelfile s/he gets flag telling her/him that this user might be a duplicate. However, this solution is not so good for two main reasons:
- If the mentioned VM has unplanned downtime, the described mechanism is not available and the cloudflow would time out.
- This approach also has disadvantages with a high workload, i.e. many users creating contacts. There may be long waiting times.
To prevent such problems, Microsoft offers the possibility to combine several VMs in a machine group. How this works is shown in the following steps. What we need to do is:
- Start a new VM (this we have already done)
- Install PAD, launch the portal and add the new VM to the machine group
- Update cloud flow connection if needed
To go one, first thing is create a new machine group:

Once you have created a machine group, or you already had one, you can go to step 2 (installing PAD and launching the portal). How to get PAD is described by an in detail MS Learn article: https://learn.microsoft.com/en-us/power-automate/desktop-flows/install . After installation is done you can log in with your account to the Power Automate Desktop Portal on the second VM. Here you should see something like this:

At this point the password of the Machine Group has to be entered, i.e. not the password of the admin account of the Power Platform or the local admin. The password of the Machine Group can be set as often as you like. So last we need to change the connection of the Cloud Flow to the connection of the Machine Group. This is done so that the Cloud Flow can also use the full power of the, now two, machines. For starters I would advise you to go to make.powerautomate.com which is the cloud portal for all power automate related activities. There you have more options than in the classical power platform portal:

So now you need to open your cloud flow and update the connection to the machine group instead of the single machine. You click on the three dots of the action and select "New connection reference", then you should see something like this:

It is recommended to login at every machine inside your machine group with the same user. Most solutions that are displayed in the internet recommend this. This makes it easier giving the connection one username and one password. For simplicity I just use my personal user, but in practice you would create an AAD Admin user that has admin rights on all the machines.
Once you are done, you should see something like this:

Once all this is done you should make sure to log in to all the machines you want to us, or if you run your flows in unattended mode you have to log out. Now its time to test the machine group. To do that I will create multiple contacts shortly after another, knowing that the flow will take a while to start PAD, read the excel file, give results back and loop over it to check the results:

Now there is only one thing left to do. We want to check if the flows are really executed on different VMs. To check this we first need the "hostnames" of the two machines. This can be displayed on every Windows with the command "hostname". In my case the first hostname ends with: (...) VMPA and the second one ends on (...) U0Q4.
Now we have to check where the flow run was executed. For this we open a flow run and click on the details of the connector:

After this you should see a screen like the following:

So lets check out another run now:

If you made it that far & could reproduce: congratulations! Now you are ready to scale as many VMs as you want using Power Automate Desktop using machine groups. This piece was only a glimpse of things you can/should do. Stuff like automatic checks if your machines are running, and respective actions if not, would have been too much for such a piece. If you are interested in such content comment below and we might publish it in the future (using Power Automate of course :-)
Scale Power Automate Desktop (PAD) using multiple Machines
Published on:
Learn moreRelated posts
Power Automate Generative Actions
Power Automate Generative Actions Build Intelligent Automations with Natural Language and AI 📅 Released: Preview (2024-2025) 🎯 Status: Publi...
Create Excel File in OneDrive Using Power Automate and Insert Records Dynamically from Dataverse
Exporting Dataverse records into Excel is a common requirement in Dynamics 365 and Power Platform projects—whether for reporting, backup, or d...
Fixing the “Only 1 of 2 keys provided for lookup, provide keys for dataAreaId, ProjectID / Not found” Error in Power Automate (Fin & Ops Apps)
Recently, while working with the Projects table from a Finance & Operations (F&O) environment, we ran into an error while using the Ge...
Rules of Engagement: How Plugins, Workflows, and Power Automate Coexist in the Execution Pipeline
Understanding how the three automation engines interact—Plugins, Classic Workflows, and Power Automate—is essential for designing predictable,...
Power Automate: Fixing the ‘ChildFlowNeverPublished’ Error
While trying to enable one of the cloud flows from a managed solution I had installed, I encountered the following error: “{“erro...
Power Automate – Information regarding the end of support for Document Automation Toolkit
On November 15, 2025, the Document Automation Toolkitfeature in Power Automate reached of support. How does this affect me? Makers will no lon...
AI Agent Security: Applying Presume Breach and Least Privilege in Microsoft Copilot Studio & Power Automate
AI-backed tools are powerful and easy to develop. Give an agent access and clear instructions, and in many cases, it can just do the job. Howe...
Power Automate – Enable process mining integration in process map
We are announcing the ability to enable process mining integration in process map in Power Automate. This feature will reach general availabil...
How to Automate Image Descriptions with AI Builder in Power Automate
In today’s fast-paced digital world, automating repetitive tasks not only saves time but also significantly improves productivity. Microsoft n...