# Count Calendly bookings Source: https://www.luriart.com/docs/install/calendly Plain text: https://www.luriart.com/docs/install/calendly.txt Connect Calendly with a personal access token so every booking, cancellation and no-show reaches Luria from Calendly itself and credits the page version the visitor saw. Time needed: about 5 minutes. Connect Calendly and each booked call reaches Luria from Calendly, not from a thank-you page. Cancellations, reschedules and no-shows update the same booking, so your booked-call numbers stay right. Luria creates one webhook in your Calendly account and deletes it when you disconnect. It never books, cancels or edits anything. ## What you'll need * The Luria tag on the page that shows your Calendly embed ([Install on a custom site](/install/script)) * A Calendly Standard plan or above (Calendly only offers webhooks on paid plans) * **Connections** in the Luria dashboard. It is rolling out; if you do not see it, email [hello@luriart.com](mailto:hello@luriart.com) ## Steps ### Step 1: Create a personal access token In Calendly open [Integrations → API & Webhooks](https://calendly.com/integrations/api_webhooks), click **Generate new token**, name it Luria, and give it these scopes: `users:read`, `webhooks:read`, `webhooks:write`, `scheduled_events:read`. Copy the token; Calendly shows it once. ### Step 2: Paste it into Luria In [luriart.com/app](https://www.luriart.com/app) open **Connections → Calendly** and paste the token. Luria checks it, subscribes to bookings, cancellations and no-shows for your own Calendly user, and shows each check as it passes. ### Step 3: Pass the visitor's Luria id into the embed Calendly keeps `utm_content` with each booking, so put the visitor's Luria id there. For an inline embed: ```html
``` On a plain Calendly link, add `?utm_content=` plus the same id. Without it Luria matches by the invitee's email when that email already reached Luria; otherwise the booking still counts in your numbers, just not toward a split test. ### Step 4: Remove any booking thank-you line If a thank-you or `/booked` page counts the booking with `window.luria.convert("booked_call")`, or you rely on the `/booked` path being auto-counted, remove it. Calendly is the record now, and keeping both counts the call twice. ## Verify it worked 1. **Connections → Calendly** shows Token accepted and Webhook active. 2. Book a test call from your own page. Within a minute the card shows "Last booking event received", and if your goal is Booked calls, "Conversions this period" on Overview goes up by one. 3. Cancel the test call. The booking changes to cancelled instead of adding a second row. Full checklist: [Verify your install](/install/verify). ## Common failures * **"It needs a Standard plan or above".** The Calendly account is on the free plan, which has no webhooks. * **"Webhook disabled" on the card.** Calendly turns a webhook off after 24 hours of failed deliveries. Reconnect to create it again. * **Bookings arrive but no test gets credit.** `utm_content` is empty; check Step 3 runs after the Luria tag has loaded once on that browser. * **Only your own bookings arrive.** The connection covers the Calendly user who made the token. For a whole team, email [hello@luriart.com](mailto:hello@luriart.com). * **Counted twice.** A thank-you line is still active. See Step 4. ## Next steps - [Verify your install](/install/verify) - [Count Stripe payments](/install/stripe) - [Webhooks](/install/webhooks) - [Duplicates](/troubleshooting/duplicates)