billahdotdev
Digitalizen

The agency site that had to pass its own exam

Rebuilding a marketing agency's site as the first piece of evidence in its own sales pitch.

An agency that sells fast websites and honest tracking cannot ship a slow website with broken tracking. The site is not marketing for the service. It is the audition.

Digitalizen had grown the way agency sites usually grow. A single page application, a framework, a build pipeline, a service worker quietly serving last month to returning visitors. It worked. It also could not be quoted by any AI assistant, because none of them execute JavaScript, and with JavaScript switched off there was nothing on the page at all.

The decision

Everything got rewritten as static HTML, generated from content files, served from the edge. No framework. No client side routing. No animation library. The design lives in one token file that all the sibling sites read from, so the agency, the personal site and the product pages cannot drift apart.

The unglamorous rule was this: every sentence on the site lives in a data file, never in a template. Copy is a thing the business edits. Templates are a thing the developer edits. Once those two are tangled, nobody can change a price without a deployment and a small prayer.

The measurement layer

One pixel, one analytics property, one ads account, shared across every host. Each page view leaves the browser and the server carrying a matched identifier, so the platform sees one event and not two. The old site had been firing nine content events per page, which is a good way to teach an algorithm nothing at all.

The conversion identifier is minted at the edge and handed to the browser, which removes a race condition that no dashboard would ever have shown as a problem. It simply produced slightly worse matching, forever, for no visible reason.

What it costs to look this plain

The pages are deliberately quiet. Ruled lines, one accent, no gradients, no shadows. That is not minimalism for its own sake. It is what is left when every element has to justify its weight in kilobytes, and when the same page has to be legible to a customer on a weak connection and to a crawler that reads only text.

The site now loads before a visitor decides to leave, reads correctly with scripts disabled, and reports numbers that survive being checked. That is the entire pitch, delivered before anyone reads a word of it.

Work