Almost all projects I see that use Next.js or React or Vue or any other heavy frontend framework/library would be better off just using a library to template things on the backend (For example Jinja). Sometimes a bit of client side rendering via EJS also makes sense.
Do you feel this way about dashboard apps? The OP is about a dashboard app, and I think they are one example where the benefits of a SPA framework really do make sense. Curious if these fit into the "almost all" criteria you use.
I think the main thing is that the downsides of SPA frameworks are significantly mitigated in a dashboard app.
Typically dashboards will be accessed on a desktop in an office setting with good internet, so initial load and asset size isn't a huge issue. Then you get benefits like client side routing which feels snappy, and live updating widgets is pretty simple. Of course it's a matter of opinion though.
I doubt that "client side routing" makes a site more snappy.
I think what you mean is that elements shared across pages (the header, the navigation bar etc) do not have to be sent again.
But those are very small anyhow. And you could bring the size down to zero by making them web components. Web components are cached along with the JS that defines them.
Using server-side templating is another layer of complexity on top of your stack, that just glues together your output. These template languages are not easy to learn. Custom code for loops, escaping, template inheritance etc. Sometimes these are also hard to debug. The documentation of Jinja is huge.
Things get worse when you bring Javascript into the mix. You need to create Javascript code with your template engine without any Javascript toolchain.
With Full-Stack React you will use JSX to directly render HTML. Logic is done with Javascript, so you don't need to learn an additional language. There is also no mapping to Javascript and you can use the standard toolchain (for debugging).
Why use a framework at all?