What is a static website?

17 December 2019 | edited on 20 December 2019

Beyond static

Static websites are files which are served from a server or a content delivery network. Static websites are pre-built as static files and served as they are at the time the static files were built. Static websites do not render dynamically but this doesn't mean that they can't perform any dynamic functionalities.

In this context static means that every user gets the same files from web servers or CDNs in contrast to dynamic websites where the actual served files may vary on multiple different factors and serve different files for different users. Dynamic content on static websites is handled on the client side mostly by javascript and third party service integrations via APIs. All users are served the same files (except in cases where A/B forwarding or other load balancing is done). Different content can still be shown since we can do computing operations on the client side with javascript.

Static websites are pre-built files which are served as they are when clients request them.

Why static?

One could argue that serving static files is stupid since we can harness the full power of web servers to render awesome websites with rich dynamic content. It might have been the case 10 years ago. Nowadays as mobile devices and computers in general are becoming more powerful we can do the same dynamic operations on the client side with scripting. Most functionalities can also be outsourced and abstracted to third party services via APIs and other integrations.


The process of requesting static website assets on a JAMstack architecture:

  • Client makes a request to a URI on a server

  • Content delivery network returns a response with the static file

  • The Client browser usually executes script on the file and renders the html and css

static website cover

Dynamically rendered websites do things very different:

  • Client makes a request to a URI on a server

  • Server starts a process for the client to handle the request

  • The server starts a complicated rendering loop to build the request html for the client

  • The rendering process consists of multiple different events and hooks that are triggered by different plugins and dependencies (sometimes not even developers have control over this)

  • Third party plugins and their custom functionalities during the html rendering on the server side usually slow down the rendering process

  • Once all processing by all plugins and dependencies has been done the final requested file is returned to the client

dynamic website image

Now which one of these seems like a better option to serve files? While dynamic rendering has its purposes, it is not a modern way to develop websites. Same functionalities that were only possible with dynamic rendering 10-15 years ago are now possible to do with static sites. This is due to advancements in computing power, browser script runtime engines and general advancements in javascript itself.

Static websites are a modern way to develop websites.

Benefits of static sites

Static file serving can be scaled very easily which is essential for any growing business. All we have to do is serve files from a server which can be done by a push of a button. Scaling can be done infinitely since we're not upping any processing power but only volume.

Static sites are also really secure and almost impossible to hack. You can't hack static files. And also, they're really fast. Like ridiculously fast.


The benefits of a static website include but are not limited to:

  • Easy and effective to scale

  • Load times are fast

  • Secure

  • Cost effective to host

  • You don't have to worry about large traffic spikes crashing your servers

  • You can use whatever technologies you like to generate static files (even just plain notepad and HTML!)

  • Static websites are efficient to maintain and update

These are just few of the examples why static sites are the modern way to develop the web.

Static websites are efficient to develop thanks to modern static site generators like Gatsby. This can really save companies a lot of money in the developing costs for their web services.

Static vs. Dynamic website

Here you can see the TTFB (Time To First Byte) and the full download of HTML for a fairly optimized dynamically rendered Wordpress site vs. a static Ikius website.

Static Ikius website:

ikius test my site score

An unnamed dynamically rendered and optimized Wordpress site

wordpress test my site score

As you can see, our static website hosted on the Netlify Edge CDN is the clear victor. We can achieve 10 times lower Time To First Byte and approximately 6 times faster Full Download of HTML with the Ikius site! Not bad!


TTFB definition

Time it takes for the user’s browser to begin receiving your website. Affects your page load speed significantly, which affects google search ranking, bounce rates and conversions. - testmysite.io

Full download of HTML definition

Time it takes the user’s browser to download the full HTML page. Additional components, javascript and events won’t load before this happens. Affects your page load speed significantly, which affects google search ranking, bounce rates and conversions. - testmysite.io

Conclusion

Web began as static files and now they're coming back stronger than ever. Beefed up with modern web technologies like React and Gatsby, static site generators truly are like the early days of web except with a lot of javascript and steroids.

More and more enterprises and large companies are building their websites with the JAMstack and making their websites and eCommerce platforms static. If you have a business with a large amount of concurrent web traffic you should always consider making your web services static to ensure the maximum speed, scalability, security and efficiency.

An article by Max Ikäheimo
Our servicesMore posts
Share this article

Learn more about Ikius.

Our services