MPA vs SPA — Acronym Fatigue

Acromyme Fatigue?

Please do not laugh — but as a newbie, I thought SPA meant a “Single Page” like those endless scroll WordPress sites. You know, the kind where you get lost in the “Dead Sea Rollers” of content. Turns out, SPA is something entirely different — and far more powerful. You load one main page once, and then inject content dynamically. It is not about scrolling — it is about staying DRY (Don't Repeat Yourself). By contrast, MPA loads a new page every time, complete with headers, CSS, and JavaScript. It is simpler, but less efficient.

MPA - The short journey

Multi-Page Applications have their strengths: Easier to build and maintain. SEO-friendly — great for discoverability and marketing. Ideal for “normal sites” with a selling focus.

This site is built as an MPA because I want each page to be canonical and searchable. Go's built-in HTML templates make this easy — reusable components like navigation, head sections etc, work like React components, but rendered server-side (SSR) without JavaScript.

SPA — The Longer, Exciting Journey

Once I understood SPA, I saw its power: Smaller, faster apps. Load the main page once, then inject content using JavaScript. SSR with Go + dynamic updates via JS = a powerful combo. SPA is less SEO-friendly, so it is better suited for tools and apps where SEO isn't the priority.

Hybrid - MPA + SPA.

When a site has both public and private areas (like a login), you can mix both. MPA for the public-facing site. SPA for the private app experience.

Lesson learned: “Single Page” can mean two very different things.

More about MPA... More about SPA...