I have a heavily JavaScript based web app which I want to make it indexable.
I know that google bot and others agents can already see JavaScript, but I don't trust they will capture my content correctly and the problem is even bigger with asynchronous JavaScript. For examples: there are sections that are loaded only when the user scrolls down. There are also crawlers that can't see JavaScript, like Facebook's crawler.
Can I just send pre-rendered HTML, using phantomjs or other headless browser, to the google bot? This would be exactly what my end-users sees, but my fear is I may suffer penalties for serving different content for the bots.