← Blog

How-to seriesSeptember 28, 2026

How to review a dealer’s public inventory

Create a dated inventory snapshot from public dealer pages, tracking VIN duplicates, missing pages and changes without inventing sales.

A dealer's public inventory can be turned into a useful worksheet if you preserve how you collected it. Record the pages visited, the listings extracted and the gaps. Then group the observed vehicles by make, condition, price and other fields relevant to your question.

This tutorial uses general web tools or an inventory export you are authorized to analyze. It does not assume a dedicated dealer-inventory service, complete market coverage or access to the dealer's internal stock system.

Choose a question the snapshot can answer

A buyer might want all visible used hybrids under a stated asking price. An analyst might want the mix of makes and advertised prices on a specific dealer site. Both are bounded observations. Neither establishes which cars sell fastest without reliable history and sale evidence.

After connecting Vaaya, use:

Review public inventory at [dealer website and inventory page].
Question: [specific comparison]. Include [new, used or both].
Record listing URL, published VIN, stock number, model, mileage and price.
Keep cash prices separate from payments and conditional offers.
Deduplicate repeated vehicles and report pages visited and missing coverage.
Stay within [page limit] and [total budget]. Do not contact the dealer.

Ask for the inventory URL rather than starting with every page on the dealer's domain. Service pages, staff biographies and finance articles rarely help answer a stock question.

Collect a bounded set of listings

  1. Inspect the first inventory page. Read its filters, result count and pagination cues. Check whether new and used vehicles appear together. Record any displayed total as the site's claim, alongside the number you eventually observe.

  2. Discover relevant URLs. Ask consult for a mapping or crawling route. olostep/map can discover URLs with include/exclude patterns. OneScrape-deep can use site with a URL, max_pages and path filters. A URL map only shows discovered links; it does not prove that a dynamic inventory view has been fully enumerated.

  3. Read a small sample before expanding. Extract several listing pages and verify that the fields refer to the individual vehicle. Repeated navigation prices, financing advertisements and nearby recommendations should not become that vehicle's asking price. Correct the extraction schema before paying to process the rest.

  4. Collect within the stated limits. Save the returned job ID for asynchronous work and follow its polling instructions. With OneScrape-deep, poll result rather than resubmitting. Keep a page log with success, blocked, empty and over-budget states. Stop when the scope is met or the remaining pages require unsupported interaction.

  5. Deduplicate and summarize. Use a complete published VIN when available, with stock number and canonical URL as secondary evidence. Preserve uncertain matches for review. Split new, used and certified claims into their own fields, then calculate counts and ranges only over the records that have the needed data.

Give the worksheet a coverage page

The vehicle table can use:

captured_at | dealer_domain | listing_url | vin | stock_number
new_or_used | certification_claim | year | make | model | trim
mileage | units | advertised_price | currency | price_conditions
availability_claim | extraction_status | duplicate_group

Add a second table for collection:

page_url | requested_at | retrieval_status | listings_observed
pagination_cue | next_page_checked | exclusion_reason | unresolved_gap

Write missing prices as unknown. A monthly payment, “call for price” message or amount after a trade-in incentive cannot safely enter a cash-price average. Report the number of vehicles excluded from that calculation and why.

Compare later snapshots carefully

If you need changes over time, schedule another bounded collection in your own application and keep the first snapshot. Match vehicles by VIN or other stable evidence, then label observations as newly seen, price changed or no longer seen.

Those labels describe the collection. A missing vehicle may have moved to another dealer, been relisted or dropped out because a page failed. Do not call it sold without confirming evidence. Similarly, the first day your crawler sees a car is not necessarily the day it arrived on the lot.

Review a few original listings beside the final worksheet. Confirm that price conditions, mileage units and stock condition survived extraction. Deliver the source-linked table, collection log and unanswered questions together so another person can judge whether the snapshot is sufficient for the decision.

Questions

Does a crawl return the dealer’s entire inventory?

Not necessarily. Pagination, filters, dynamic loading and blocked pages can hide listings. Report the pages and rows actually observed, with coverage gaps.

Does a removed listing mean the vehicle sold?

No. It may have sold, moved, expired or become temporarily unavailable. Record disappearance as an observation until a source confirms its meaning.

Is there a native dealer-inventory API in this tutorial?

No. The workflow uses accessible public pages or an authorized export, with general mapping, crawling and extraction tools.

Try Vaaya with your agent.

Connect your agent, choose a service, and try your first call with Vaaya.

npx @vaaya/mcp install