I've been wrestling with an old ecommerce site where category pages that still exist as URLs have no products left. The page returns a 200, shows header, footer, nav, and a 'no products found' message. Search Console flags them as soft 404s - and I agree. But the client doesn't want to 410 or 404 because they plan to restock, sometimes months later. Redirecting to a parent category would confuse users. Keeping them as empty shells feels wrong.
I've seen suggestions to add noindex tags temporarily, but that risks losing search equity when products return. Others use meta refresh or rel=canonical to a broader category. Neither feels perfect for the user or crawling efficiency.
From my experience, if the category is genuinely coming back, I'd keep it live with a 200 but improve the page so it's not just an empty shell. Add helpful content, related categories, waitlist options, or popular alternatives. Soft 404s usually happen because Google sees almost no unique value on the page, not just because inventory is empty.
Alternatively, a 302 temporary redirect to a relevant category might work, especially if you add related product links on the out-of-stock items.
What's the cleaner technical solution? Keep them live and accept soft 404s until stock returns, or is there a smarter middle ground I'm missing?