Power Automate Desktop vs Cloud Flows - When to Use Each
One of the most common points of confusion we see with Australian businesses adopting Power Automate is understanding the difference between Desktop flows and Cloud flows. They share a name, but they solve fundamentally different problems. Choosing the wrong one wastes time and money. Choosing the right one - or the right combination - is where the real value sits.
Here's how we explain it to our clients.
The Core Difference
Cloud flows automate processes that happen in cloud applications. They connect cloud services to each other via APIs. Think: when an email arrives in Outlook, extract the attachment, save it to SharePoint, send a Teams notification, and create a task in Planner. Everything happens in the cloud, no desktop involved.
Desktop flows automate processes that happen on a Windows desktop. They interact with applications the same way a human would - clicking buttons, typing text, reading screen elements. Think: open a legacy accounting application, log in, navigate to the invoices screen, enter data from a spreadsheet, click submit. The automation physically controls a computer.
| Aspect | Cloud Flows | Desktop Flows |
|---|---|---|
| What they automate | Cloud services and APIs | Desktop applications and legacy software |
| How they work | API calls between services | Screen recording, UI automation (RPA) |
| Where they run | Microsoft's cloud infrastructure | On a Windows machine (physical or virtual) |
| Trigger types | Events in cloud services, schedules, HTTP requests | Called from cloud flows, manual, schedule |
| Licensing | Included in M365 (basic) or Premium | Requires Premium or Process license |
| Reliability | High - API-based, doesn't depend on UI | Moderate - can break if UI changes |
| Speed | Fast - milliseconds between steps | Slower - simulates human interaction |
| Maintenance | Low - APIs are stable | Higher - UI changes require updates |
When to Use Cloud Flows
Cloud flows should be your default choice. They're more reliable, faster, easier to maintain, and cheaper to license. Use cloud flows when:
Your process involves cloud applications with connectors
Power Automate has 1,000+ connectors to cloud services. If the applications in your workflow have connectors, use cloud flows. Common examples for Australian businesses:
- Microsoft 365 workflows: Outlook, SharePoint, Teams, OneDrive, Planner, Forms
- CRM processes: Dynamics 365, Salesforce, HubSpot
- Accounting integration: Xero, QuickBooks, MYOB (via API)
- Communication: Twilio (SMS), SendGrid (email), Slack
- Project management: Jira, Asana, Monday.com
Your process is triggered by events in cloud services
Cloud flows excel at event-driven automation:
- When a new email arrives, do something
- When a SharePoint item is created or modified, do something
- When a Forms response is submitted, do something
- When a Dynamics 365 record changes, do something
- On a schedule (daily, weekly, monthly)
You need the automation to run unattended in the cloud
Cloud flows run on Microsoft's infrastructure. They don't need a computer to be switched on, a user to be logged in, or any physical resource. They just run. This makes them more reliable and easier to manage than desktop flows.
Examples of good cloud flow use cases
Approval workflows. Someone submits a request via Forms or SharePoint, the flow routes it for approval, sends notifications, and updates the status. All cloud-based, all via APIs.
Data synchronisation. When a record is created in Dynamics 365, create a corresponding entry in Xero. When a SharePoint list is updated, sync changes to a SQL database.
Email processing. Monitor a shared mailbox, extract attachments, process them with AI Builder, and route based on content.
Notifications and alerts. When a KPI exceeds a threshold in your data source, send a Teams message to the relevant manager.
When to Use Desktop Flows
Desktop flows are for situations where cloud flows can't reach. The trigger is usually the same: the application you need to automate doesn't have an API or a Power Automate connector. Use desktop flows when:
You need to automate legacy Windows applications
This is the primary use case. Many Australian businesses still run critical processes through legacy software that was built before APIs were standard. We've seen:
- Old accounting packages with no API (desktop-only software from the 2000s)
- Custom-built internal tools running on Windows Forms or older frameworks
- Government compliance portals that only work through a browser with specific UI interactions
- Legacy ERP modules that haven't been updated in years
- Mainframe terminal emulators
If the only way to interact with the software is through the screen, desktop flows are your option.
You need to automate tasks in Citrix or Remote Desktop environments
Some applications are only accessible through Citrix or Remote Desktop. Desktop flows can automate within these virtual environments, though it requires careful configuration and is more fragile than direct application automation.
You need to work with local files in specific ways
While cloud flows can work with OneDrive and SharePoint files, some processes require working with local files on a machine - reading from a local network drive, processing files with a desktop application, or interacting with hardware-connected devices.
You need to automate web applications without APIs
Some web applications don't have APIs but need to be automated. Desktop flows can control a web browser, filling in forms, clicking buttons, and extracting data from web pages. This is essentially web scraping with automation built on top.
Examples of good desktop flow use cases
Legacy system data entry. Extract data from a SharePoint list or Excel file, then enter it into a legacy application that only accepts keyboard and mouse input.
Report generation from legacy software. Open a legacy application, navigate to the reports section, generate a report with specific parameters, save or export the result.
Government portal submissions. Some Australian government portals (ATO, state revenue offices, regulatory bodies) require manual interaction through their web interfaces. Desktop flows can automate these submissions.
File format conversions. Open a file in a desktop application, save it in a different format. Common when legacy systems require specific file formats that cloud tools can't produce.
Combining Desktop and Cloud Flows
The real power comes from combining both. In our experience, this is the most common pattern for Australian businesses with a mix of modern and legacy systems.
The typical pattern
- Cloud flow handles the trigger and orchestration. An email arrives, a form is submitted, or a schedule fires.
- Cloud flow does everything it can in the cloud. Extract data, validate, route for approval - all via APIs.
- Cloud flow calls a desktop flow for the legacy step. When the process needs to interact with a legacy application, the cloud flow triggers a desktop flow.
- Desktop flow completes the legacy interaction. Enters data, generates a report, or whatever the legacy system requires.
- Desktop flow returns results to the cloud flow. The cloud flow continues with notifications, logging, or next steps.
Real-world example - Invoice processing with a legacy accounting system
One of our Melbourne clients processes invoices that need to be entered into a legacy accounting system with no API. Here's how we built it:
- Cloud flow monitors the invoices mailbox for new emails with attachments
- Cloud flow extracts the invoice PDF and processes it with AI Builder
- Cloud flow validates the extracted data and routes for approval via Teams
- Cloud flow calls a desktop flow after approval
- Desktop flow opens the legacy accounting application, logs in, navigates to the invoice entry screen, enters all the extracted data, and submits
- Desktop flow captures the confirmation number and returns it to the cloud flow
- Cloud flow logs the result, updates the SharePoint tracking list, and sends a confirmation notification
The cloud flow handles 90% of the work. The desktop flow handles the one step that requires interacting with a legacy application. This hybrid approach is far more maintainable than building the entire process as a desktop flow.
Attended vs Unattended Desktop Flows
An important distinction within desktop flows:
Attended flows
- Run on a machine where a user is logged in
- The user can see the automation happening on their screen
- The user triggers the flow manually or it runs alongside their work
- Good for: processes where the user needs to provide input partway through, or where the automation assists the user rather than replacing them
- Licensing: Included with Power Automate Premium per-user license
Unattended flows
- Run on a machine without a user being logged in
- The automation runs in the background, typically on a dedicated virtual machine
- Triggered by cloud flows on a schedule or by events
- Good for: batch processing overnight, high-volume data entry, processes that run outside business hours
- Licensing: Requires Power Automate Process or Hosted Process license ($225-310 AUD/month per flow)
For most Australian businesses, unattended flows on a dedicated virtual machine is the recommended approach for production desktop automation. It doesn't interrupt anyone's work, runs reliably on a schedule, and can be monitored centrally.
A practical tip about virtual machines for Australian businesses: If you're running unattended desktop flows, you need a Windows machine that's always available. Options include:
- Azure Virtual Machine: $80-200 AUD/month depending on spec. Good if you're already on Azure.
- Power Automate Hosted Process: Microsoft manages the machine for you at ~$280-310 AUD/month. Simpler but more expensive.
- On-premises server: If you have existing infrastructure, you can use a dedicated machine. No additional hosting cost, but you manage it.
Decision Framework
Here's the framework we use with our clients:
Step 1: Does the application have a Power Automate connector?
- Yes - Use a cloud flow. Stop here.
- No - Go to Step 2.
Step 2: Does the application have an API?
- Yes - Use a cloud flow with a custom connector or HTTP action. Stop here.
- No - Go to Step 3.
Step 3: Can the task be done through a web browser?
- Yes (and the website has no API) - Desktop flow is likely needed, but consider if a cloud-based web automation tool might work first.
- No - Go to Step 4.
Step 4: Is it a Windows desktop application?
- Yes - Desktop flow is your option.
- No - You may need a different approach entirely.
Step 5: Does it need to run without a user present?
- Yes - Unattended desktop flow.
- No - Attended desktop flow.
Common Mistakes We See
Building everything as desktop flows. Some businesses or consultants default to desktop flows because they're familiar with screen recording. But desktop flows are harder to maintain, slower, and less reliable than cloud flows. Always use cloud flows where possible and reserve desktop flows for genuine legacy scenarios.
Not planning for UI changes. Desktop flows break when applications update their interface. A button moves, a field name changes, a menu is reorganised - and the flow fails. Build desktop flows with element identification that's resilient to minor UI changes, and budget for periodic maintenance.
Ignoring the licensing implications. Desktop flows require Premium or Process licensing. We've seen businesses build desktop flows only to discover they need to significantly increase their licensing spend. Understand the licensing before you design the solution.
Running attended flows for unattended work. If a process needs to run without human oversight, use unattended flows on a dedicated machine. Running attended flows on an employee's workstation means the automation competes with their regular work and fails when they log out.
Not combining them effectively. The biggest missed opportunity is not using cloud and desktop flows together. The hybrid approach - cloud for orchestration, desktop for legacy steps only - gives you the best of both.
Licensing Considerations for Australian Businesses
Understanding the licensing for each type helps with budgeting:
| Scenario | What You Need | Approximate AUD/Month |
|---|---|---|
| Cloud flows only (standard connectors) | Microsoft 365 license (existing) | $0 additional |
| Cloud flows with premium connectors | Power Automate Premium per user | $22-25/user |
| Attended desktop flows | Power Automate Premium per user | $22-25/user |
| Unattended desktop flows | Power Automate Process per flow | $225-250/flow |
| Unattended desktop flows (hosted machine) | Power Automate Hosted Process | $280-310/flow |
For most Australian mid-sized businesses, a combination of a few Premium user licenses and one or two Process licenses covers a practical automation program. Budget $5,000-$15,000/year for licensing, depending on scope.
Getting Started
If you're trying to work out the right mix of cloud and desktop flows for your business, reach out to our team. We'll assess your applications, processes, and existing infrastructure and recommend the approach that delivers the best results for your budget.
Learn more about our Power Automate consulting services, explore our automation offerings, or read about how we help Australian businesses with AI and automation strategy.