Migrate from Power Automate to Activepieces

A plan for moving business-built Power Automate cloud flows to self-hosted Activepieces: what maps cleanly, what stays in Microsoft 365, and how to cut over safely.

On this page

Migrate from Power Automate to Activepieces: what the move involves

Organizations usually start this move at a renewal, a licensing change or a data residency requirement, with a large set of cloud flows built by business makers over several years. The move is a rebuild of flows, not a file conversion, and the effort depends on three things: how many flows are in scope, which connectors they use, and how their approvals are designed. Power Automate's export paths do not import into Activepieces, so each flow is recreated in the Activepieces builder, and the exported packages serve only as a reference for triggers, steps and conditions.

The work is usually shared. An IT or platform team owns the environment, the Activepieces installation, identity, secrets and the connection inventory, while makers rebuild their own flows because they know the business logic and the exceptions. Ask for a written inventory first: flow name, owner, environment, trigger, connectors, approval steps and how often each flow runs. Then sort flows into three groups: rebuild in Activepieces, keep in Microsoft 365, or retire. Flows that depend on Outlook, SharePoint or Teams approvals are the ones most likely to stay in Microsoft 365, and the decision should be made per flow, not per tenant.

Plan for two checks that are easy to miss. First, confirm that each connector a flow needs exists as an Activepieces piece in your edition, and that any connection requiring an identity provider or an on-premises path has been tested in your own network. Second, confirm which features your approval design needs. Activepieces lists SSO from its Team plan, while audit logs, SCIM and external secret managers appear only in its Ultimate plan on the Activepieces pricing page, so check those against your governance requirements before makers start building.

Which Power Automate capabilities map to Activepieces, and what needs rework

This table compares the main Power Automate cloud flow capabilities with what Activepieces offers, marking each row as clean, needs rework or gap. Use it to scope which flows can be rebuilt directly, which need redesign, and which need a separate tool. Confirm every Microsoft 365 connector you depend on against the Activepieces piece catalog before committing to a migration plan.

CapabilityActivepieces positionStatus
Triggers and actionsActivepieces provides triggers and actions through its pieces, and simple cloud flows with a trigger and a few steps usually rebuild directly. Flows that rely on complex expressions or nested loops need manual redesign.Clean for simple flows, needs rework for complex ones
Connectors for Microsoft 365Activepieces has more than 280 pieces (integrations), about 60 percent contributed by the community. Confirm each Outlook, SharePoint, Teams, Excel and Planner action your flows use against the piece catalog.Needs rework until each connector is confirmed
Connectors for third-party appsCoverage of common SaaS apps is broad, but depth varies by piece. Check specific triggers and actions, and whether a custom HTTP step is needed where a piece is missing.Needs rework
ApprovalsPower Automate approvals have no direct built-in equivalent in Activepieces. Rebuild approval steps with human-in-the-loop patterns or a ticketing or form tool, and test the response and reminder logic.Needs rework
Environments and solutionsPower Automate solutions and Dataverse environments have no direct equivalent. Activepieces project and environment handling is a different model, so plan separate development and production instances.Gap, needs a separate approach
Connection managementPower Automate connections tied to users must be recreated in Activepieces with service accounts or owned credentials. Plan credential ownership and rotation before cutover.Needs rework
AI and MCP capabilitiesActivepieces offers AI agent features and says its pieces can be used as MCP servers with LLM clients. Confirm the specific AI actions you need and whether they match your data handling rules.Clean for pieces you confirm, needs review for data handling
Desktop flows (RPA)Activepieces does not run desktop RPA that automates Windows applications through the user interface. Use an API integration where possible, or a separate RPA approach for legacy desktop apps.Gap, needs a separate approach

What moves, what is rebuilt, and which connections must be recreated

Moving Power Automate flows to Activepieces means separating what travels as a file from what must be recreated or migrated as data. The export packages document flow logic, while run history, credentials, Dataverse records, SharePoint items and gateway connections each need their own step. Work through these six items for every flow before you switch it off.

Export packages are a rebuilding reference

Power Automate lets a flow owner export a single flow as a .zip package, and admins can bundle groups of flows into Dataverse solutions. Neither file is an importable definition for Activepieces, so treat both as a readable record of triggers, actions, conditions and expressions. Each package is a reference for rebuilding, and it cannot be imported. Copy its logic into a rebuild sheet, keep the originals for audit, and confirm with Microsoft which owners and environments can export before any license change takes effect.

Run history stays behind

