What you will learn
On this pageContentsCloseOpen
Start shopping for an automation app and the first question is always whether Shopify Flow already covers it. It's free, it's Shopify's own, and it handles everything from tagging orders and customers to notifying outside services.
Researching it doesn't settle the question. Some articles say Plus-only. Others say every plan. "It integrates with AI" appears constantly, rarely with any detail about which AI or what's being sent to it.
Here's the actual shape. Shopify Flow itself is free and available from Basic upward. But three capabilities are gated by plan, and one of them is the mechanism every non-preset integration depends on. The AI feature, meanwhile, requires you to bring your own OpenAI API key — and it calls a previous-generation API.
Below, the boundaries of Flow drawn entirely from Shopify's own documentation. Settling this line first makes every subsequent app comparison much faster. Researched August 31, 2026.
The short version
Shopify Flow is a free app on Basic, Grow, Advanced, and Plus. The Plus-only framing is leftover information from an earlier era.
But Basic can't use the Send HTTP request action. Purpose-built connectors for Slack and Google Sheets work fine; anything else has no general-purpose path out. That's the first fork in the road.
AI integration means supplying your own OpenAI API key and calling the legacy completions API. The default model is gpt-3.5-turbo-instruct, and specifying a chat model returns an error. "Install Flow and you get modern AI" doesn't match what's documented.
There's a Run code action for JavaScript, but no network calls, no randomness, and no clock access. Execution caps at 5 seconds and 10MB of memory.
Flow is not Plus-only anymore
The Help Center plan requirement states plainly that Shopify Flow is a free app available on Basic, Grow, Advanced, and Plus. Install it from the App Store, then open it from your admin.
Workflows are built from three parts: a trigger that starts the workflow, conditions that decide whether to proceed, and actions that do something. On top of those, connectors provide actions backed by third-party services.
Triggers can be an internal Shopify event, a specific date and time, or an external event inside a third-party application. Conditions can check the trigger event's properties as well as properties of related objects — orders, products, customers. Actions change store data, transform data inside the workflow, or reach an external app or service.
The Help Center's own example: trigger on order created, condition on total paid exceeding $200 USD, then actions like adding order tags, removing customer tags, holding fulfillment orders, sending email, or sending HTTP requests.
Three places the plan matters
This is the part that decides your architecture. The Help Center says most features work across all plans, then lists three exceptions.
Send HTTP request requires Grow, Advanced, or Plus. Not available on Basic. This action posts to an arbitrary URL and is the only general-purpose way to reach a service Shopify hasn't built a connector for. On Basic, Flow's outbound integration surface is exactly the set of built-in connectors and nothing more.
Tasks created by custom partner apps require Plus. Having an agency build Flow tasks specific to your business presumes a Plus store.
Usage limits differ by plan. The documentation ties each store's Flow usage limits to the API rate limits governed by its plan. The same workflow processes different volumes depending on where you sit.
Check your plan before comparing automation apps. On Basic, what Flow can build is constrained from the outset.
What the AI connector actually does
Flow's connector list includes Generate text. The Help Center describes it in one line: it sends a prompt to OpenAI and returns the generated text. It works with any trigger and returns a single field called text.
Setup means searching for OpenAI inside Flow, connecting, and entering your own OpenAI API key. Generation costs land on your OpenAI account. Flow being free doesn't make this free.
And the page carries a caution: Shopify Flow calls OpenAI's legacy completions API. The default model is gpt-3.5-turbo-instruct, and only models compatible with /v1/completions can be specified. Enter a chat model and you get This is a chat model and not supported in the v1/completions endpoint. — the troubleshooting section says so verbatim.
Configurable parameters are Prompt, Model, Suffix, Temperature, Top P, Stop, Presence Penalty, Frequency Penalty, and Logit Bias. Familiar territory if you've called a completions API directly — which is also a fair description of the intended user.
Drafting product copy or summarizing inbound messages are plausible uses. But if you're picturing "modern generative AI, no code required," the API generation actually being called sits some distance from that. Worth knowing before you design around it.
Run code: what fits, what doesn't
Flow includes a Run code action that executes JavaScript. It takes data from earlier steps via a GraphQL query, and returns data typed with GraphQL SDL. Useful for computing a condition or shaping a value for downstream steps.
The documented limitations are the real design constraints.
It supports ECMA2020 JavaScript, with no NodeJS or CommonJS APIs and no module imports. Your code cannot make HTTP calls (fetch). Random and clock-based functions are unavailable — date values like scheduledAt or createdAt have to be passed in as input. console.log works; console.info and console.error do not.
The numeric ceilings are explicit. Input query up to 5,000 characters. Output schema up to 5,000 characters. Output payload and console.log output limited to 50KB combined. Code up to 50,000 characters. Total execution time capped at 5 seconds, memory at 10MB.
So Run code is a small computation area inside a workflow, not a place to write networked logic. Outbound calls belong to Send HTTP request — which, again, Basic can't use.
Building outbound integrations
Flow's built-in connectors are: add a row to a Google Sheets spreadsheet, send a Slack message, and the OpenAI text generation above. Connect once and use them without code.
Everything else goes through Send HTTP request, which supports GET, POST, PUT, PATCH, DELETE, HEAD, and OPTIONS, with arbitrary headers and body.
Three behaviors matter operationally.
Flow waits a maximum of 30 seconds for a response. No response in 30 seconds and it closes the connection, retrying later.
Error handling is configurable. For 4XX client errors and for 5XX or 429 server errors independently, you choose Retry (up to 24 hours until a different response code or timeout), Fail (fail the workflow run), or Ignore (continue anyway).
Credentials go in Secrets. Register a handle, value, and description on the Flow settings page, then reference it as a Liquid variable like {{secrets.handle}}. Secret values are never visible in the Flow interface and are redacted from workflow run logs. No access tokens pasted into workflow bodies.
For Shopify's own GraphQL Admin API, the documentation points to the Send Admin API request action rather than Send HTTP request.
Is the operational tooling there?
Automation isn't finished when it's built. What the Help Center documents:
Workflows can be duplicated, copied between stores, exported and imported, and deleted. You can run workflows manually from the admin against individual orders, draft orders, customers, or products. Each execution produces a workflow run log of the actions taken, for monitoring behavior and performance. Manual retry lets you troubleshoot and fix past runs. Version history is available.
If you run several stores and want the same automation across them, export/import and store-to-store copy are meaningful conveniences.
Before you shop for an automation app
- Are you on Basic, or Grow and above? (Basic can't use Send HTTP request.)
- Is the service you need among Slack, Google Sheets, and OpenAI?
- If not, does it expose a webhook or REST API?
- Can the logic you need run with no network calls, under 5 seconds, and inside 10MB?
- If you need generation, can you supply an OpenAI key and live with legacy completions output?
- Does the app you're considering list Shopify Flow among its integrations on the App Store?
- Will you need custom Flow tasks built for you? (That presumes Plus.)
- Do run logs and manual retry cover your incident response?
- Do you need to roll the same automation out across multiple stores?
Wrapping up
Three cuts define Flow's boundary.
First, your plan. Basic and Grow-and-above differ fundamentally in outbound freedom. Concluding "we have Flow, so we don't need an automation app" on Basic breaks the moment you need a service without a built-in connector.
Second, where network calls happen. Send HTTP request does that; Run code does not. Miss that division and you'll design something that calls an external API from Run code, which isn't possible.
Third, what you expect from AI. Generate text runs on your OpenAI account against a previous-generation API, so both cost and quality follow that contract. If output quality is the point, an app built around AI as its primary purpose is the better fit.
Draw those three lines, then take only the leftover requirements to an automation app. Settling Flow's range first changes the comparison axis from "which app has more features" to "what specifically does Flow fail to reach" — and that question resolves far faster.
Features and limits get updated. Everything here reflects the Shopify Help Center as of August 31, 2026 — check current documentation before you build.
Shopify's bulk editor no longer supports blog posts, pages, or URL redirects, and the Help Center links three named third-party apps as the replacement. Product CSVs cap at 15 MB, can't be canceled once started, and leave no import history. Blank columns overwrite existing values with blank. Changing Option values deletes variant IDs. Plus: Matrixify meters per resource type while Altera meters rows per file — which flips the cheaper option depending on what you edit. Researched September 1, 2026.