# Business impact and attribution (/docs/user-guide/business-impact)



Recall's Business Impact dashboard answers the question that visibility scores cannot: &#x2A;*did people arrive from an AI answer, and did any of those sessions produce a meaningful business outcome?**

## Set up the collector [#set-up-the-collector]

. Open **Settings → Attribution** for a brand.
. Create the attribution keys.
. Copy the generated HTML into your website's global layout.
. Confirm that every website hostname that will send events appears under **Allowed domains**.

The generated URL uses the Recall instance you are currently viewing, so a tunnel or raw deployment URL works during a pilot. Replace the snippet if that instance URL changes.

The collector recognizes traffic from ChatGPT, Perplexity, Gemini, Microsoft Copilot, Claude, Grok, Poe, You.com, Meta AI, DeepSeek, and explicitly tagged Google AI links. If an answer engine strips its referrer, add a durable campaign parameter such as `?utm_source=chatgpt` to links you control.

## Record a conversion [#record-a-conversion]

Call the browser API after the business action succeeds:

```js
window.recall.track("signup_completed", {
  conversion: true,
  metadata: { plan: "pro" },
});
```

Use lowercase object-action names. Recall automatically treats these standard events as conversions:

* `signup_completed`
* `demo_requested`
* `lead_created`
* `purchase_completed`
* `subscription_started`

For purchases or backend-confirmed events, use the server endpoint and private bearer key shown in attribution settings. Pass `window.recall.sessionId` and `window.recall.source` through your checkout or signup flow so the backend event remains connected to the originating AI session. Include a stable `dedupeKey`, such as an order ID, to make retries safe.

If your website uses a Content Security Policy, allow the Recall origin in `script-src` and `connect-src`. Load the snippet through your consent manager whenever your privacy policy or jurisdiction requires it.

Revenue is never inferred. It appears only when a conversion includes a numeric `value` and `currency`.

## Read the dashboard [#read-the-dashboard]

The headline metrics distinguish between:

* **AI sessions** — anonymous browser sessions attributable to a supported answer engine.
* **Converted sessions** — unique AI sessions with at least one conversion.
* **Conversions** — total conversion events; one session can produce more than one.
* **Attributed revenue** — values explicitly attached to conversion events, kept separate by currency.

The shipped-work section compares equal windows immediately before and after a tracked opportunity was shipped. It places business movement beside the opportunity's visibility verdict, but labels the result as **directional**. Model updates, campaigns, product launches, competitor actions, and news can affect the same period, so the comparison is evidence rather than a claim that one AEO change caused revenue.

## Privacy and retention [#privacy-and-retention]

The browser collector is session-scoped and cookie-free. It activates only for attributable AI traffic and does not persist names, emails, IP addresses, wallet addresses, or persistent visitor IDs. Metadata containing common personal-data fields is rejected.

Use metadata for categorical business context such as plan, product, funnel stage, or campaign. Never send personal information.

Events older than 400 days are removed automatically. You can pause collection or permanently delete a brand's collected events from **Settings → Attribution**.