Run history, including failed runs and the inputs and outputs that show how a flow behaved, does not move with the flow. Activepieces starts its own run log when a rebuilt flow goes live. Run history does not transfer to the new platform. Before you retire a flow, record its run outcomes for any audit period you must keep, export what your retention policy requires, and confirm with Microsoft how long run data stays available in your tenant.

Connector credentials must be recreated

Power Automate connections are bound to the account that created them, and they do not transfer to Activepieces. Each piece asks for its own credential, so create service accounts or OAuth apps in each source system first, scoped only to what the flow needs. Every connection is set up again by hand. Record the owner of each credential, because a rebuilt flow that runs under a departed maker's login will fail as soon as that account is disabled.

Dataverse records migrate as data

A Dataverse solution can hold table definitions, business rules and environment variables alongside flows, but the rows in those tables are data. Export the records through a separate process, then validate row counts, relationships and option-set values in the target. Records and flow logic follow different paths. Decide whether Activepieces writes to Dataverse through a built-in piece or a custom HTTP call, and confirm the Web API endpoint and permissions for the service account before cutover.

SharePoint lists need remapped references

SharePoint lists keep their items through a migration, but flows refer to them by site URL, list GUID and column internal name. Rebuilt flows must point to the same identifiers, and any column renamed since the flow was written will break the mapping. Internal names and list GUIDs decide whether a flow still works. Check item-level permissions and the service account's access to each site, and test attachments and people columns, which often behave differently across tools.

On-premises gateway connections need a new path

The on-premises data gateway is how Power Automate reaches databases and file shares inside your network, and it does not carry over. A self-hosted Activepieces install reaches those systems only if its host has a network route to them. Each internal source needs a network path you build and test. Plan firewall rules and credentials for every source, and ask your platform team to confirm the route before the first rebuilt flow runs. The Activepieces install overview covers the self-hosted setup.

Which flows should stay in Microsoft 365

Not every Power Automate flow should move to Activepieces, and the decision should be made flow by flow before any rebuild starts. Flows that depend on Microsoft 365 behavior are the first candidates to keep where they are. Examples include approval requests that post an Outlook or Teams adaptive card and wait for a reply, flows triggered by SharePoint document libraries that manage a file through review and publication, and flows called from a Power Apps canvas or model-driven app. Moving these means rebuilding the trigger, the approval state and the app call, and users will notice any change in how the approval reaches them. Keeping them in Power Automate is a legitimate outcome, and the Microsoft 365 license and environment that already support them remain a cost you have to account for.

Review each flow with three questions: who owns it, how sensitive the data it touches is, and how deep its connector dependence runs. Ask the owner what business process the flow supports and who would be affected if it stopped for a day. Classify the data as public, internal, or regulated, since flows handling regulated records should move only into an environment you have already approved for that data. Count the connectors, and mark any that are Microsoft-specific or Dataverse-dependent. Confirm in Activepieces' own piece catalog and the Activepieces repository whether each third-party connector your makers use exists and is maintained, since community pieces vary in depth. Flows with few connectors, clear owners and no app dependency are the easiest to move first.

A split estate is normal. Many organizations keep approval and document flows in Microsoft 365 while moving departmental automations that call third-party SaaS tools to a self-hosted platform. Record the decision in a register with the flow name, owner, environment, data classification, the chosen destination, and a review date. Name a business owner who signs off each keep or move decision, and state who maintains the flow after handover. Revisit the register when Power Automate licenses renew or when a connector changes, so the split reflects current facts rather than the decisions made during the first migration wave.

How to sequence the migration from inventory to decommission

