> For the complete documentation index, see [llms.txt](https://docs.voiceb.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.voiceb.ai/widget-configuration-guide/form-step-tracking.md).

# Form Step Tracking

Automatically mark a lead as converted when they complete a form on your website — confirmed by the user's own actions, not just the conversation.

***

## Form Step Tracking

Form Step Tracking lets the widget detect when a user completes a form (or any step-by-step flow) on your website, and automatically mark that lead as converted.

The conversion is confirmed by the user's own action on your site. This is a direct, more reliable signal than relying only on the automatic analysis of the conversation.

### How it works

1. The widget installed on your website listens to the form steps you configure.
2. When the user completes the final step, the widget sends a "form completed" event.
3. When the call ends, the system matches that event with the call from the same browser session.
4. If there's a match, the lead is marked as converted.

### Setting it up

Form Step Tracking is configured in the widget settings of each campaign:

1. Open the campaign and go to the **Widget** configuration.
2. Scroll to the **Form Step Tracking** section.
3. Add one row per step of your form, indicating:
   * **HTML tag** — the tag of the element the user interacts with (e.g. `button`, `form`).
   * **Element id** — the id of that element (e.g. `step1-form`, `confirm-btn`).
4. The widget automatically listens for submit and click events on those elements — **no extra code is needed on your website**, only the tag and id of each step.
5. **The last step in the list is treated as the completion event** ("form completed").

<div data-with-frame="true"><figure><img src="https://2950912279-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FggIr2RvhGm49D4vbjurT%2Fuploads%2Fjcp17gmXZMG5DJ9CyokE%2FScreenshot%202026-08-18%20at%2010.48.03.png?alt=media&amp;token=d441b786-6ae1-444a-abba-ff758b68ed53" alt=""><figcaption></figcaption></figure></div>

#### How to find the tag and id of an element

On your website, right-click the form step you want to track (for example, the final "Confirm" button) and select **Inspect**. The highlighted HTML shows the element's tag (e.g. `<button>`) and its `id` attribute — that's the pair you add in the configuration.

If the element doesn't have an `id`, your web team will need to add one so it can be tracked.

### Good to know

* The widget sends the "form completed" event in **every** campaign type, but it only changes the lead's outcome in **Digital Journey** campaigns (digital flow + call). In other campaign types the event is logged, but it does not affect the result of the lead.
* Setting this up requires identifying the correct tag and id of each step by inspecting the HTML of your website. Your team can do this, or ours can help during onboarding.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.voiceb.ai/widget-configuration-guide/form-step-tracking.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
