You run the funnel. Your client owns everything it touches.

Every client gets their own project, their own Stripe account, their own domain and their own login. You get the keys to operate it — and a one-click way to hand them back.

The money lands in their account. The funnel serves on their brand. And the day the engagement ends is a transfer rather than a migration, because nothing was ever tangled together in the first place.

Four things that never quietly become yours

A client relationship goes wrong at the seams: whose Stripe took the money, whose account the funnel lives in, whose domain it serves on. Appfunnel puts those seams where they belong before you write the first page, so separation is the default shape rather than a discipline you have to keep up.

The money. Each project connects the client’s own Stripe account. Payouts, refunds, disputes and tax land where they belong — in their account, under their name. Appfunnel reads what happened; it never holds the money, and neither do you.

The domain. A funnel only serves on a domain that has been verified, so the live URL is theirs from the first release — there is no shared platform address to fall back on. The browser tab, the favicon and the link preview come from their project’s own settings, and the page itself carries no badge and no footer link back to us.

The project. One client, one workspace: their funnels, their catalog, their customers, their numbers. Nothing crosses between projects, and moving between clients is a menu rather than a logout.

The login. One account for you, every client project you have been invited into. Nobody shares a password to get work done, and taking someone’s access away is one click in one place.

Invite the client. Decide how far in they get.

Two roles cover most engagements, and a per-person adjustment covers the rest — set when you send the invite, changed any time after. The client’s finance lead who wants revenue but not the ability to touch a live funnel is a couple of toggles, not a meeting.

  1. Pick a role

    Admin does everything except deleting or transferring the project. Member edits funnels, campaigns and experiments and reads everything else. There is one owner per project, and owner is not something you invite — it is transferred.

  2. Then narrow it, per person

    Open Customize access and you get plain-language blocks — Funnels & content, Customers, Analytics & revenue, Stores & integrations, API keys — each set to None, View or Manage for that one person, at invite time or any time after.

  3. Two blocks stay with the role

    Team & access and Project & danger zone are never handed out à la carte — they come with the role or not at all. So a member can’t be quietly topped up into someone who manages the team, and transferring the project stays with the owner alone.

  4. You can’t grant what you don’t hold

    An adjustment can only add access the person making it already has, so nobody widens their own reach or hands out more than they were given.

The day the relationship ends should take about ten seconds

An account you can hand back is an account you get to keep. The exit should not be a project nobody is paid for.

  1. The client is already a member of the project

    They have to be — ownership moves to a person who has already accepted an invitation, not to an email address or a pending invite. Worth doing at the start of the engagement rather than at 6pm on the last day.

  2. You transfer ownership to them

    It asks you to confirm it is really you before it goes through, because a change this size should ask.

  3. They are the owner. You are an admin

    You are not locked out at the moment of handover — you keep working as an admin until they decide to remove you. The project, its history and its live traffic never move anywhere.

Whoever owns the project pays for it

Both arrangements work, and neither one locks you in — transferring a project moves the bill with it, so a client who starts on your account can take over their own later.

The client holds the account

They own the project, they subscribe, and you are invited in as an admin. Working inside a project you do not own does not require a subscription of your own — so your marginal cost for that client is nothing, and their revenue never touches your ledger.

You hold the account

You own the client projects and you are billed once across all of them, with the invoice broken down by project so you can see — and re-bill — what each client accounted for.

Client two should be faster than client one

Start from a flow that already works, and keep the source, so the second client costs you a fraction of what the first one did.

  1. Start from a template

    The gallery ships complete flows — quiz, paywall, upsells and routing — as editable code rather than a skin you can only recolor. Pick one when you create the funnel and it opens in the editor as yours.

  2. Keep the source

    A funnel is a real React project. Pull it down to your machine with the CLI, keep it in your own repo, and push it into whichever client project it belongs in. That is how your method travels between accounts.

  3. Connect their Stripe and bring in their prices

    Pages reference product slots rather than one client’s specific prices, so the same flow does not care which catalog is sitting underneath it.

  4. Point their DNS once, then turn the campaign on

    The funnel goes live on their brand, at their address, from the first release.

Numbers the client can check themselves

The most defensible report is the one you did not have to assemble. Stop being the single source of truth: being the person who set the source of truth up is a better position to hold.

Revenue that reconciles. Every purchase, renewal and refund is confirmed against the client’s own processor, so the number on the dashboard is the number in their Stripe. There is no version of the report that only you can produce.

Give them the numbers and nothing else. Grant Analytics & revenue, withhold the rest, and the client reads their own results in their own project. A client who can check the number themselves is a stronger position than any deck you assemble.