This sequence moves Power Automate cloud flows to Activepieces one flow at a time, so each step leaves a record that the next step depends on. Each stage produces a named artifact that proves the flow is ready to move, runs correctly, or can be retired safely.

  1. Build the inventory register by owner and environment

    Start by listing every cloud flow across all Power Platform environments, noting the owner, the connectors each flow uses, its trigger type, run frequency, and whether it runs under a personal or shared connection. Flow owners and the platform team should review the list together, since makers often forget flows they built years ago. The output is an inventory register, and the step is done when every flow has an owner, a business purpose, and a named target decision (rebuild, keep in Microsoft 365, or retire).

  2. Pilot with low-risk flows

    Choose a small set of flows that are low in business impact, use connectors you have already tested in Activepieces, and have an owner willing to test. Rebuild them in a self-hosted Activepieces instance, check connector coverage and approval steps, and compare outputs with the live flows. The pilot report should record what worked, which connectors needed workarounds, and what makers struggled with in the builder, so the rest of the plan reflects real results.

  3. Run both platforms in parallel

    For each rebuilt flow, run the Activepieces version alongside the Power Automate original. Send copies of inputs to the new flow where the source system allows it, or use a shadow trigger that records what would have happened without writing to production systems. Compare outcomes, error handling and timing for an agreed period. The parallel-run log should show matching results, every mismatch with its cause, and the owner's sign-off that the rebuild behaves as expected.

  4. Write a cutover runbook for each flow

    Before switching a flow, write a short runbook that names the change window, the people who approve and execute it, the steps to disable the Power Automate flow, enable the Activepieces flow, and recreate connections. Include a rollback path that re-enables the original flow and states who decides to roll back and on what signal. The runbook is complete when the flow owner and the platform team have both signed it, and the rollback has been checked in a non-production setting.

  5. Cut over flow by flow with rollback ready

    Move flows in small groups, starting with those already proven in the pilot and parallel run. Turn off each Power Automate flow only after its Activepieces replacement is live and monitored, and keep the original definition exported as a reference. Watch for failed runs, missing approvals or unrecreated connections during the first runs. A flow is cut over when its replacement has processed live events under the runbook and the owner confirms the result.

  6. Confirm license and retention before decommissioning

    Once all flows for an environment are cut over or retired, confirm with your Microsoft account team and your finance and records owners what licenses can be released and what data must be kept. Check whether run history, Dataverse data, or exports must be retained under your policy and legal hold rules, and confirm the terms of your current agreement before removing anything. Record the answers so they are not reconstructed later.

  7. Record the decommission and close out

    Disable and then delete the retired Power Automate flows and connections in the order set by the runbook, keeping the exported definitions and the parallel-run and cutover records in a retained archive. Confirm that no flow in the inventory is still active on Power Automate and that the owners have accepted the change. The decommission record should list each flow, its final state, the date and approver of removal, and where the retained evidence is stored.

Self-hosting Activepieces without losing the features you need

Start by deciding which controls your rebuild depends on, because the self-hosted edition you run determines which of them you get. Activepieces recommends self-hosting with Docker Compose, backed by PostgreSQL and Redis, and offers a Helm chart for Kubernetes. Its installation documentation also notes that community-maintained hosting templates usually ship the Community edition. If you deploy from a template you found online, confirm the edition it installs before you assume SSO or audit logging is available. The Community edition is MIT licensed, and the code under packages/ee and the enterprise path in packages/server/api/src/app/ee falls under a separate commercial license.

The pricing page places several controls in higher tiers. SSO starts at the Team plan. Audit logs, Git sync and releases, SCIM and external secret managers are listed only for the Ultimate plan, which can run in the cloud or on premises. For a Power Automate migration, the questions to settle early are practical: Will your identity team require SSO for makers? Do your auditors expect an audit trail of who changed a flow? Do flows that call Microsoft 365 or line-of-business systems need credentials held in an external secret manager instead of the platform database? Will flows move between development and production through version control? Map each answer to a tier and to the feature that delivers it, then ask Activepieces to confirm current availability in writing, since the pricing page is the source you will be quoted against.

Record the result as a design decision before any flow is rebuilt. A reasonable approach is to write down the required controls, the edition that supplies each one, and the owner who signs off on any gap, such as using a Community install with access restricted at the network layer where SSO is not licensed. Confirm with your security and compliance leads whether that compensating control is acceptable for the flows in scope. Your platform team should also check whether the deployment templates or Helm charts you plan to use match the edition you chose. Deciding this first avoids rebuilding flows on a platform that later needs a licensing change or a different hosting design.

What drives the cost and duration of the migration

Effort rises with the number of flows and with how many branches, loops, error paths and variables each one contains. A simple trigger-and-notify flow is a short rebuild, while a flow that loops over approval records, writes to several systems and handles retries takes far longer to reproduce and test. Power Automate does not export a flow in a form Activepieces can import, so every flow in scope is rebuilt by hand and then checked against its original behavior.

  • Simple versus branching flows: Count flows by step count and branching, not only by number. A small share of complex flows often drives most of the rebuild time.
  • Dead and duplicate flows: Flows that have not run in months or copies of the same flow can usually be retired before migration, which removes work with no loss of function.
  • Expressions and formulas: Power Automate expressions must be translated into Activepieces logic and data mapping, so heavy formula use adds testing time.
  • Run history as a test oracle: Keep sample inputs and expected outputs from production runs so each rebuilt flow can be verified against known results.
  • Consolidation opportunities: Several flows that do the same job may become one reusable flow, which reduces future maintenance.

Ask your implementation partner for a written inventory with step counts and run frequency for each flow before agreeing a fixed scope.

