TBH most of the cons stated in this article are just because of bad programming, not because it's a SPA<p>> broken “back” button (sometimes it works properly, but in general people don’t trust it)<p>If your UX is good, the user will notice data is refreshed when going back. All current top tier SPA Frameworks have support for correct HTML5 routing.<p>> broken “open in a new tab” behaviour – people like to handle links in onClick handler, and browser can’t recognize it as a link (even if the majority of the links are valid, sooner or later you’ll encounter a non-link “link”)<p>Again, most up-to-date frameworks have a fallback by adding a normal href so you can still CTRL-Click it.<p>> sometimes broken “refresh” button – after refreshing you end up in a different UI (usually slightly, but still different)<p>I don't see a real disadvantage here, since you can simply store your state by manipulating the URL or even localstorage. So you even have the possibility to not store your state...But again, application design, not SPA<p>I do agree with TTI (at least on the first load) and bad performance on low end devices.