I don't think Google and Bing AI fully understand how classifieds sites work. No classifieds platform keeps expired ads as permanent pages, they automatically expire and are deleted if not renewed. Yet both Google and Bing still treat some of my ads that expired 2–3 years ago as if they were live pages they "can't find." That's ridiculous. Those outdated references should be actively purged from their indexes, and only current pages should be crawled and indexed. Otherwise, search engines end up claiming I have millions of "missing" pages, when in reality, those pages never existed in the first place or were intentionally removed.
Do you use structured data with the end date as part of the feed? It would be disappointing to give them that info and have it ignored. I see lots of missing pages that they report as being "not a problem". Websites change their content for many reasons. Classifieds like yours are a pretty good example.
Grok suggests adding <meta name="robots" content="noindex"> to every expired ad page, which should prevent indexing. I'll implement that. The core issue is that search engines continue to crawl and display 2–3-year-old ad pages that now return 404 errors. Despite the HTTP 404 status, they seem to ignore the signal and keep these outdated links in their indexes.
What if to create a simple redirect system? The idea is to have a file where you list all the expired URLs, and the script automatically redirects any of those to your homepage. This way, visitors and search engines don’t hit dead links. Once the redirects are set up, go to GSC and use the “Removals” tool. Add those same URLs there to request their removal from Google’s index. I’m not sure about Bing, but it should have a similar removal option. The main point is to always set up the redirect first, and then use the removal tool so search engines process the change correctly.
It's not as cut-and-dry. Roughly 50% of users may renew their ads, so blanket removal risks churn. Using a removal option could also confuse search engines and hurt organic visibility. I've already seen improvement from adding <meta name="robots" content="noindex"> to expired listings.
Then don’t delete expired posts, just set up a redirect. When an ad expires, make it automatically switch to a 301 redirect instead of removing the URL. You can ask ChatGPT to write a script for that. The goal is to keep the URLs but redirect them, ideally through an automated process.