What usually goes wrong when business makers move flows

Most migrations from Power Automate fail in the handoff rather than the build. The six risks below cover inventory, connections, approvals, cutover, governance and scope, and each has a prevention step that can be checked before the old flows are switched off.

Unowned flows with no inventory

Many cloud flows were built by people who have since changed roles, and some are used by teams that never知道 who maintains them. Before any rebuild starts, list every flow with its owner, environment, trigger, connectors and last run date. Flows with no owner or no runs in a long period are candidates for retirement, not rebuilding. Ask the Power Platform admin which flows exist across all environments, since a maker-only inventory will miss shared flows.

Connections recreated with the wrong account

When a flow is rebuilt in Activepieces, each app connection is made again by someone, and that person's account often becomes the identity the flow runs as. A connection made under a departed employee or a personal mailbox can break the day that person leaves, or give the flow more access than it needs. Use shared service accounts with the narrowest scopes the flow requires, and record which account owns each connection in the inventory.

Approvals that lose timeouts and delegation

Power Automate approval steps often carry timeout rules, reassignment to a manager and delegated approvers that makers rarely document. These behaviors do not carry over automatically, so a request can sit unanswered indefinitely in the new tool. For each approval, write down the timeout, the escalation path and the delegation rule, then test an expired and a delegated request before cutover. Confirm how Activepieces handles approval waits in your version.

Silent failures after cutover

A rebuilt flow can appear to work while skipping records, failing a filter or stopping on a field renamed by an app update. Without alerts, nobody notices until a customer or finance team reports a gap. Run the old and new flows in parallel for a defined period, compare outputs for the same inputs, and set up failure notifications to a named owner before the old flow is turned off.

Shadow flows with no review

Once makers can build in Activepieces, they can publish flows that touch customer data or finance systems without anyone else reviewing them. This recreates the sprawl the migration was meant to fix. Set an approval step for flows that write to production systems, limit who can publish to shared connections, and use the Ultimate plan features such as audit logs and Git sync only if your governance requires them, after confirming availability on the pricing page.

Assuming desktop flows have an equivalent

Power Automate desktop flows automate legacy Windows applications by mimicking keyboard and mouse input, and Activepieces does not provide an equivalent. Teams that assume the cloud rebuild covers these flows discover the gap at cutover. List every desktop flow separately, then decide for each whether an API integration can replace it or whether it needs a different desktop automation tool and its own machines. Keep those flows running until that decision is made.

How the migration changes by starting point

A small team with a few dozen flows and a single platform owner can usually move in one pass. The owner already knows which flows matter, who relies on them and which connections are shared, so the inventory is short and the decisions are concentrated in one person. The main risk is that the rebuild depends on that one person's time, so the work should be scheduled around their availability rather than around a fixed project plan.

  • Sequence by business impact: Start with the flows that notify customers, move money or feed approvals, because those are the ones that need the most testing, and retire low-use flows first if they are easy to replace.
  • Keep governance light but written: A short register of owners, connectors and credentials is enough, and it should live in the new Activepieces installation so the next person can find it.
  • Run a short parallel period: Keep Power Automate active only for the flows that have been rebuilt and verified, then turn off each one as its replacement is confirmed.
  • Train the maker in the same sprint: The person who builds the flows is also the one who will maintain them, so training and rebuilding can happen together.
  • Plan for absence: Document each flow's trigger, approval path and failure behavior so another administrator can take over.

Before you begin, confirm with the platform owner which flows are business critical and whether any depend on Power Automate features that Activepieces does not offer.

Questions buyers ask before migrating Power Automate flows

How much effort does migrating Power Automate flows to Activepieces take?

Effort depends mainly on how many flows you run, how many connectors and approval steps each one uses, and how much custom logic sits in expressions, loops and error handling. Flows that send a notification or copy a row between two SaaS apps are usually quick to rebuild. Flows that wait for approvals, call custom HTTP endpoints, or depend on Dataverse tables need more design and testing. Activepieces provides more than 280 pieces, about 60 percent community-contributed, so first confirm that each connector you use has an equivalent piece and that its actions and triggers cover what the flow does. Ask any implementation partner to price the work from a written inventory, not from a flow count alone.

How long does a Power Automate to Activepieces migration take?

Duration depends on the inventory, so no fixed timeline applies across organizations. Before you can estimate, list every flow with its owner, environment, trigger, connectors, approval steps, run frequency and business criticality. Flows owned by people who have left, flows that nobody has run in months, and flows that feed finance or compliance reports each change the plan. Retiring unused flows early shortens the work. Ask for a timeline tied to a fixed scope with named deliverables, and confirm which flows are in the first wave and which are deferred.

