Sold cars still on your website: how to fix inventory feed accuracy
A car that sold on Saturday and is still listed on Tuesday costs you a phone call, a disappointed shopper and some trust. Here is where the lag comes from and how to close it.
By DenisProjects & websitesPublished Updated
Visuals made with AI from our real studio photos, with each person's consent.
Narrated by an AI voice designed for Denis — not Denis's own recording. The article below is the transcript.
Every dealer has taken this call. Someone drove in from Truro for the grey RAV4 on your website, and the grey RAV4 left on Saturday. They are polite about it, mostly. They also go home and look at the rest of your listings differently, because if that one was wrong, which others are?
A sold car that stays listed is not a website problem in the way a slow page is. It is a data problem: somewhere between the moment a deal is signed and the moment your website, your marketplace listings and your ads stop showing the car, there is a delay, and nobody owns it. This article is about finding that delay and shortening it.
Where the inventory on your website actually comes from
On most used-car lots in Atlantic Canada the chain looks something like this:
01A car is entered once — in your dealer management system (DMS), an inventory tool, or sometimes a spreadsheet.
02That system exports the stock as a feed: a file or an API that lists each vehicle with its VIN, stock number, price, kilometres, photos and status.
03Your website reads that feed on a schedule. So do the marketplaces you list on, and so does any ad platform building ads from your stock.
04Each of those reads has its own timetable, its own rules for what "sold" means, and its own cache.
The car is only off the market when the slowest of those readers catches up. If the website syncs every few hours but a marketplace listing is updated overnight, the car is "for sale" somewhere until the next morning. If nobody marks the car sold in the source system until the paperwork is finished, everything downstream is wrong for days.
Where a sale has to travel06 stages
Deal signed
Marked sold at the source
Feed export
Website, marketplaces and ads read it
Page caches clear
Gone everywhere
The five usual causes
1. The car is not marked sold at the source
This is the most common one, and it is a people problem before it is a software problem. The deal is done on the floor, but the status changes only when the bill of sale is processed, or when someone gets around to it on Monday. Every downstream system is faithfully copying a status that is out of date.
2. The feed runs less often than you think
Ask whoever set up your website how often it pulls the feed, and then check. A schedule that was meant to be hourly is sometimes daily, and a nightly export is common on older setups. The feed itself may also be generated on a timer by the DMS, which adds a second delay on top of the first.
3. "Sold" and "pending" mean different things in different places
Some systems remove a vehicle when it is sold; others keep it visible with a "sold" badge; others have a "pending" or "deposit taken" state that a website template does not understand and therefore shows as available. If your source system has three states and your website knows about two, one of them is being shown wrong.
4. Caching
Websites cache pages so they load quickly. That is good, until a vehicle page is cached for a day after the car has gone. The feed can be perfectly accurate while the page a shopper sees is not.
5. Duplicates and orphans
A car re-entered with a new stock number after a reconditioning delay, a VIN typed with a transposed character, a demo moved from one store to another: each can leave an old listing behind that no feed will ever remove, because the feed no longer mentions it at all. Orphaned pages stay up until someone deletes them by hand.
What accurate looks like
Accuracy is not only "sold cars are gone". For a shopper, a listing is accurate when:
—the car is actually available, or is clearly marked if a deposit is taken;
—the price matches what your salesperson will quote, with the same fees;
—the kilometres are current;
—the photos are of this car, not a stock image of the model (a photo standard for small lots covers what to shoot, and in what order);
—the vehicle detail page loads on a phone without a broken gallery.
Price is the one that gets dealers into trouble beyond lost trust. If the number on your website and the number at the desk are different, the shopper notices — and the Competition Bureau's guidance on drip pricing says that the only mandatory charges that can be left out of an advertised price are the ones a government imposes on buyers, such as sales tax. If your desk adds a fee the website price does not include, that is a conversation to have with whoever advises you on advertising, not something to leave to the feed. Keep the feed price and the desk price as the same number from the same source.
A weekly routine that catches most of it
You do not need new software to start. You need ten minutes and someone who owns the result.
Do it on the same day each week and keep the notes. After three or four weeks you will know which part of the chain is slow, and you will have the evidence to ask your website provider or your DMS vendor to fix it.
“A sold car that stays listed is not a website problem. It is a data problem — a delay between the deal and the listing that nobody owns.”
Denis · Projects & websites
Fixes, from cheapest to most involved
Change who marks a car sold, and when
Make "marked sold in the system" part of closing the deal, not part of the paperwork. Whoever hands over the keys, or whoever takes the deposit, changes the status. It costs nothing and it moves the start of the chain forward by days.
Ask your website provider three questions
—How often does the site read our feed, and can it be more often?
—What does the site do with a vehicle that disappears from the feed — remove it, mark it sold, or keep it?
—How long are vehicle pages cached, and is the cache cleared when the feed changes?
If the answers are vague, ask to see the sync log. A provider who runs your inventory should be able to tell you when the last import ran and what changed in it.
Mark sold cars properly for search engines
When a car sells, the page should either be removed (returning a "not found" status) or clearly marked as sold and taken out of your inventory listing. What it should not do is stay up looking available, because search engines keep showing a page until they crawl it again. If you have just cleaned up a batch of stale pages, Google explains how to ask it to recrawl them.
One thing that has changed: Google used to show free vehicle listings in search, fed by structured data on vehicle pages. It has retired that feature and stopped processing vehicle listing feeds. If a vendor is still selling you on "vehicle schema for free Google listings", ask them what it does today. Accurate pages still matter for ordinary search results; that feature is simply no longer the reason.
Use one source for everything
The real fix is structural: one record per car, read by everything that shows the car. When your website, your chat assistant and your ads all read the same live feed, a status change in one place is a status change everywhere on the next sync — not a list of five systems to update by hand.
How we handle it
On the sites we build, inventory is synced automatically from the dealer's own feed; nobody uploads cars by hand. The same feed is what our AI assistant, Sofia, answers from, so once a car is marked sold it drops out of her answers too. She is AI and can make mistakes — the chat says so on every screen — which is exactly why she reads the live feed rather than a list someone exported last month. And the paid media we run is built from that same live feed, so an ad does not keep promoting a car you no longer have; Yaroslav explains how in ads from your live inventory.
For one example of scale: our client Buy Metro Pre-Owned had 369 vehicles showing as available on September 28, 2026, out of 1,418 vehicles in their database. One dealer group, one market — not a promise about yours. The point is not the number; it is that nobody types those cars into the website.
The short version
—A sold car stays listed because the status changes late, the feed runs slowly, states are mapped wrongly, pages are cached, or old pages are orphaned.
—Check five sold cars and five new arrivals every week, everywhere you list.
—Make marking a car sold part of closing the deal.
—Ask your provider how often the site syncs and what happens to a car that leaves the feed.
—Aim for one feed that the website, the chat and the ads all read.
If you would rather have someone else run the check, the free lot check starts with exactly this: whether every car on the lot is on the site with its real price, photos and kilometres, and whether the sold ones are gone.
Shoppers meet your car as a thumbnail long before they meet you. Here is a simple standard for what to shoot, in what order and in what light, and a weekly routine that gets new arrivals online fast.
Denis · Projects & websites · AI-narrated
Visuals made with AI from our real studio photos, with each person's consent.
AutoTrader.ca, Kijiji, Facebook, Google and your own website all put your cars in front of shoppers. Only one of them lets you keep the shopper. Here is what each channel is good for, what it holds back, and how to make every one of them point home.
Yaroslav · Paid media
Visuals made with AI from our real studio photos, with each person's consent.