Founder pricing - first 5 teams lock in early-access rates for 12 months →

Put your app in any state. In seconds. Without touching your backend.

Backend not ready. Staging down. Third-party flaky. None of it blocks you anymore - the state you need is a toggle, not a ticket.

Free plan - no card - two-minute setup

This one's live. Go ahead - flip something.

p.flowmock.dev/prx_demoPaused - you're driving

Response overrides

  • GET/cart
  • GET/shipping/rates
  • POST/payment

Live traffic

  • GET/cart200171ms
  • GET/shipping/rates200224ms
nimbus.coffee/checkout

Nimbus Coffee

Your order

  • Ethiopia Single Origin

    Whole bean · 250g

    $18

  • Pour-over Starter Kit

    Dripper + filters

    $16

Shipping

Total$39

QA ↔ dev

QA finds a bug. Dev can't reproduce it.

The traffic that caused it is invisible. The screenshot isn't enough. It bounces back and forth for a day.

With FlowMock: the bug travels as a link. Open the session, see the exact state, fix it first try.

Frontend

Backend isn't ready - so the frontend waits.

Or staging's down for two days. Or the third-party service is misconfigured again. Everyone's blocked by something nobody on the team can fix.

With FlowMock: flip the endpoint to the response you need and keep shipping.

Whole team

There's one account with the right data. Everyone needs it at once.

"Which account has data again?" "Nobody touch this account, we have a demo." Then someone wipes staging and the whole catalogue's gone.

With FlowMock: capture the golden data once. Everyone flips into their own copy - nobody can wipe it.

None of these are your fault. All of them are your problem. FlowMock makes them disappear.

One URL change. That's the whole integration.

FlowMock is a proxy in front of your staging API. Point your app's API base URL at it and every response becomes something you control - real traffic passes through untouched until you flip a state.

Your appFlowMockp.flowmock.dev/prx_…Staging APIunchanged

You don't write the mock. You flip it.

Every other tool makes a developer author mock code in a repo, or wrestle a local JSON file in a proxy only they understand. FlowMock turns state into a switch - one your manual QA can throw, your dev can watch, and your whole team can share.

Record a scenario from a real click-through, or AI-edit a captured body in plain English. No seed data. No redeploy. No backend PR. No "let me set that up for you." Flip into the state, run the test, flip back.

Three testers. One URL. Zero collisions.

QA flips the state without writing a line of code. Dev watches every request stream in live, in the same session. Everyone shares one proxy URL, but each session is its own isolated reality. No stepped-on toes, no "who changed staging", no waiting your turn.

Live traffic - everyone on the same URL, each in their own session
  • GET/orderssess: maja200
  • GET/orders/ord_291sess: maja200
  • POST/paymentsess: maja402
  • GET/catalogsess: petar200
  • GET/cartsess: petar200
  • GET/profilesess: petar200
  • GET/appointmentssess: qa-nikola200
  • PATCH/appointments/apt_88sess: qa-nikola500

Everything between you and the state you need, removed.

Blocked by things you don't control? Not anymore.

Mock the backend that's behind schedule, the staging that's down, the third-party that's misconfigured again.

The states no test account can reach.

An expired token mid-session. A calendar with 20 bookings. A button that only unlocks at event time. One toggle each.

Record scenario from real traffic.

Hit Record scenario, click through the flow, tick the requests that define the state - FlowMock builds the overrides. Capture once, name it, reuse it forever across the team.

AI edit — plain English, real payload.

Keep real traffic, change what you need. AI edit takes "make every item expired" or "return an empty list" and rewrites the captured response for you.

No ghost state.

Active mocks show a persistent indicator and expire on their own. No haunted staging.

Sensitive data stays yours.

Mask tokens and PII at the proxy, before anything is stored or shared.

You've already built a worse version of this.

A "demo mode" so the PM doesn't show the client `asdf`. A QA-only feature flag to fake a time-gated button. A folder of mock JSONs - and a script to keep them in sync with the real API. A proxy config only one developer knows how to edit.

Every one of those is FlowMock, hand-built, maintained by you, usable by almost no one else on the team.

You already decided you need this. You're just paying a developer to maintain it instead of using the real thing.

I built the worse version. More than once.

Demo modes, QA-only flags, folders of mock JSONs, a proxy config only I could drive - every team I've been on had one, and I kept being the developer paid to maintain it. FlowMock is that rig done properly: hosted, shareable, safe to hand to QA, and gone when you're done.
Peter, founder

The state you clicked into by hand runs headless in CI.

Record a scenario once in the browser - or AI-edit a captured response into the edge case you need - then replay that same state forever in your pipeline. Manual QA and automated tests finally exercising the same states - instead of two separate guesses at them.

  1. Flip it in the browser
  2. Save the scenario
  3. Point CI at the proxy
.env.ci
API_BASE_URL=https://p.flowmock.dev/prx_8f3a1c

Same proxy URL in CI as in the browser - one scenario, two surfaces.

Point your app at FlowMock. That's the integration.

  1. 1

    Create a project. Paste your staging API URL.

  2. 2

    Point your app's API base URL at your FlowMock proxy URL.

  3. 3

    Flip states from the dashboard. Everything you don't touch passes through.

.env.local
API_BASE_URL=https://staging.your-api.com
API_BASE_URL=https://p.flowmock.dev/prx_8f3a1c

Change your API base URL - that's the whole integration.

"Why not just write mocks?" / "We already use Charles / MSW."

Because those live in code or local config, need maintaining, and only the engineer who set them up can run them. The Android dev's Charles setup that catches great edge-case bugs - useless to a QA who can't read it. FlowMock is the same power, no code, shareable, so your whole team uses it, not just the one person who built the rig.

"You're proxying our traffic - what about sensitive data?"

Redact it at the proxy. Mask tokens, PII, anything you name, before it's ever stored or shared. Test real flows without exposing real data.

"What if I leave a mock on and forget?"

You won't get a mystery. Mocks show a persistent active indicator and expire on their own - no haunted account, no surprise behavior an hour later, no surprise on the bill.

Priced on intensity, not headcount.

No per-seat fees on paid plans. You pay for concurrent active sessions - the real measure of how hard you're testing, not how many people you let in. A big team that tests lightly pays less than a small team in crunch.

Early access: founder pricing for your first 12 months.

Founding Team· Limited to the first 5 teams

FlowMock Founding Team

Get personally onboarded and lock in founder pricing while we're still early.

$49

/ month for your first 12 months

then standard Team pricing

  • Personally onboarded - we set up your first project with you
  • Unlimited team members
  • Full Team-tier functionality
  • Direct founder support channel
  • Full refund if we can't get one valuable workflow running in week one

Use code FOUNDING at checkout on the Team plan - limited spots available.

Claim founder pricing

Free

Free

Trying it / solo

Dev

$25/mo

One active tester

TeamPopular

$99/mo

A QA + dev team

Business

$249/mo

High-intensity / org

Concurrent active sessions1525100
Team members1UnlimitedUnlimitedUnlimited
Shareable states
Live session watching
Session isolation
CI / headless replay
Redaction

Predictable tiers. Hard caps, not surprise overages. Mocks auto-expire, so an idle session can't quietly burn a slot. Paid plans include unlimited team members.

Stop reproducing states. Start flipping them.

Your next blocker is already on its way - a backend that isn't ready, a staging that's down, an edge case no account can reach. Have the state ready in one click instead of one afternoon.