What about an improved infinite scrolling implementation?
I agree with most of your points, but many of them can be addressed with a modified implementation that still has the benefits of infinite scrolling.
One such improved implementation is “paged” infinite scrolling where you get a few “pages” of results, and then prompt the user to “load more”. Only then is a request sent back to the server improving performance. Smashing Mag did a study on this and found the paged/load more method to be well-received in terms of usability and bounce rate.
This doesn’t address the analytics concern, but on the other hand many client-side behaviors involving AJAX have analytics concerns.
This post was written in response to: https://medium.com/simple-human/7-reasons-why-infinite-scrolling-is-probably-a-bad-idea-a0139e13c96b
WDStack: The Best of Web Design & Development