{
  "title": "Dealership AI pilot scenarios",
  "updated": "2026-11-05",
  "guide": "https://www.drcanary.com/resources/building-ai-at-your-store/",
  "note": "Walk by hand with a test customer, or use start/change/expect as a test. Nothing here touches a live customer, appointment or system.",
  "scenarios": [
    {
      "id": "chat-over-booking",
      "area": "Website",
      "title": "The chat window sits on the Book button",
      "team": "website team",
      "start": "A shopper opens the site assistant on a phone.",
      "change": "They close it and tap Book service underneath.",
      "expect": "The button works, and the page it opens is the scheduler the service department actually uses.",
      "keep": [
        "A phone capture before and after closing the assistant",
        "The page the button opened"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "second-scheduler",
      "area": "Website",
      "title": "One booking link works. The other does not.",
      "team": "service manager",
      "start": "Service booking works from the header.",
      "change": "The shopper books from the link on a service page instead.",
      "expect": "Both links reach a scheduler that takes the booking.",
      "keep": [
        "Both starting pages",
        "Where each link landed",
        "The confirmation, or the error"
      ],
      "finding": {
        "date": "October 11, 2026",
        "text": "The booking link in the site header took a reservation. The second scheduler, linked from the service pages, opened to “This page is unavailable.”",
        "guide": "https://www.drcanary.com/resources/dealership-service-booking-paths/#observed"
      },
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "sold-mid-conversation",
      "area": "Sales",
      "title": "The unit sells mid-conversation",
      "team": "BDC manager",
      "start": "A shopper has a vehicle link and an invitation to visit.",
      "change": "The vehicle sells before the next message goes out.",
      "expect": "The next message says so and offers the closest units, instead of repeating the old link.",
      "keep": [
        "The sold timestamp",
        "The next message",
        "The alternatives it named"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "shopper-switches",
      "area": "Sales",
      "title": "The shopper switches vehicles",
      "team": "BDC manager",
      "start": "A shopper asks about a used SUV and a follow-up is queued.",
      "change": "They reply about a different vehicle and ask for a walkaround.",
      "expect": "The next message is about the new vehicle, the walkaround plays on a phone without a login, and the first question is not asked again.",
      "keep": [
        "The thread",
        "The queued message before and after",
        "The link that was sent"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "reply-mid-cadence",
      "area": "Sales",
      "title": "A reply lands between scheduled sends",
      "team": "BDC manager",
      "start": "Three follow-ups are scheduled after an unanswered inquiry.",
      "change": "The shopper replies with a question an hour before the next send.",
      "expect": "The question gets an answer, the scheduled send pauses or changes, and the salesperson can see both.",
      "keep": [
        "The time of the reply",
        "What went out next",
        "Who answered"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "trade-needs-detail",
      "area": "Sales",
      "title": "The trade-in question needs more detail",
      "team": "used-car manager",
      "start": "A shopper gives a vehicle, mileage and a description and asks what it is worth.",
      "change": "The condition details are too thin for a supported range.",
      "expect": "The reply says what can be estimated, asks for the missing detail, and explains what the appraisal checks. No invented offer.",
      "keep": [
        "The inquiry",
        "What the valuation tool showed",
        "The reply"
      ],
      "finding": {
        "date": "September 22 to October 9, 2026",
        "text": "A trade-in inquiry named a 2020 Silverado. The first reply named it too and offered an appraisal. Seventeen days later a follow-up arrived with the subject “2026 Make Unknown Model Unknown.”",
        "guide": "https://www.drcanary.com/resources/dealership-lead-follow-up-quality/#observed"
      },
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "payment-does-not-apply",
      "area": "Sales",
      "title": "The advertised payment does not apply",
      "team": "sales manager",
      "start": "A shopper asks about a payment shown on a vehicle page.",
      "change": "The offer has expired, or needs a credit tier the shopper has not shown.",
      "expect": "The reply states the current terms and their conditions. It does not present the advertised number as a quote.",
      "keep": [
        "The offer page and its expiry",
        "The reply"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "missing-fields",
      "area": "Sales",
      "title": "The follow-up loses the truck",
      "team": "BDC manager",
      "start": "The inquiry names a year, make and model.",
      "change": "A later template gets empty vehicle fields after a handoff.",
      "expect": "The message holds for a person, or fills the fields from the inquiry. No placeholder reaches the inbox.",
      "keep": [
        "The original inquiry",
        "The template’s inputs",
        "Every message the shopper received"
      ],
      "finding": {
        "date": "September 22 to October 9, 2026",
        "text": "A trade-in inquiry named a 2020 Silverado. The first reply named it too and offered an appraisal. Seventeen days later a follow-up arrived with the subject “2026 Make Unknown Model Unknown.”",
        "guide": "https://www.drcanary.com/resources/dealership-lead-follow-up-quality/#observed"
      },
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "appointment-moves",
      "area": "Service",
      "title": "The appointment moves. The reminder must too.",
      "team": "service manager",
      "start": "A Friday appointment, with a reminder queued.",
      "change": "The customer moves it to Monday and mentions a warning light.",
      "expect": "The scheduler, the confirmation and the advisor’s notes all say Monday and mention the light. The Friday reminder is gone.",
      "keep": [
        "Both appointment records",
        "The change receipt",
        "The reminders that went out"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "declines-extra",
      "area": "Service",
      "title": "The customer declines the extra",
      "team": "service advisor",
      "start": "A booked customer gets one relevant optional service with its price.",
      "change": "They decline it and ask about the shuttle.",
      "expect": "The booking is unchanged, the decline is recorded, the shuttle question is answered. Nothing later treats the extra as approved.",
      "keep": [
        "The suggestion",
        "The reply",
        "The work on the appointment",
        "The later messages"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "cancel-by-phone",
      "area": "Service",
      "title": "The cancellation comes by phone",
      "team": "service manager",
      "start": "Booked online, confirmation sent.",
      "change": "A staff member records a phone cancellation before the reminder goes out.",
      "expect": "The reminder does not go out. No later message assumes the visit is still on.",
      "keep": [
        "The cancellation record",
        "The reminder queue",
        "What was sent after"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "done-elsewhere",
      "area": "Service",
      "title": "The work was done somewhere else",
      "team": "service BDC",
      "start": "A follow-up is scheduled for work the customer declined last visit.",
      "change": "The customer replies that another shop did it.",
      "expect": "The reminder stops, the advisor hears, and nothing invents a repair order.",
      "keep": [
        "The reply",
        "The stopped message",
        "The record the advisor updated"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "lead-twice",
      "area": "Across systems",
      "title": "The same lead arrives twice",
      "team": "lead provider and BDC",
      "start": "A form submission creates a lead.",
      "change": "The provider retries the same event after a timeout.",
      "expect": "One lead, one first contact, and a note that the retry happened.",
      "keep": [
        "Both payloads",
        "The CRM records",
        "The sends"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "opt-out-while-queued",
      "area": "Across systems",
      "title": "An opt-out while a message is queued",
      "team": "whoever owns outreach",
      "start": "A campaign message is scheduled.",
      "change": "The customer opts out of that channel before it sends.",
      "expect": "It does not send, and every connected sender knows.",
      "keep": [
        "The opt-out event",
        "The queue decision",
        "The provider’s send log"
      ],
      "finding": null,
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "crm-down",
      "area": "Across systems",
      "title": "The CRM is down when the lead arrives",
      "team": "lead provider",
      "start": "The site accepts an inquiry.",
      "change": "The CRM connection times out, then recovers.",
      "expect": "The inquiry is held, someone is told, and it arrives once when the CRM is back. The shopper’s confirmation never claimed more than the site could see.",
      "keep": [
        "The browser result",
        "The held payload",
        "The receipt after recovery"
      ],
      "finding": {
        "date": "October 29, 2026",
        "text": "The general contact form came back “Unable to process.” The price inquiry on a vehicle page, the same day, went through.",
        "guide": "https://www.drcanary.com/resources/dealership-lead-form-testing/#observed"
      },
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    },
    {
      "id": "parts-link-stranded",
      "area": "Across systems",
      "title": "The parts link strands the customer",
      "team": "parts team",
      "start": "The site links to a parts vendor.",
      "change": "The vendor page fails to load, or lands somewhere else.",
      "expect": "Someone owns the route, the customer has another way to the counter, and the link is checked again after the vendor fixes it.",
      "keep": [
        "The starting link",
        "Where it landed",
        "The time",
        "The recheck"
      ],
      "finding": {
        "date": "October 28, 2026",
        "text": "The Parts button in the site’s navigation opened a vendor page that could not make a secure connection. The browser showed its own error instead of the catalog.",
        "guide": "https://www.drcanary.com/resources/dealership-vendor-link-checks/#observed"
      },
      "result": {
        "status": "not run",
        "observed": "",
        "evidence": [],
        "date": ""
      }
    }
  ]
}
