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

# Install and launch Simple Scheduler

> Test the customer journey, generate a website key, install the widget, and verify production tracking and notifications.

Complete [Simple Scheduler configuration](/simple-scheduler/configure) before installing it on the production website.

## Review the customer journey

The service-selection page should use clear customer-facing categories.

<img src="https://mintcdn.com/avoca-hc/WEpQDrx-Pa_9C9Oh/images/simple-scheduler/service-selection.png?fit=max&auto=format&n=WEpQDrx-Pa_9C9Oh&q=85&s=e625c4df1671a07fcb14277b403c220f" alt="Simple Scheduler service selection" width="1252" height="1060" data-path="images/simple-scheduler/service-selection.png" />

Questions should collect only information needed to qualify or create the appointment.

<img src="https://mintcdn.com/avoca-hc/WEpQDrx-Pa_9C9Oh/images/simple-scheduler/additional-questions.png?fit=max&auto=format&n=WEpQDrx-Pa_9C9Oh&q=85&s=2fc4873595ba0f53016978560c5308a9" alt="Simple Scheduler additional information questions" width="1242" height="1078" data-path="images/simple-scheduler/additional-questions.png" />

Availability should show the intended days and customer-facing windows.

<img src="https://mintcdn.com/avoca-hc/WEpQDrx-Pa_9C9Oh/images/simple-scheduler/availability-selection.png?fit=max&auto=format&n=WEpQDrx-Pa_9C9Oh&q=85&s=5a5ee64ddaaec89bd1b367b02ca4e59d" alt="Simple Scheduler availability selection" width="621" height="585" data-path="images/simple-scheduler/availability-selection.png" />

Complete every service path, not only the most common one. Conditional questions, ownership requirements, tags, and availability can differ by service.

## Generate the website key

Open **Simple Scheduler → API Keys**.

1. Create a scheduler-specific widget key.
2. Add the root website domain.
3. Add each production subdomain that will load the widget.
4. Use a wildcard such as `*.example.com` only when every subdomain should be allowed.
5. Keep test and preview domains separate from production when practical.
6. Copy the generated installation snippet.

The dashboard can show a masked portion of an existing key. Treat the complete key and embed snippet as credentials and share them only with the website owner.

## Choose an installation mode

* Use the **default-button** snippet when Avoca should render the launcher.
* Use the **manual** snippet when an existing website button should open the scheduler.
* Use a generated direct link for campaigns, emails, or a standalone booking page.

Do not reconstruct the widget host or key by hand. Use the current snippet generated for the selected scheduler.

## Configure links and attribution

On **Links**:

1. Set the customer website used by links that open the widget.
2. Choose the default CRM campaign when applicable.
3. Create UTM mappings for important source, medium, and campaign combinations.
4. Map each tracked combination to the intended CRM campaign.
5. Test how a production-shaped URL resolves.
6. Copy the generated website URL, scheduler URL, or short link.

Use compact UTM values such as `google`, `email`, or `spring-maintenance`. Do not paste a complete URL into a UTM value.

## Configure notifications

Decide who owns:

* Successful booking notifications
* Drop-off or abandoned-session follow-up
* CRM alerts created from scheduler tags
* Technical errors reported by the website team

Employee notification preferences are managed from **Business Info → Employee Contacts** or **Settings → Notifications**, depending on the notification type enabled for the team.

## Run a production-domain test

1. Publish the snippet to a non-indexed or controlled production page.
2. Load the page in a private browser window.
3. Open the scheduler from the real website button.
4. Test desktop and mobile.
5. Complete an approved booking.
6. Verify the CRM customer, job, appointment, campaign, tags, and question answers.
7. Confirm the Simple Scheduler journey and Overview metrics.
8. Verify the intended notification.
9. Test one tracked URL and confirm its UTM attribution.
10. Test an unavailable service and an invalid or unsupported location.

<Warning>
  A dashboard preview does not validate domain restrictions, a website button, production tracking, or the final CRM write. Always complete a test from the deployed website.
</Warning>

## Launch and monitor

After the website and operations owners approve the test:

1. Publish the widget or booking link to the intended pages.
2. Confirm the correct scheduler loads.
3. Review sessions, bookings, conversion rate, and funnel drop-off after launch.
4. Compare traffic sources and UTM values.
5. Inspect several completed CRM records.
6. Assign an owner to review drop-offs and customer feedback.

Deactivate an old widget key only after the replacement is live on every page that used it.
