&gt; <i>It&#x27;s easy to forget that html isn&#x27;t the end product, the end result is lit pixels on some screen (usually). If we send json then that needs to be converted to html and that html needs to be layout and rendered. If we send html we just skip the first step. Displaying a web page isn&#x27;t &quot;free&quot; for the client just because it&#x27;s html.</i><p>JSON-&gt;HTML rendering may be only one step, but by not skipping it, we&#x27;re making hundred thousands computers redo the computation that could be done <i>once</i> on a server. This has some electricity cost aggregated over all users, which we externalize to society because of a fad. You can&#x27;t really skip the HTML-&gt;pixels step because of data size issues, but there&#x27;s little excuse for client-side rendering of static content.