Your application must already expose an API for other (internal or public) clients
If you’re already supporting a web API for use by other clients, it may require less effort to create a SPA implementation that leverages these APIs rather than reproducing the logic in server-side form. SPAs make extensive use of web APIs to query and update data as users interact with the application.
The following decision table summarizes some of the basic factors to consider when choosing between a traditional web application and a SPA.