# Walkthrough offers (/docs/walkthroughs/walkthrough-offers)

Most of the time, Skavelo helps when a user asks. A walkthrough offer lets you choose moments when it offers help first, such as a new user's first visit to Invoices:

> New here? I can show you how to send your first invoice.

The offer is a short card above the widget. Clicking it shows the walkthrough's name, what it does and how many steps it has, with **Start** and **Not now**. Nothing starts on its own, and the last click in the task is always the user's.

## Set up an offer [#set-up-an-offer]

1. Open the agent's **Product map** tab.
2. Next to a walkthrough, click **Offer this walkthrough**.
3. Write the **message**: one line to the user about the task. It can't contain links; the card always opens the walkthrough you chose.
4. Choose **when it shows**:
   - **On a page**: once the page has settled, on any page the rules allow.
   - **After something they do**: when your app reports an event, such as `project_created`. See [Events from your app](#events-from-your-app).
5. Set **where it shows** and **who sees it**: pages, sites, signed in or out, traits your app passes (like plan is trial), countries and devices. These are the same rules as [suggestions](/docs/customizing/suggestions).
6. Leave it **switched on** and click **Create offer**.

All your offers are on the **Walkthrough offers** tab of the Product map.

## How often people see offers [#how-often-people-see-offers]

- Each person sees an offer once. **Not now** means they aren't asked again, and neither are they after they've accepted it.
- Signed-in users are recognised by the id your app passes to `identify`, so they aren't asked again on another device. Signed-out visitors are remembered in their browser.
- An offer nobody answers goes away by itself, and stops after three visits.
- At most one offer shows per visit. Offers never show while the user is typing, while an answer or a walkthrough is under way, or over Skavelo's offer of help for someone who seems stuck.
- If several offers fit, the one you created first shows.

## Events from your app [#events-from-your-app]

For an offer after something the user does, call `event` with the same name you set in the dashboard:

```js
skavelo.event('project_created');
```

In React, use `event` from `useSkavelo()`. The offer still follows its rules, so it only shows to the people and on the pages you chose. Nothing about the event is sent or stored.

## Results [#results]

Each offer shows, for the last 30 days, how many people saw it, accepted it, finished the walkthrough and chose **Not now**. The Monday summary includes the week's numbers.

Offers, and the walkthroughs they open, don't count as conversations. If the user goes on to ask a question, that counts as usual.

## Plans [#plans]

| Plan | Switched on offers |
| --- | --- |
| Free | 1 |
| Starter | 3 |
| Growth and Enterprise | Unlimited |

The limit counts switched on offers across all your agents, so you can save more and choose which to use.

## When learning changes a walkthrough [#when-learning-changes-a-walkthrough]

Offered walkthroughs keep working when Skavelo re-learns your app: a fresh draft of the same task updates the walkthrough in place. If learning no longer finds the task, the walkthrough is marked as needing a re-learn and its offer pauses until it's back. Deleting a walkthrough deletes its offers too.
