How we choose

Requirements decide, not preference

The technology follows the problem, the team who will maintain it and the integrations it must live with. A studio that builds everything in one stack is telling you about itself, not about your project.

Boring where boring works

Mainstream, well-documented technology with a large hiring pool is worth a great deal in year three. Novelty is justified when it solves a problem you actually have.

Total cost of ownership, not build cost

Licences, hosting, maintenance discipline, the cost of hiring for it and the cost of leaving it. The build price is the smallest number in the decision.

You own the result

Code in your repository, standard tooling, documented build and deploy. Nothing depends on a proprietary tool of ours.

The layers a product actually runs on, and the integration spine that joins them to the systems you already have.
01

Frontend

What the user actually receives. This is where performance and accessibility are decided.

Semantic HTML and CSS

The foundation on every project. Accessibility, search comprehension and resilience all start here.

Modern JavaScript

Used deliberately and progressively. Behaviour added to a working document rather than the reason it renders.

Component frameworks

React and similar, where application state genuinely justifies them. Not used to render static marketing content.

Static site generation

For content sites where the fastest and most resilient answer is HTML on a CDN.

Trade-off: The recurring decision is whether a page needs a framework at all. Shipping one to render static content costs real INP and buys nothing.

02

Backend

Application logic, data and integration. Chosen for the team that will maintain it.

Node.js

Strong where the team is already JavaScript-fluent and where integration work dominates.

PHP

Pragmatic and well-supported, particularly in and around the CMS ecosystem.

Python

Where data processing, calculation or reporting is central to the product.

Relational databases

PostgreSQL and MySQL. Relational by default; a document store when the data is genuinely document-shaped.

Trade-off: Language choice matters far less than data modelling and hiring pool. We will pick the one your future team can staff.

03

Content management

How your team publishes without calling a developer.

WordPress

Custom themes with structured content models. High editorial volume, easy hiring, large ecosystem. Requires maintenance discipline.

Webflow

Where marketing autonomy is worth more than the platform ceiling. Presentational sites, not transactional ones.

Headless CMS

When content genuinely serves more than one destination, or teams need to release independently.

Custom content models

When the editorial workflow is specific enough that configuring a platform costs more than building it.

Trade-off: The failure mode is not the CMS, it is the build. A structured custom theme ages well; a marketplace theme with twenty-five plugins does not.

04

E-commerce

Selling, and the operations behind it. The checkout dominates this decision.

Shopify

Strong default for B2C and many B2B stores. Maintained checkout, good operational tooling. Watch platform fees and app sprawl.

WooCommerce

Where the store lives inside a content-heavy site, or data and hosting control matters. Not lower-effort, differently distributed effort.

Custom and headless commerce

When the selling model does not fit a platform: complex B2B pricing, configurable products, unusual fulfilment.

Trade-off: Hosted platforms rent you a maintained, compliant checkout. That is worth more than it looks until your pricing model genuinely will not fit inside it.

05

Infrastructure and delivery

Where it runs, how it gets there, and how you know it is healthy.

Managed hosting and cloud platforms

Chosen for the operational burden you want to carry, not for the lowest monthly figure.

CDN

Standard on anything with an audience outside one region. Frequently the largest single TTFB improvement available.

CI/CD pipelines

Automated build, test and deploy. Manual deployment is how staging and production diverge.

Monitoring and error tracking

Uptime, errors, performance and backup verification, with alerting. Problems should be found by us.

Trade-off: Under-invested infrastructure is invisible until the incident. The cost of a tested backup is trivial compared to needing an untested one.

06

Integration

Connecting what you already run so data moves without people re-typing it.

REST APIs

Documented, versioned, authenticated, with error semantics other systems can act on.

CRM and ERP integration

Field-level source of truth agreed before implementation. This is where integrations succeed or fail.

Payments

Gateway integration with multi-currency and local method support where the market needs it.

Webhooks and queues

Asynchronous processing with retries, idempotency and dead-letter handling.

Trade-off: Integrations are judged on their failure behaviour, not their happy path. Anything without retries, idempotency and alerting will lose data eventually.

07

Measurement

Knowing what actually happened.

Google Analytics 4

Configured around your business questions with a documented event taxonomy – not accepted at defaults.

Google Tag Manager

Governed: naming conventions, a documented data layer, and awareness of what each tag costs in milliseconds.

Google Search Console

Index coverage, query data and Core Web Vitals field data. The primary source of truth for search health.

Server-side and privacy-conscious analytics

Where consent rates, tracker blocking or data residency make client-side collection unreliable.

Trade-off: Every tag is third-party JavaScript on your main thread. Measurement is worth its cost when it changes a decision, and not otherwise.

Trying to choose a platform?

Tell us the requirements and constraints. We will give you a recommendation with the alternatives and what each one costs in year three.

Message us on Telegram (opens in a new tab)