really not sure having a separate way to render your page just for crawlers, using a different rendering engine is "simpler" than having SSR.
On the other hand, puppeteer executes your application in virtually the same environment as the user's browser, without polluting your frontend architecture with SSR concepts and limitations.
Yes, you'll need to set up a bit of infra initially. Depending on the use case it may very well pay off.