> ## Documentation Index
> Fetch the complete documentation index at: https://funnelfox.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Funnel management dashboard

> Create, edit, publish, and manage web funnels in FunnelFox. Set up acquisition and cancellation funnels in Editor.

The [Funnels page](https://app.funnelfox.com/funnels) is where you create
and manage all your marketing funnels and cancellation funnels. Build
everything from simple landing pages to complex multi-step sales funnels
in the Editor, by prompt with AI Chat in Editor or manually on the
canvas.

## How funnels work

FunnelFox funnels are **statically built** for maximum reliability and speed.
Once you publish a funnel, it becomes immutable — a snapshot that will work
exactly the same way forever.

<Warning>
  Because funnels are static, you must republish after changing project
  settings, products, pixels, or integrations for those changes to take effect
  in your funnels.
</Warning>

<CardGroup cols={2}>
  <Card title="Guaranteed Reliability" icon="shield-check">
    If your funnel works during testing, it will work identically in
    production. No surprise breaks from platform updates.
  </Card>

  <Card title="Lightning Fast" icon="bolt">
    Static funnels load instantly with no server processing. Your visitors
    get the best possible experience.
  </Card>

  <Card title="Version Control" icon="code-branch">
    Each published version is permanent. Test new changes without affecting
    live traffic until you're ready.
  </Card>

  <Card title="Update When Ready" icon="arrows-rotate">
    Changes to project settings or integrations only apply when you
    republish. You control exactly when updates go live.
  </Card>
</CardGroup>

## Funnel List

The [Funnels page](https://app.funnelfox.com/funnels) has two tabs: **Acquisition** and **Cancellation**. Both funnel types use the same Editor and features but serve different purposes in your customer journey.

You can quickly search funnels by their name, URL, or ID.

<Tabs>
  <Tab title="Acquisition">
    The default tab showing all your marketing and sales funnels. These
    attract new customers and generate revenue through your
    offers, products, and services.

    <Frame>
      <img src="https://mintcdn.com/funnelfox/Ry59CYO1w_L4CVTB/assets/dashboard-funnels-list.png?fit=max&auto=format&n=Ry59CYO1w_L4CVTB&q=85&s=d9933c435acfd0a9b4c21eb5cbc1872b" width="1419" height="607" data-path="assets/dashboard-funnels-list.png" />
    </Frame>
  </Tab>

  <Tab title="Cancellation">
    Special funnels triggered when customers try to cancel subscriptions.
    Use these to offer alternatives like pauses, downgrades, or discounts
    to retain customers who might otherwise leave.

    Learn about [cancellation funnels](/dashboard/funnels#cancellation-funnels).

    <Frame>
      <img src="https://mintcdn.com/funnelfox/Ry59CYO1w_L4CVTB/assets/cancel-tab.png?fit=max&auto=format&n=Ry59CYO1w_L4CVTB&q=85&s=5fa6b9c4948731f20d89b2f4225414e7" width="1453" height="444" data-path="assets/cancel-tab.png" />
    </Frame>
  </Tab>
</Tabs>

Both tabs display your funnels with key information:

<ParamField path="Name">
  Your internal funnel name. By default, this appears in browser tabs when visitors
  view your funnel. You can override it in the Editor.

  The name column also shows funnel tags you can use for filtering your Funnels list. Apply tags from the [funnel page](/dashboard/funnels).
</ParamField>

<ParamField path="Status">
  Current funnel state:

  * **Draft**: Still editing, not publicly accessible.
  * **Published**: Live and receiving traffic.
</ParamField>

<ParamField path="URL">
  The URL path where your funnel lives. For example, the slug "offer" creates
  `your-project.fnlfx.com/offer`. Must be unique within your project.
</ParamField>

<ParamField path="Published">
  When the funnel was last published.
</ParamField>

<ParamField path="Locales">
  The number of [locales](/editor/localizations) configured for this funnel. A red indicator means missing translation keys for that locale — usually caused by editing the default locale. To fix this, open the funnel page and click **Translate with AI**.
</ParamField>

<ParamField path="Actions">
  Edit your funnel right away or click the **three dots** to the right to access more actions:

  * **Analytics**: Open analytics for this funnel.
  * **Design**: Open in the Editor.
  * **Duplicate**: Create a copy with a new slug.
  * **Settings**: Open the funnel settings page to rename, edit the slug, archive, or tag the funnel.
  * **Archive**: [Remove](/dashboard/funnels#archive-funnel) the funnel from your Funnels list and make both its preview and public URLs unavailable.
</ParamField>

### Funnel page

To view detailed information about a specific funnel, either:

* Click the 🌐︎ locales icon in your [Funnels list](https://app.funnelfox.com/funnels) (if you have any locales).
* Hover over the 🌐︎ globe icon at the top of the Editor and click **Manage locales**.
* Click the three dots to the right of the funnel and select **Settings**.

<Frame>
  <img src="https://mintcdn.com/funnelfox/Ry59CYO1w_L4CVTB/assets/funnel-settings-page.png?fit=max&auto=format&n=Ry59CYO1w_L4CVTB&q=85&s=0a7b08d088a3bc6abb26f8b7353d595d" width="1456" height="424" data-path="assets/funnel-settings-page.png" />
</Frame>

From the funnel page, you can:

* View and [manage locales](/editor/localizations#manage-locales).
* Check locale status for missing translation keys that need updating with **Translate with AI**.
* View funnel details like Funnel ID, Project ID, URL, Type, and creation or update dates.
* Apply funnel tags used for filtering your funnels list.

<Frame>
  <img src="https://mintcdn.com/funnelfox/Ry59CYO1w_L4CVTB/assets/funnel-page.png?fit=max&auto=format&n=Ry59CYO1w_L4CVTB&q=85&s=603bda96c314c94ccf684363d58f912a" width="1439" height="622" data-path="assets/funnel-page.png" />
</Frame>

## Create funnel

The funnel type you create depends on which tab you start from: **Acquisition** or **Cancellation**.

<Steps>
  <Step title="Creation start">
    Go to the **Funnels** page and click **Create a funnel**.
  </Step>

  <Step title="Creation method">
    Select how you want to build:

    <Tabs>
      <Tab title="Generate with AI">
        AI Chat in Editor composes a complete, on-brand funnel from
        scratch. Structure, pricing, and onboarding flow are
        chosen from market benchmarks for your niche, not guessed from
        a template.

        Before you start, describe your app or paste an App Store,
        Google Play, or website link in the
        [Project context](/agentic-solution/overview#project-context)
        so the agent has something to ground its generation on.

        Learn more about
        [generating funnels from scratch](/agentic-solution/overview#generate-funnels-from-scratch).
      </Tab>

      <Tab title="Create manually">
        Start with a blank canvas, just one empty screen. Build your
        funnel manually in the Editor with full control over every
        screen, element, and interaction. You can still prompt
        [AI Chat in Editor](/agentic-solution/overview#ai-chat-in-editor)
        at any point to edit elements, screens, or the whole funnel.
      </Tab>
    </Tabs>
  </Step>

  <Step title="Configure settings">
    Click the three dots to the right of the funnel
    on the [Funnels page](https://app.funnelfox.com/funnels) and select
    **Settings**:

    * **Name**: Internal name for your reference.
    * **Alias**: URL path (e.g., "special-offer").
    * **Tags**: Optional labels for filtering your Funnels list.
  </Step>
</Steps>

## Edit funnel

Click any funnel in your [Funnels list](https://app.funnelfox.com/funnels)
to open the Editor.

The fastest way to edit is by prompting
[AI Chat in Editor](/agentic-solution/overview#ai-chat-in-editor).
Select an element, a screen, or nothing (to target the whole funnel),
describe the change in plain English, and the agent applies it
directly on the canvas.

You can also edit screens, elements,
actions, and conditions manually right on the canvas.

Learn more about the [Editor](/editor/overview).

<Warning>
  Remember to republish your funnel after editing to apply changes to the live version.
</Warning>

<Frame>
  <img src="https://mintcdn.com/funnelfox/cxG6YKcN6wJiSnp-/assets/edit-funnel.gif?s=b8e71442cc7c6ef179cfae2195f769eb" width="1908" height="984" data-path="assets/edit-funnel.gif" />
</Frame>

## Publish funnel

Publishing makes your funnel live and accessible to visitors. Draft funnels
remain private until published. You can edit published funnels and republish
them — this creates a new version that immediately replaces the previous one.

Learn more about [publishing funnels](/editor/publishing).

<Warning>
  Publishing is immediate and replaces any existing funnel at that URL.
  Test thoroughly before publishing to production URLs.
</Warning>

## Cancellation funnels

Cancellation funnels help retain customers who want to cancel their
subscriptions. Instead of losing them completely, offer alternatives
that address their concerns.

<Frame>
  <img src="https://mintcdn.com/funnelfox/KAngMY6MfAm-9pc7/assets/cancellation-funnel.gif?s=98b30fe83071e9b40c162e5501f58294" width="1908" height="984" data-path="assets/cancellation-funnel.gif" />
</Frame>

Cancellation funnels are [created](/dashboard/funnels#create-funnel) the same way as acquisition funnels, but they include additional cancellation actions:

* **Swap subscription**: Offer a discounted alternative instead of complete cancellation. Learn about [subscription swap flow](/dashboard/funnels#subscription-swap).
* **Gift free period**: Select a period to extend their current billing cycle for free. This gives you time to demonstrate value before the next charge.
* **Pause subscription**: Temporarily suspend access and stop billing while maintaining the customer relationship.
* **Cancel subscription**: If retention fails, process the cancellation gracefully.
* **Resume subscription**: Paused subscriptions can be resumed at any time.

Learn more about [actions](/editor/actions).

<Frame>
  <img src="https://mintcdn.com/funnelfox/KAngMY6MfAm-9pc7/assets/cancellation-actions.png?fit=max&auto=format&n=KAngMY6MfAm-9pc7&q=85&s=3a787ac3cdb51da33229e289b969dc84" width="1096" height="976" data-path="assets/cancellation-actions.png" />
</Frame>

### How cancellation funnels work

Cancellation funnels work with Stripe, Paddle, Solidgate, and FunnelFox Billing subscriptions only. You can configure how the payment provider processes subscription swaps or cancellations directly in the Editor when editing actions.

When a customer enters the funnel with their [profile ID](/dashboard/funnels#customer-access-link), FunnelFox loads their subscriptions across all [organization projects](/getting-started/concepts#core-concepts) and uses the payment provider from their original purchase.

When the customer takes an action, the payment provider applies your configuration to the most recently purchased active or trialing subscription and syncs with the <Tooltip tip="Payment Service Provider">PSP</Tooltip>. For example, pausing a Stripe subscription immediately appears in:

* In [subscription status](/dashboard/subscriptions#param-status) on the FunnelFox [Subscriptions page](https://app.funnelfox.com/subscriptions).
* In [subscription status](https://docs.stripe.com/billing/subscriptions/overview#subscription-statuses) on Stripe Dashboard.

<Warning>
  Cancellation funnels aren’t personalized by product and always affect the most recent active or trialing subscription across all organization projects.

  * A funnel offering 1 free week gives the same gift period to everyone (e.g., 1-year and 1-week plans).
  * If a customer has multiple active or trialing subscriptions, only the last purchased subscription may be modified.
</Warning>

### Subscription swap

If you’d like to offer customers a discounted alternative instead of a full cancellation, you can configure a subscription swap.

Because payment providers handle this differently, the resulting flow depends on which provider you use:

<Tabs>
  <Tab title="Stripe">
    When customer activates a discount (swaps subscription):

    <Steps>
      <Step title="Seamless transition">
        Their current subscription keeps running until the end of the current billing period (or trial, if they’re trialing).
      </Step>

      <Step title="At period end, the current subscription ends">
        Stripe cancels the current subscription automatically at that time.
      </Step>

      <Step title="The new subscription starts right after">
        As soon as the old one ends, Stripe activates the new subscription (or starts the new plan’s trial, if it has one).
      </Step>

      <Step title="Billing happens for the new plan when it starts">
        The customer is charged for the new plan when it becomes active.
        If the new plan includes a paid trial, Stripe charges the trial payment at the moment of the swap (even though the plan/trial starts at period end).
      </Step>
    </Steps>

    For example:

    * Current paid period: September 1–30, `$20/month`.
    * Subscription swap: September 23.
    * Monthly price of new plan: `$10`.

    Result:

    * Sep 23 - Sep 30: the customer stays on the `$20/month` subscription (no change, no interruption).
    * On Oct 1:
      * The `$20/month` subscription is canceled.
      * The `$10/month` subscription becomes active.
      * The customer is billed `$10`.

    If the new plan includes a paid trial: the customer would pay the trial amount on Sep 23, and the new plan/trial would still begin on Oct 1 (right after the current period ends).
  </Tab>

  <Tab title="Paddle">
    When a customer activates a discount (swaps subscription):

    <Steps>
      <Step title="Seamless transition">
        Their current subscription keeps running until the end of the current billing period (or trial, if they’re trialing).
      </Step>

      <Step title="At period end, the current subscription ends">
        Paddle cancels the current subscription automatically at that time.
      </Step>

      <Step title="The new subscription starts right after">
        As soon as the old one ends, Paddle activates the new subscription (or starts the new plan’s trial, if it has one).
      </Step>
    </Steps>

    For example:

    * Current paid period: September 1–30.
    * Subscription swap: September 10.
    * Monthly price of new plan: `$10`.

    Result:

    * Sep 10 - Sep 30: the customer stays on the current subscription (no change, no interruption).
    * On Oct 1:
      * The current subscription is canceled.
      * The new subscription begins billing from that date.

    If the customer is trialing: the current trial continues until it ends, then the current subscription is canceled and the new subscription begins billing from that date.
  </Tab>

  <Tab title="Solidgate">
    Subscription swap isn't supported while a subscription is paused. Consider resuming it first.

    When a customer activates a discount (swaps subscription):

    <Steps>
      <Step title="Seamless transition">
        The most recent active subscription remains active until the end of the current paid period or trial, if applicable.
      </Step>

      <Step title="At period end, the subscription ends">
        At the end of that period, the subscription is canceled.
      </Step>

      <Step title="The new subscription starts right after">
        The new subscription is activated immediately after the previous one is canceled.

        <Info>The new subscription trial period, if any, is not applied. We recommend swapping to subscriptions without trial periods.</Info>
      </Step>
    </Steps>

    For example:

    * Current paid period: September 1-30, 2025.
    * Subscription swap: September 10, 2025.
    * Result: The original subscription stays active through September 30, 2025. It cancels at period end, and the new subscription activates on October 1, 2025, with the first payment on October 1, 2025.
  </Tab>

  <Tab title="FunnelFox Billing">
    When a user activates a discount (swaps subscription):

    <Steps>
      <Step title="Current subscription cancellation">
        The most recent active subscription is canceled immediately.
      </Step>

      <Step title="New subscription activation">
        A new subscription is activated the same moment.
      </Step>

      <Step title="Free trial for remaining paid time">
        The user receives a free trial equal to the remaining paid time of the canceled subscription (if any).
      </Step>
    </Steps>

    For example:

    * Current paid period: September 1-30, 2025.
    * Subscription swap: September 10, 2025.
    * Result: the original subscription cancels on September 10. A new subscription starts right away with a free trial through September 30, 2025. The first payment on the new plan occurs on October 1, 2025.
  </Tab>
</Tabs>

### Cancel subscription

Cancellation behavior is consistent for Stripe and Paddle, but differs slightly for Solidgate cancellation funnels.

<Tabs>
  <Tab title="Stripe / Paddle / FunnelFox Billing">
    Any canceled subscription runs until the end of the current paid period.
  </Tab>

  <Tab title="Solidgate">
    Solidgate behaves differently when canceling active or paused subscriptions:

    * **Active**: Subscription runs until the end of the current paid period.

    * **Paused**: Subscription is immediately canceled. If you want cancellation to happen after the paid period expires, resume the subscription first, then cancel.
  </Tab>
</Tabs>

### Customer access link

To access a cancellation funnel, the customer must be identified. FunnelFox directs customers into a specific cancellation flow when you pass their profile ID (fpid) as a query parameter:

```
https://your-project.fnlfx.com/cancel?fpid=PROFILE_ID
```

You can find a customer's profile ID in the following ways:

* **[Customers page](https://app.funnelfox.com/customers)** - Listed in the **ID** column of the customers list
* **Webhook events** - Sent as `profile.id`
* **Subscription integrations** - User attributes, such as [Profile ID in Adapty](https://adapty.io/docs/profiles-crm#user-attributes)
* **FunnelFox API** - Use the [Get profile](https://funnelfox.com/docs/api-reference/get-profile) endpoint

<Tip>
  Use preview mode to test cancellation funnels without
  affecting real subscriptions. Preview mode won't modify actual customer data.
</Tip>

## Archive funnel

You can archive a funnel to remove it from your Funnels list and make both its preview and public URLs unavailable:

1. Click the gear icon to the right of the funnel.

2. Click **Archive** and confirm archiving.

Your funnel will be removed from the web within a few minutes.

<Frame>
  <img src="https://mintcdn.com/funnelfox/Ry59CYO1w_L4CVTB/assets/archive-funnel.png?fit=max&auto=format&n=Ry59CYO1w_L4CVTB&q=85&s=47d725d8e80667176ba6ba0d3bcf9350" width="1583" height="588" data-path="assets/archive-funnel.png" />
</Frame>

To view and restore your archived funnels, choose **Archived** in the funnel status selector and click the restore icon on the right.

<Frame>
  <img src="https://mintcdn.com/funnelfox/Ry59CYO1w_L4CVTB/assets/restore-funnel.png?fit=max&auto=format&n=Ry59CYO1w_L4CVTB&q=85&s=6b274282a99cdc41e53909b0bbc1e9de" width="1920" height="879" data-path="assets/restore-funnel.png" />
</Frame>

## FAQ

<AccordionGroup>
  <Accordion title="Can I edit a published funnel?">
    Yes, you can edit published funnels directly. Simply make your changes
    and click publish again. This creates a new version that immediately
    replaces the previous one at the same URL.
  </Accordion>

  <Accordion title="What happens to visitors during republishing?">
    The switch is instant. Visitors on the old version continue their
    session normally. New visitors immediately see the new version. There's
    no downtime or broken experience.
  </Accordion>

  <Accordion title="Do I need to republish funnels when FunnelFox releases technical improvements?">
    Technical improvements and fixes reach your live funnels instantly. No republishing needed.
  </Accordion>
</AccordionGroup>

## Next steps

* Learn about the [Editor](/editor/overview)
* Configure [Analytics](/dashboard/analytics) to track funnel performance
* Create [Experiments](/dashboard/experiments) to optimize conversions with A/B tests