What does a migration need from the business and from IT?

The business side has to name flow owners, confirm what each flow must do today, and approve test cases before switchover. Makers often know undocumented exceptions, such as a manual step when a value is missing, so their time during rebuild and testing matters. IT has to decide where Activepieces runs, how PostgreSQL and Redis are backed up, how secrets and credentials are stored, who holds administrator rights, and how users sign in. Agree these responsibilities in writing at the start so that nobody assumes another team will own the connections or the cutover.

Can our internal staff migrate the flows without outside help?

Internal staff can rebuild simple flows themselves, especially where the team already knows Activepieces' builder and the connectors involved. Outside help is most useful for the parts that are easy to get wrong: moving complex approval logic, designing error handling and retries, setting up a production-grade self-hosted deployment, hardening it, and documenting the result for audit. Confirm your team's capacity against the inventory. Many organizations split the work, with makers rebuilding their own low-risk flows and a specialist handling shared, regulated or high-volume flows.

Can Power Automate flows be imported into Activepieces automatically?

No. Power Automate's documented exports, single-flow .zip packages and Dataverse solutions, are references that show a flow's logic, triggers and connector names. They are not definitions that Activepieces can import and run. Each flow has to be rebuilt in Activepieces, with its connections recreated and tested. Use the exports as a specification and keep them for audit and rollback. Ask any partner to confirm how they will document the mapping from each source flow to its Activepieces replacement.

What happens to Power Automate desktop flows during the move?

Desktop flows that automate legacy Windows applications through keyboard and mouse actions have no direct Activepieces equivalent. They usually need a separate decision: keep them on Power Automate Desktop, replace them with an API integration where the target system offers one, or move them to a desktop automation framework such as Robot Framework and run them on bot machines you manage. Inventory desktop flows separately, because they depend on machines, licenses and application versions that cloud flows do not. Confirm this scope in writing before you start the cloud flow rebuild.

How should we handle licenses during the parallel run?

Keep Power Automate licenses active until every flow in scope has been rebuilt, tested and switched over, because flows stop when their licenses or environments lapse. Plan a parallel run in which both platforms process the same events and you compare outputs. On the Activepieces side, the Community edition is MIT licensed and is the self-hosted automation core. Features such as SSO, audit logs, SCIM and external secret managers appear on paid tiers in the Activepieces pricing page, so confirm which of them your security requirements need. Check current plan terms with the vendor before you commit, since pricing changes.

Does Activepieces support the same security controls as Power Automate?

Activepieces' Community edition covers the core automation runtime, while SSO begins with the Team plan and audit logs, SCIM, Git sync and external secret managers are listed only for the Ultimate plan. If your organization relies on those controls, plan for them before cutover rather than after. Ask the vendor to confirm which controls are available in your chosen edition and deployment. DeployOpen can plan, implement and document controls inside your infrastructure and prepare evidence for compliance assessments, but independent auditors and certification bodies issue any audit report.

How DeployOpen scopes and runs the migration

DeployOpen is a Chainscore Labs company that plans, implements, customizes, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside the client's own infrastructure, whether that is a cloud account, a data center or an air-gapped network. For a Power Automate to Activepieces move, that means the Activepieces deployment, its PostgreSQL and Redis dependencies, the connections to Microsoft 365 and other business systems, and the operating procedures for the team that will run it are all part of the work. Most engagements are fixed-scope, so the written agreement should name which flows are in, which connectors must be built or verified, how makers are trained, and what is handed over at the end.

Before work starts, ask for the scope in writing and check that it lists the decisions this topic depends on: which flows move, which stay in Microsoft 365, who approves connector and credential changes, and how the old flows are retired. Ask who owns the Activepieces instance after handover, who performs upgrades given that the Community edition is MIT licensed and the Ultimate plan is priced separately, and which features the quote assumes. Confirm whether the self-hosted build needs any feature under packages/ee, since those files carry a separate commercial license. Timelines and deliverables should be attached to these items, not to a generic migration template.

DeployOpen does not publish a price list. A quote follows from the written scope, so the reader's inputs are the inventory of flows, the number of makers and environments, the connectors that need custom pieces, and the level of hardening and backup required. Ongoing support, upgrades and continuous testing are available as retainers, which is the natural place to cover Activepieces release updates after go-live. DeployOpen prepares systems, controls and evidence for compliance assessments, but it does not issue audit reports or certifications; where a regulator or auditor needs evidence, the reader should confirm early which independent body will review it.

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.