---
title: "How to move from Pipedream to FlowRunner"
description: "Move Pipedream workflows to FlowRunner before March 31, 2027: export each project, connect FlowRunner Prompt to Flow, convert one workflow at a time, then test and switch."
url: https://flowrunner.ai/alternatives/pipedream/migrate
date_published: 2026-11-02
date_modified: 2026-11-03T09:28:56-08:00
---

[Alternatives](https://flowrunner.ai/alternatives) / [Pipedream](https://flowrunner.ai/alternatives/pipedream) / Move to FlowRunner

![Pipedream logo](https://flowrunner.ai/assets/alternatives/pipedream.svg)

# How to move from Pipedream to FlowRunner

Move Pipedream workflows to FlowRunner before March 31, 2027: export each project, connect FlowRunner Prompt to Flow, convert one workflow at a time, then test and switch.

2026-11-02 Updated November 3, 2026 6 min Closes Mar 31, 2027

Pipedream Workflows shuts down on March 31, 2027, and everything in it, including your connected-account credentials, is deleted by April 30.

FlowRunner Prompt to Flow does the rebuilding. You give it one workflow from Pipedream’s export, or its GitHub Sync files, and it builds the same flow in your FlowRunner workspace, code steps included. What’s left for you is connecting accounts, filling in secrets, and testing.

This is the short version. For a piece-by-piece map, read [the Pipedream shutdown guide](https://flowrunner.ai/blog/pipedream-workflows-shutting-down-move-your-workflows-free). For three real workflows converted this way, read [how to convert Pipedream workflows to FlowRunner](https://flowrunner.ai/blog/pipedream-to-flowrunner-conversions).

## 1\. Export your workflows from Pipedream

Open the project, select **Settings**, and click **Export Workflows** at the bottom. The archive builds in the background. When it’s ready, open **File Store** and download `project_export-<project_id>.zip`.

-   **What’s in it:** a `manifest.json` and one JSON file per workflow: the trigger, the steps in order with their settings, and each code step’s source, from the latest deployed version. Never-deployed workflows are skipped.
-   **What’s left out:** secrets (shown as `<redacted>`), connected accounts (only an ID), environment variables, data store records, File Store files, event history, and the code of private components.
-   **Limits:** your plan must include File Stores. One export holds up to 500 workflows or 256 MB. If a project goes past that, the manifest shows `truncated: true`, so move some workflows to another project and export that one.
-   **Exporting again:** delete the existing ZIP from File Store first, then click **Export Workflows**.

If the project was synced to GitHub, its `workflow.yaml` and code step files convert just as well. If neither route works, describe the workflow in the chat and attach a screenshot of each step.

While Pipedream still runs, copy your data store records somewhere safe and save a few real events from each workflow. You’ll test against them in step 5.

## 2\. Connect FlowRunner Prompt to Flow to your AI tool

[FlowRunner Prompt to Flow](https://docs.flowrunner.ai/build/prompt-to-flow.html) is an MCP server you add to the AI tool you already use. You connect it once and sign in with your FlowRunner account. The server URL is the same for every tool: `https://app.flowrunner.ai/mcp`.

-   **Claude (web and desktop):** open **Settings** > **Connectors**, click **\+ Add**, then **Add custom connector**. Enter `FlowRunner` and the server URL, click **Add**, then **Connect**, and approve the FlowRunner sign-in. On a Team or Enterprise plan, an Owner adds it once under **Organization settings** > **Connectors**.
-   **Claude Code:** run these two commands in your project folder, and approve the sign-in page that opens:

```
claude mcp add --transport http flowrunner https://app.flowrunner.ai/mcp
claude mcp login flowrunner
```

-   **ChatGPT (on the web):** open [ChatGPT Plugins](https://chatgpt.com/plugins), click **Add**, then **Add custom MCP server**. Enter `FlowRunner`, put the server URL under **Connection**, choose **OAuth**, and approve the sign-in. In a chat, type `@` and pick FlowRunner.
-   **Codex:** add the server to `~/.codex/config.toml`, then run `codex mcp login flowrunner`:

```
[mcp_servers.flowrunner]
url = "https://app.flowrunner.ai/mcp"
```

-   **Cursor:** add the server to `~/.cursor/mcp.json`, then open **Customize** > **MCPs** and follow the sign-in prompt:

```
{
  "mcpServers": {
    "flowrunner": { "url": "https://app.flowrunner.ai/mcp" }
  }
}
```

If you don't have a FlowRunner account yet, the [Free plan](https://flowrunner.ai/pricing) needs no card, and every new account starts with 14 days of Professional. The [setup guide in the docs](https://docs.flowrunner.ai/build/prompt-to-flow.html) has each tool step by step.

## 3\. Convert one workflow at a time

Start a new chat for each workflow. Paste this request, then the workflow’s JSON file:

> Rebuild this Pipedream workflow as a FlowRunner flow. The JSON comes from Pipedream’s Export Workflows and lists the trigger, each step in order with its settings, and the source of every code step. Secrets show as and connected accounts as IDs only; environment variables and data stores aren’t in the file. Keep the same behavior. Put JavaScript steps in Custom Cloud Code, rewrite any Python, Go, or Bash step in JavaScript, and tell me which steps import npm packages. Before you build, tell me anything you can’t map one to one, and ask me about anything the file doesn’t say.

For GitHub Sync files, say the input is `workflow.yaml` plus one file per code step, and that GitHub Sync doesn’t record the trigger’s schedule or URL. If the workflow’s entry in `manifest.json` has a `warnings` list, paste that too. Answer the questions, and the flow appears in your workspace.

## 4\. Finish what the export can’t carry

The builder ends each conversion with a short list. Expect some of these:

-   **Accounts, keys, and secrets.** Connect each app once, and fill in what the export redacted or kept in environment variables.
-   **npm packages and private components.** These become a [custom extension](https://docs.flowrunner.ai/extend/index.html): one JavaScript module you deploy with the FlowRunner CLI, with `node_modules` shipped in the deploy. `npx flowrunner init-claude` installs Claude Code agents that write it. Start from your own copy of the component source.
-   **Schedules.** Set them in the flow’s schedule if your files didn’t carry them.
-   **Webhook addresses.** Callers of a Pipedream URL get the flow’s new [External Callback](https://docs.flowrunner.ai/reference/external-callback.html) address. A workflow that used `$.respond` is called through the [blocking Call Flow API](https://docs.flowrunner.ai/api/call-flow-blocking.html), from a server, since the call carries your workspace key.
-   **Approvals.** A `$.flow.suspend` step becomes a [human-in-the-loop](https://flowrunner.ai/concepts/human-in-the-loop) step that reaches the person on email, Slack, WhatsApp, phone, or a Form. Tell the builder who approves and on which channel.
-   **Forms and agent tools.** If the flow needs a form, or an AI agent that calls another flow as its tool, the AI tells you which of these to add in the flow editor.

## 5\. Test, then switch over

Run each new flow with the events you saved and compare the output with Pipedream’s. When they match, point the callers at FlowRunner, watch a few days of runs, then turn the Pipedream workflow off. Do it workflow by workflow, well before March 31.

## How Pipedream maps to FlowRunner

| Pipedream | FlowRunner | What changes |
| --- | --- | --- |
| Workflow | [Flow](https://docs.flowrunner.ai/learn/concepts/flows-and-instances.html) | A flow can start with any block, not only a trigger. |
| HTTP / webhook trigger | [External Callback](https://docs.flowrunner.ai/reference/external-callback.html) | The same URL can also resume a run that’s waiting. |
| Schedule trigger | [Flow schedule](https://docs.flowrunner.ai/reference/flow-scheduling-concept.html) | Once, an interval, daily, weekly, monthly, or cron. |
| App event sources | [Integration triggers](https://docs.flowrunner.ai/learn/concepts/triggers.html) | Every integration is on every plan. |
| Node.js code step | [Custom Cloud Code](https://docs.flowrunner.ai/reference/custom-cloud-code.html) | JavaScript with `fetch`, no npm. |
| Steps with npm packages, components | [Custom extension](https://docs.flowrunner.ai/extend/index.html) | Your own blocks, versioned, with packages shipped alongside. |
| Python, Go, Bash steps | Custom Cloud Code | Rewritten in JavaScript. |
| `$.flow.suspend` | [Human-in-the-loop step](https://docs.flowrunner.ai/reference/flows-as-agent-tools-concept.html#putting-a-human-in-the-loop) | FlowRunner sends the request and waits for the answer. |
| `$.respond` | [Return Result](https://docs.flowrunner.ai/reference/return-result.html) with the blocking Call Flow API | The caller gets the answer in the same request. |
| Data stores | [Shared Memory](https://docs.flowrunner.ai/learn/concepts/shared-memory.html) | Key and value state across runs. |
| Event history | [Run history](https://docs.flowrunner.ai/run/inspecting-a-run.html) | Every run block by block, with inputs and outputs. |

## Quick wins on day one

-   **One execution per run.** A complete run counts once, however long it waits. No credit per 30 seconds of compute.
-   **Approvals that wait** up to 30 days on Free, Starter, and Growth, and up to a year on Professional and above. Pipedream’s suspend auto-cancels after 24 hours by default.
-   **Unlimited workflows and users** on every plan, where Pipedream Free allowed 3 active workflows.
-   **A free place to land.** The Free plan is $0 with 100 executions a month and no card, and every new account starts with 14 days of Professional.

Want a hand with a bigger migration? [Contact us](https://flowrunner.ai/contact).

## Frequently asked questions

### How do I export my workflows from Pipedream?

Open the project, select Settings, and click Export Workflows at the bottom. The archive builds in the background. When it's ready, open File Store and download project\_export-<project\_id>.zip. Your plan must include File Stores, and to export again you delete the old ZIP from File Store first.

### What if a project has more than 500 workflows?

One export holds up to 500 workflows or 256 MB. If a project goes past that, the manifest shows truncated as true. Move some workflows to another project and export that one too.

### Can FlowRunner convert my GitHub Sync files instead of the export?

Yes. FlowRunner Prompt to Flow reads workflow.yaml and the code step files the same way. GitHub Sync doesn't record a trigger's schedule or URL, so tell it those or set them afterwards.

### What happens to my npm packages and custom components?

They become a custom extension: one JavaScript module deployed to your workspace with the FlowRunner CLI, with its node\_modules shipped in the deploy. Running npx flowrunner init-claude installs Claude Code agents that write it for you. The export doesn't include private component code, so start from your own copy.

### How long do I have?

Pipedream Workflows stops on March 31, 2027, and all its data is deleted by April 30, 2027. Convert and test while your workflows still run on Pipedream, so you can compare results side by side.

## Keep reading

-   [Pipedream alternative: FlowRunner vs Pipedream](https://flowrunner.ai/alternatives/pipedream)

[All alternatives](https://flowrunner.ai/alternatives)

By [Mark Piller](https://flowrunner.ai/about#mark-piller), Founder of FlowRunner [Editorial policy](https://flowrunner.ai/editorial-policy)

---
Markdown version of https://flowrunner.ai/alternatives/pipedream/migrate. Site index: https://flowrunner.ai/llms.txt