Export what you need for the deck. Any metric page downloads what is on screen as a CSV, keeping the period, filters and segmentation you already applied — so the export matches the view you were looking at.

Or pull it into your own reporting. A project API key reads core analytics, funnels and campaigns over the API, and purchases, subscriptions and renewals stream to your own stack over webhooks.

A record of who changed what. Each project keeps its own activity feed of team, access and content changes, filterable by category and searchable by person, so “who changed the paywall” is a lookup rather than an argument.

Questions, answered directly

What happens to the funnel when the client leaves?

Nothing dramatic, because it was never yours to give back. The client’s project holds their funnels, their catalog and their customers, connected to their own Stripe account and serving on their own domain. If they already own the project, you leave and they carry on. If you own it, you transfer it to them — the project, its history and its live traffic move in one step, and you stay on as an admin until they remove you.

Do I have to put my clients’ revenue through my Stripe account?

No, and you shouldn’t. Each project connects its own Stripe account — the client’s. Payouts, refunds, disputes and tax are theirs, and Appfunnel only reads what happened. If a client would rather not hand you their credentials at all, give them the Stores & integrations block and let them connect it themselves; nothing about the arrangement requires you to hold their keys.

Who pays for Appfunnel, and can the client see my invoice?

Whoever owns a project is billed for it, and billing sits at the account level rather than inside the project — so your billing is never visible from inside a project you merely belong to. If the client owns their project, they subscribe and you don’t: working inside a project you don’t own doesn’t require a subscription of your own. If you own the client projects, you’re billed once across all of them with the invoice broken down by project.

If I transfer a project to a client, what does that cost them on day one?

A subscription of their own, immediately. The bill follows the owner, so the moment they accept ownership they are asked to start their own plan before they can open the dashboard. There is no grace window and no pre-transfer handshake, so this belongs in the conversation at the start of an engagement rather than on handover day.

How many clients can I run from one account?

There is no cap on the number of projects you can own or be invited into. Two honest limits to plan around: a project cannot be deleted once it exists, so a churned client’s project stays on your list, and the project switcher is a flat list with no folders, search or archive. At eight clients that is fine. At thirty it is a real ergonomic cost, and worth telling us about.

Can I stop a client from publishing a funnel?

Not today, and it would be dishonest to imply otherwise. Roles and per-person access genuinely control the team, billing, stores, domains, integrations and API keys — but publishing is not separable from project access, so anyone invited into a project can put a funnel live. What you get instead is that every release rolls back to the previous one in a single confirm, and the activity feed names who changed what and when.

Can I give a client access to just the numbers?

Yes — invite them and narrow their access to Analytics & revenue. Two things to know before you promise it. There is no saved “client viewer” preset yet, so it is a few toggles each time you onboard someone. And the sidebar is not filtered by access: a narrowed teammate still sees the full menu and is turned away when they click. Their access is genuinely limited; it just isn’t hidden from them.

Can I see all my clients in one view?

Not yet. Every analytics, funnel, campaign and customer surface is scoped to a single project, so eight clients means eight dashboards. The one place projects sit side by side is the by-project breakdown on your billing page, and only if you hold the account. If a portfolio view is what would make this work for you, tell us — it is the request we would most like to hear about.

Can I copy a proven funnel from one client into another?

Not in one click. There is no cross-project duplicate for the current generation of funnels, and no way to save your own funnel as a template. What does work is keeping the source: pull the funnel down to your machine, hold it in your own repo, and push it into the next client’s project. It is a developer workflow rather than a button, and it is the honest answer to the thing agencies ask about most.

Does a live funnel show any Appfunnel branding to the client’s visitors?

The funnel itself carries no badge and no footer link, and the browser tab, favicon and link preview all come from the client’s own project settings. One exception worth knowing: if someone reaches a URL that does not exist on the domain, the not-found page still carries a small Appfunnel wordmark. The dashboard you and the client log into is Appfunnel-branded — there is no white-label admin.

Can the client audit what my team did?

If they are an owner or an admin on the project, yes — the activity feed is right there in the project’s team settings, filterable and searchable. A member on a narrowed seat cannot see it. So an agency operating inside a client-owned project is auditable by that client by default, which is usually the arrangement worth proposing.

What does it cost?

Growth is $199 a month plus 2% of proceeds — what is left after processing fees, tax, refunds and chargebacks — month-to-month. It is billed once per account, however many projects you own, and projects you have only been invited into cost you nothing. The first 14 days are free: you add a card to start and nothing is charged until day 15. If you are running several clients and the arrangement is more complicated than that, talk to us.

Set up your first client account today.

Free for 14 days. Hand it over whenever you’re ready.