Why I chose a static site generator over WordPress

I began thinking about this website as a quiet room rather than a small business. It needs to hold writing, selected work and practical notes about design, but it does not need accounts, payments, member areas or promotional material. That distinction shaped every technical decision. A large content management system can run a site like this, yet much of its machinery would remain idle between visits.

I chose a static site generator because it matched the site’s actual rhythm. Pages are written as text, converted into finished HTML at build time, and served without assembling a page through a database for each request. The result gives me a durable foundation and freedom over typography, spacing and imagery. It also leaves plain files that are easy to move, inspect and keep for years, which matters for a personal domain intended to grow slowly.

A publishing model that fits the site

WordPress has real strengths for Australian small businesses that rely on familiar tools for service pages, bookings, catalogues or membership. It is common in the local market, and many web designers can extend it without learning a new publishing stack. A restaurant in Brisbane, a studio in Melbourne or a tradesperson in regional New South Wales can find plugins for forms, payments and scheduling. That maturity is difficult to dismiss.

My site asks for much less. Content changes in deliberate batches, and each page has one job. With Markdown files, templates and a build command, I can revise an essay or reorganise a project without opening an administration screen. The public layer stays straightforward: visitors receive a document, a stylesheet and optional JavaScript, while the editorial source remains separate from the published site.

That does not make WordPress wrong in general. If this project required user logins, live inventory, calculated shipping, gated downloads or several people publishing independently each day, WordPress flexibility would probably outweigh its overhead. The useful comparison is between capabilities and requirements. I wanted a publishing system that could disappear into the background, leaving attention on the ideas and visual restraint.

Speed across Australian connections

Static delivery has a practical advantage in Australia, where many households connect over the NBN and most people use a 5G phone. A commuter reading on a train from Sydney’s CBD, a tram passenger in Melbourne or someone browsing at lunch in Brisbane may meet the page before any download becomes a burden. A pre-rendered page can arrive quickly from a nearby content delivery network (CDN) edge, while assets remain cached across visits. The difference is easy to feel when a site responds immediately instead of making a visitor wait for a theme, database query and plugin stack.

Regional connections deserve equal care. Some addresses use fixed wireless, while others depend on satellite or an inconsistent fixed-line service. No site can make poor connectivity fast, but a compact document, compressed images and restrained JavaScript reduce the data required. Static pages suit readers in regional and remote communities because the first response can be useful before every enhancement loads. I also avoid shipping an application framework merely to display a paragraph.

Speed is not a magical property of static files. An oversized photograph, poor font choice or unnecessary animation can ruin a quick build, and a cheap host can still create delays. The advantage is control: the generator produces predictable output, and each performance decision is visible in source code and build reports. That predictability is more valuable here than the ability to install another plugin and hope it does not add weight.

A smaller security surface

A dynamic WordPress installation adds a moving attack surface. The core, theme and plugins need regular updates; administrators need protected accounts; and mistakes such as stale PHP or poorly maintained extensions can expose a site. A generated site removes the database and login layer from the public experience. Publishing produces files for a host or deployment service, with no PHP runtime exposed to a visitor request.

Security is a common reason Australian agencies recommend managed WordPress plans to clients. That is sensible when a business needs complex integrations and a team responsible for upkeep. My needs and economics differ: I would rather spend time on content, accessibility and the few scripts the site uses than maintain extensions for features I do not ship. Simplicity reduces exposure, but it does not replace sensible hosting, strong credentials, backups or careful dependency updates.

The generator also changes what ownership means. My writing can live in plain-text files under version control, with revision history and a straightforward export. If a hosting provider changes its pricing or closes a product, the source does not vanish with it. The published output is less important than that portable record because it can be rebuilt. A WordPress database can offer similar resilience when exported correctly, yet its default workflow often makes a service provider part of the archive.

Restraint in design and photography

The strongest reason to choose a static generator was design freedom without the visual noise of a general-purpose theme system. I can set a deliberate type scale, use whitespace to divide ideas, limit colour to functional accents and let photographs provide texture. That discipline is visible at the project’s home, where the page should feel calm before it says anything. Because the template is mine, design begins with the content rather than the options offered by a plugin.

Photography makes that freedom a performance test. Original images from a weekend walk or portrait session in Melbourne can carry more weight than the rest of a page. A static workflow can resize images at build time, output modern formats, create responsive versions and stop a phone downloading a desktop-sized file. Visual choices also become easier to audit: every crop, compression level and lazy-loading rule belongs to a deliberate file rather than a settings panel no one checks.

The same restraint supports accessibility. Australian Government website guidance points to the Web Content Accessibility Guidelines, while the Disability Discrimination Act 1992 makes accessibility relevant to Australian services. Semantic headings, visible keyboard focus, useful alternative text and strong colour contrast can be built into the template and checked during the build. WordPress can do this too, but a smaller front end leaves fewer opportunities for an editor to apply an unsuitable heading level or embed an unreviewed third-party component.

Privacy and Australian legal duties

A site that sets no cookies, runs no tracking script and has no member database presents less personal information simply by existing. The Privacy Act 1988 and Australian Privacy Principles set expectations whenever a covered organisation handles personal information. Privacy obligations do not disappear because the site is static. A contact form, analytics service or embedded video can still transmit data, and the organisation or individual operating it remains responsible for handling that information lawfully.

Fewer moving parts make those choices easier to see. Australian retailers and service businesses often add analytics, advertising pixels and embedded chat tools to understand campaigns, so a WordPress site may accumulate trackers over time. I prefer to begin with no analytics and add only a service that produces information worth the trade-off. If a future page needs a form, it can post to a chosen endpoint without sending every reader through an advertising script first.

Static publishing also leaves room for plain, consumer-friendly pages. The Spam Act 2003 still governs commercial electronic messages in Australia, and the Australian Consumer Law requires accurate representations and clear terms when a business makes a claim or sells something. A small HTML page can communicate those details well if someone reviews them when prices or policies change. The generator is not a legal shield; it makes public wording easier to keep visible, versioned and accountable.

Maintenance, learning and long-term ownership

Maintenance is the part most likely to change another person’s mind. My publishing loop is simple: write in Markdown, preview the build, commit the change and deploy the generated files. Learning the system took effort, but the effort went into transferable skills. A useful parallel is how to design your own learning curriculum tips: choose a sequence, practise in small stages and keep the workload realistic instead of collecting disconnected resources. The same principle keeps the site sustainable, with updates based on an editorial rhythm rather than a desire to justify the platform.

Hosting can be inexpensive because a CDN distributes ordinary static files and the build runs only when content changes. The site is not free to maintain; time counts, and a designer needing sophisticated forms or rapid editing may prefer a paid CMS plan. The comparison I found persuasive was total responsibility. WordPress asks for plugin, theme, backup and security attention. The static approach asks for disciplined content, a reliable deployment process and occasional dependency checks. Both are legitimate, but one fits this site’s limited feature set.

Future growth does not require reversing the decision. Contact forms, search indexes, analytics and even commerce can sit beside generated pages if each addition earns its place. If the site later needs a continuously changing catalogue, a members-only area or frequent non-technical publishing, that would be evidence for reconsidering WordPress. Until then, the static generator gives me exactly what I wanted: a fast, private and maintainable place to publish, with no unnecessary machinery in the way.