Do your servers send 304 If Modified Since headers?
No. After spending a lot of time researching this, our team decided not to send these headers via Nginx, nor implement any WordPress (PHP) based version of this header either. The reason is explained more in our blog post but in short, dynamic content is risky to include 304 headers and at the end of the day, not much bandwidth (if any) is really saved by using 304 headers anyway. Web browsers are evolving quickly and if your site isn’t already optimized well for 200 codes, there is no reason to think that 304 is going to fix your site’s lack of optimization. Your site should be well optimized for content size (light) and loading speed no matter what, and beyond that, we believe basing web development based on pragmatic approach and listening to major players (browser companies, and search companies like Google) is better way to go forward rather than obsessing over 304 headers. Google does technically recommend them (quickly, in passing) as they are a RFC standard after all, but in general Google focuses much more on cache headers and browsers caching, so ETags and Cache Control headers are much more important than 304 headers.