A client reads “Deep Tissue Massage, 60 min, $95” on your website, clicks Book, and the booking page shows 50 minutes at $105. Or the listing for your second location links to the first location’s calendar. Each page was correct when someone last edited it. They drifted apart because they are edited separately.

This guide shows how to check service names, prices, durations and booking links across your website, booking page and business listings. The output is an exception report: one row per service per location, showing the expected value, what each page shows, and what needs to happen next. It is an ongoing consistency check. If you are moving a menu into Acuity for the first time, start with Move Your Service Menu Into Acuity and Check Every Field.

Before you start: agree on the source of truth

An audit needs something to compare against. Before opening any page, get an owner-approved service menu for each location with:

  • Service name as it should appear
  • Duration in minutes
  • Price, or “no online price” if clients pay at the visit
  • The locations that offer it
  • The correct booking link

Different locations may legitimately offer different services or prices. Record that in the menu so the audit does not flag intended differences as errors. If nobody can say which value is correct, write that down as an open question rather than choosing one.

Where each value lives

Acuity Scheduling. Services are appointment types. Each one requires a name, a duration (1 to 1440 minutes) and the calendars that offer it. Price is optional. A blank price lets clients book without paying, so a missing price may be deliberate.

Two Acuity behaviours affect how you read the results:

  • Price changes apply only to new bookings. Appointments that are already booked keep their original price. One documented approach is to create a new appointment type at the new price and separate old and new types by calendar. Two near-identical services at different prices may be intentional. Flag them for review instead of calling them errors.
  • Location has a priority order. An appointment’s location can come from a video-conferencing integration, a client-entered address, the appointment type’s location, or the calendar’s location, in that order. The calendar location (Availability > Calendar settings > Location) is the most common source. Check which one applies before deciding a location is wrong.

Booking links. Acuity direct links can point to a specific appointment type, category, calendar or location. To get the correct link, go to Scheduling Page > Link > Direct links & embedding, choose the appointment type, open the Direct Link tab and copy it. Compare that link to the link behind each “Book” button on your website. Direct links can also expose appointment types that are otherwise private, so check that a website button isn’t pointing at a retired or private service.

Google Business Profile. Service businesses can add services with a description, price and category. Custom service names are reviewed, and names that contain prices or phone numbers are rejected. Check the price field, not the name.

The exception report (illustrative)

The table below is a fictional example for an invented two-location business. It shows the format, not real results.

ServiceLocationSourceExpectedObservedStatusAction required
Deep Tissue MassageNorthsideexample.com/services60 min, $9560 min, $95MatchNone
Deep Tissue MassageNorthsideAcuity appointment type60 min, $9550 min, $105MismatchOwner to confirm; check whether a new type was created for a price change
Deep Tissue MassageHarbourexample.com/servicesNot offeredListed, $95MismatchRemove from Harbour section or confirm the service was added
Sports RecoveryHarbourBusiness Profile services$80No price shownMissingDecide whether to add a price; not a conflict
Sports RecoveryHarbourWebsite “Book” buttonHarbour calendar linkLink opens Northside calendarMismatchReplace with the Harbour direct link
Initial AssessmentBothAcuityOne type, $70Two types: $65 and $70ReviewCheck whether the $65 type is kept for existing bookings

Keep Missing separate from Mismatch. A page that doesn’t show a price is a different decision from a page that shows the wrong one. Include the source URL in every row so the person fixing it can open the exact page.

Doing it manually

For a small menu, a spreadsheet works:

  1. Paste the approved menu into the first columns.
  2. Go through the pages one location at a time: website, booking page, Business Profile.
  3. Record only what is visible on the page. Don’t fill gaps from memory.
  4. Mark each row Match, Mismatch, Missing or Review.
  5. Send Mismatch and Review rows to the owner before editing anything.

This works but takes time once you have many services, several locations, or need to repeat it after every menu change.

Using Dassi for the read-only pass

Dassi is a browser extension for Chrome, Edge and Brave that runs in the side panel and works in sites you’re already signed into, including your Acuity admin. You can ask it to open each page, read the values and fill in the comparison table. Then save the instructions as a workflow and run it again after each menu update, or schedule it. Scheduled runs need the browser to be open. Each workflow keeps a run history.

Instructions and page content go to the AI provider you configure. If you use managed credits, requests pass through Dassi’s relay. Keep this in mind before including pages with client information.

A reusable prompt:

Read-only task. Do not edit, save, or submit anything on any page.

Approved menu (source of truth):
[paste service, location, duration, price, booking link for each row]

For each service and location, check:
1. Website service page: [URL]
2. Acuity appointment types for calendar: [calendar name]
3. Google Business Profile services for: [location]
4. The link behind each "Book" button on the website

Return a table with columns: Service, Location, Source URL, Expected,
Observed, Status, Action required.
Status must be one of: Match, Mismatch, Missing, Review.
- Use Missing when a value is not shown, not when it differs.
- Use Review when Acuity has two similar services at different prices.
- Record exactly what the page shows. If a page doesn't load or you
  can't find a service, say so; do not guess.

Checks before anyone publishes a change

  • The right location: the calendar, Business Profile and website section all belong to the location in the row.
  • The current menu: the source of truth is the latest owner-approved version, not an old price list.
  • Missing and Mismatch are separated.
  • Review rows are checked against existing bookings before deleting or merging appointment types.
  • Each observed value has a source URL you can open and confirm.
  • A person approves each change before it is made. The audit only reports; it doesn’t fix.

An agent can misread a page or open the wrong calendar, so spot-check some Match rows as well as the exceptions.

Next step

Pick one service that appears on your website, booking page and Business Profile. Write down its approved name, duration, price and booking link, then run a read-only comparison of that one service. If the table is accurate, add the rest of the menu.

Try a read-only comparison of one service across your website and booking page in Dassi.