Skip to Content
Introduction

Appfunnel

Appfunnel is the platform for web-to-app funnels: the paid-traffic pages that turn an ad click into a paying subscriber before handing the visitor off to your app.

A funnel here is a small React project. You write pages as React components, wire them into an ordered flow, drop in a paywall, and Appfunnel builds it, serves it on your own domain, and records the analytics — visitors, sessions, revenue, experiment lift. No server to run, nothing to configure. You describe the funnel; Appfunnel ships it.

The shape of every funnel is the same:

paid traffic → quiz / onboarding → email capture → paywall → checkout → app hand-off

Someone taps your ad, answers a few onboarding questions, hits a paywall, subscribes, and lands in your app already identified. Appfunnel owns the middle of that chain.

What it’s best at

Appfunnel is built for one job and shaped around it: the paid-acquisition funnel for a subscription app. That focus is what you get:

  • Funnels that are code you control — real React and TypeScript, versioned and published like software, not a drag-and-drop page you can’t reason about or diff.
  • Decisions made by revenue — test a headline, a page, or a whole funnel and let Appfunnel call the winner by revenue per visitor, not vanity clicks.
  • Your brand, your domain — every funnel serves on a domain you own, and the start page paints instantly on the cold ad click.
  • Built-in checkout and identity — checkout on your own payment provider (Stripe, Paddle, Whop, SolidGate or Primer), email capture that identifies the visitor, and a clean hand-off into your app.
  • Three ways to work on the same funnel — the in-browser editor with an AI assistant, a connected coding agent, or the CLI in your own setup.

Who this is for

You build a subscription app — fitness, meditation, language learning, finance — and you buy traffic to acquire users. You want the acquisition surface (the funnel) to be code you control, versioned and deployed like real software. You care about conversion rate, ROAS, and being able to A/B test a headline without a redeploy.

A funnel is authored in TypeScript and React 19, styled with Tailwind, and checked out through your own payment provider. If you can build a React component, you can build a funnel.

Three ways to work

The same funnel — the same files, the same draft — is reachable three ways. Pick per task; they are not separate products.

  • The in-browser editor with an AI assistant. A dark, full-screen editor with a live device preview. Describe a change in chat (“add a testimonials carousel”, “translate the funnel to Spanish”) and the assistant edits your draft files; you review the result in the preview before publishing. Everything is also editable by hand in the code view.
  • A connected coding agent. Pair Claude Code, Cursor, or Codex to a funnel over MCP. The agent reads and writes the same draft, drives the preview, and takes screenshots — while the editor tab stays open and every change executes under your session. See Connected agents.
  • The appfunnel CLI + your own editor. appfunnel pull a funnel into a folder, edit it in your local setup with appfunnel dev for a hot-reloading local render, then appfunnel push and appfunnel publish. See the CLI reference.

Whichever way you work, publishing is always a deliberate human action. The AI assistant and connected agents edit your draft; they never publish. You publish from the editor, the CLI, or the dashboard.

Docs map

New here? Start with Getting Started.

Last updated on