Horizon Labs Logo
Web Development service

We rebuild your website in five working days. No placeholders. No invention.

R5,000 flat. Built by a six-stage team of AI staff. Signed off by the founder before anything reaches you.

Why this service exists.

A typical web agency quote in South Africa starts at around R15,000 and runs into months of back-and-forth. The brief is vague, the timeline slides, the invoice grows, and what lands at the end often looks like a template with your logo dropped on top. Most small business owners we speak to have been through this once and would rather not do it again.

Horizon's bet is different. We split a website build into six stages, staff each stage with an AI specialist, and require every stage to produce a real, named artifact before the next one starts. Every artifact has explicit acceptance criteria. Quinn enforces them at the end with a structured pass-or-fail report. Basheer, the founder, signs off before any site ever reaches a client.

The number is R5,000, flat. The window is five working days from kickoff. The output is one real site, hosted, fast, mobile-friendly, with your words and your photos on it. No tiers, no surprise invoices, no upsell ladder pretending to be a strategy.

The honesty bar is the part most agencies will not put in writing. If Reese did not see it on your existing site, nothing downstream invents it. No fake testimonials, no AI-written About page that sounds like every other small business, no Lorem ipsum hiding behind a Coming soon block at launch. Real content or a marked gap. Those are the only two options.

Meet your build team.

Seven people touch your site. Six run the stages, one heads the division. Each one has a single job they do well, and a written record of the mistakes they refuse to make.

Reese, Crawler
Reese
Crawler
Avery, Planner
Avery
Planner
Sasha, Designer
Sasha
Designer
Kai, Image Sourcer
Kai
Image Sourcer
Morgan, Builder
Morgan
Builder
Quinn, QA Tester
Quinn
QA Tester
Jordan, Head of Web Development
Jordan
Head of Web Development
The pipeline, in depth

Six stages. Six artifacts. One working website.

Every stage produces a real file with your name on it. You can read any of them, ask for changes, or hand them to someone else for a second opinion. None of them are hidden.

Reese, Crawler
Reese
Crawler
Stage 1

The Crawl

What happens

Reese opens your existing site and walks it the way a careful visitor would. She follows every internal link, opens every product page, reads every word of body copy, and notes the small things most people skip. Your logo URL, your favicon, the exact hex codes you use on buttons, the fonts you pair, the phone number in the footer, the team photos on your About page, the structure of your nav. She writes it all down verbatim in a single brand brief document, and she does not paraphrase. If a page has a stubborn JavaScript widget she could not reach, she flags the gap rather than guess at what it said.

Why it matters to you

Everything after this stage works from what Reese wrote down. If she misses your Careers page, the new site will not have a Careers page. If she misreads your brand colour as a near-miss grey, the new site will sit a shade off the rest of your printed material, and you will feel it without being able to name it. If she invented a fact you never said, that fabricated fact would ride the pipeline all the way to launch and end up on the live site under your name. The fidelity of this stage is the floor for every stage after it.

What you can see

You get the brand brief document (DESIGN-BRIEF.md). It lists your logo URL, your favicon, your palette, your typography, your contact details, your team photo URLs, and a page-by-page map of your existing site. Alongside it sits the full content extract, which is every visible word from every page, copied exactly as written. You can open both at any time. Most buyers do not, but they exist precisely so you can.

Artifact: Brand brief (DESIGN-BRIEF.md)
Avery, Planner
Avery
Planner
Stage 2

The Page Plan

What happens

Avery takes the raw crawl and turns it into a structured plan. Every page becomes a labelled block. Every section inside a page (hero, about, services, testimonials, pricing, contact) becomes its own labelled block, with the exact heading, the exact paragraph, and the exact call-to-action pasted in word for word from your old site. He is an information architect, not a copywriter. He preserves your voice rather than rewriting it. Where the crawl had a gap, he marks it clearly so it is impossible to miss. Where two pages disagree (two different phone numbers, two different addresses), he flags the conflict so a human can decide.

Why it matters to you

This is the stage that protects your voice. A small business that sounds like itself converts better than one that sounds like a template. If this stage summarised your tagline, the new site would have a slightly blander tagline. If it invented a testimonial, the new site would carry praise you never received. If it skipped your most profitable service line because it looked small in the crawl, the new site would quietly lose you that revenue. The page plan is the contract that says the new site will say what you already say, in the order you already say it.

What you can see

You get the page plan (PLAN.md). It reads like a structured outline of your whole site: every page, every section, every heading, every CTA, with your real words in place. Anything marked missing or in conflict is called out so you can correct it before design begins. If you want to add a page, change a heading, or reword a CTA, this is the cheapest moment in the project to do it.

Artifact: Page plan (PLAN.md)
Sasha, Designer
Sasha
Designer
Stage 3

The Design Spec

What happens

Sasha takes the page plan and adds the look on top of it. For every section she specifies the typography (which font, which weight, which size, which line height), the colour (exact hex codes from your brand brief, not approximations), the spacing, the motion, and the image direction. She also tags every image with its source class so the next stage knows what to fetch and from where. A team photo gets one tag, a product photo gets another, an AI-generated hero frame gets a third, a stock illustration gets a fourth. The output is a design spec that is precise enough to test against, not a mood board.

Why it matters to you

Vague design produces a generic site. If this stage says clean and modern, the build defaults to whatever the framework hands it, and you get something that looks like every other small-business site on the internet. If this stage forgets to tag an image, your founder portrait could quietly become a stock photo of a stranger in a suit. Precision here is the difference between a site that looks like your business and a site that looks like a template with your name pasted on top. Typography alone accounts for most of what people read as look and feel.

What you can see

You get the design spec (DESIGNED-PLAN.md). It is the page plan plus a full visual brief: per-section colours, fonts, spacing, motion, and image direction. If you are technical, you can read it line by line and predict what the site will look like. If you are not, you can skim the image directions to make sure the right kind of photo is going into the right place. Either way it exists, and you can ask for changes here before any pixel is committed.

Artifact: Design spec (DESIGNED-PLAN.md)
Kai, Image Sourcer
Kai
Image Sourcer
Stage 4

Image Sourcing

What happens

Kai works through every image the design spec asked for and fetches the real file. Team photos come from your existing site only, never substituted. Logos and favicons come directly from your brand assets, with Logo.dev used as a fallback when an original URL has rotted. Product photos come from your product pages where they exist. Stock illustrations come from a curated library, and AI-generated hero frames are produced fresh and then verified to be unique, large enough, and visually correct. Every file is checked for size, resolution, and uniqueness before the stage is allowed to close. If something is genuinely missing, it is recorded as missing rather than papered over.

Why it matters to you

Images are the only thing on your site that visitors actually see as pixels. A grainy hero on the first page someone lands on undermines everything else. A stranger's face on your About page where your real co-founder should be is worse than no photo at all. A site where every section quietly shows the same image (because a generator silently failed) looks broken in a way that is hard to articulate but very easy to feel. This stage is what keeps the visual layer honest, and it is enforced by automated checks, not just by trust.

What you can see

You get the image manifest (IMAGES.ts) and the public image folder. The manifest is a tidy list of every image used on the site, where it came from, and which file it points to. The folder holds the real files at the correct sizes. If you have a specific photo you want swapped in, this is the moment to send it across; the manifest is built to accept it without ripping anything else apart.

Artifact: Image manifest (IMAGES.ts)
Morgan, Builder
Morgan
Builder
Stage 5

The Build

What happens

Morgan scaffolds a Next.js application, sets up the shared header, footer, and navigation, and then orchestrates a small team of focused sub-builders to assemble each section in parallel. Each builder works from the design spec for its single section and imports its images from the manifest. Nothing is hardcoded, nothing is invented, and there is a zero-tolerance rule on placeholder copy, Lorem ipsum, and Coming soon blocks. Before the stage closes, the build is required to pass a full production compile, and every route on the site has to return a healthy response on the dev server. If any of that fails, the stage does not close.

Why it matters to you

This is where the words and pictures become a real, fast, mobile-friendly website. Sloppiness here is the kind of thing visitors notice immediately: a slow page, a broken button, a contact form that silently swallows submissions, a mobile menu that does not open. Because the build is wired to the design spec rather than improvised, the site you receive will match what was approved at Stage 3 rather than a developer's best guess at it. And because the production compile is non-negotiable, the site that hits hosting is the same site Quinn is about to test, not a slightly different one.

What you can see

You get a working development URL. The site is fully assembled, your real content is in place, your images are loaded from the manifest, and every link goes somewhere real. You can click around it on your phone and your laptop. This is the first moment the project feels like a website rather than a stack of documents, and it is the last moment before quality assurance puts it under a microscope.

Artifact: Working dev site (Next.js app)
Quinn, QA Tester
Quinn
QA Tester
Stage 6

Quality Assurance

What happens

Quinn opens the working site and tests it against the design spec, section by section, page by page. He checks desktop at a typical laptop width, tablet, and mobile. He clicks every link. He fills in the contact form and watches what happens. He scrolls slowly so any motion or reveal effects fire the way they should. He inspects alt text on images, heading hierarchy on each page, contrast ratios on text, and keyboard navigation on interactive elements. Every defect he finds is recorded with what the spec said, what he actually saw, the severity, and the specific fix he is recommending. The stage closes with a single verdict, either pass or fail.

Why it matters to you

A site that looks fine at a glance and a site that holds up under inspection are not the same site. A broken link on the services page is the kind of thing a real visitor will eventually hit, and the cost when they hit it is that they leave. A form that quietly drops submissions is worse than no form at all, because it looks like demand is missing when it is just being thrown away. Mobile bugs in particular tend to be invisible to a desktop reviewer, and they affect the majority of your visitors. This stage exists so problems get caught here, not by your customers.

What you can see

You get the QA report (QA-REPORT.md). It is a structured document with every finding written out: expected, observed, severity, fix. The verdict at the top is either pass or fail. If it is a pass, the site is ready for the founder to sign off. If it is a fail, the report becomes the surgical input for the next loop of fixes, and you can read it to see exactly what was caught and what is being addressed.

Artifact: QA report (QA-REPORT.md)
The approval gates

Two sign-offs. Sometimes three.

The first gate is Quinn's. The site does not leave Stage 6 until his QA report carries a clear pass verdict. He tests the live build against the design spec on desktop, tablet, and mobile, and he grades every section against the rubric Sasha wrote. If anything is broken, he fails it with specific, actionable defects rather than vague impressions.

The second gate is the founder's. Even after Quinn passes the build, Basheer reviews the site himself before it is sent to you. The point is not to second-guess Quinn. The point is that nothing leaves the company without a human signature, and the founder is the one on the hook for what ships under the Horizon name.

There is a third gate that only applies in one specific case. When we rebuild a prospective client's site as a sample (an outbound preview to show what we could do for you), the build pauses after Stage 5 and is shown to you for approval before Quinn even runs. Prospects never see broken samples in their inbox. The internal rule is that blank beats wrong, and a half-finished demo is worse than no demo at all.

The QA loop

What happens when QA finds defects.

When Quinn fails a build, the defect list goes straight back to Morgan with the exact section, the expected behaviour, the observed behaviour, and the suggested fix. Morgan does not rebuild the whole site. He spawns focused fix builders for the specific sections Quinn flagged, leaves the rest of the work alone, and hands the patched build back for re-testing. The loop is capped at three iterations.

If the third iteration still fails, the pipeline stops automatically rather than burning more time and budget on the same defect. Jordan, the head of the division, steps in personally to diagnose where the problem actually lives. Is the design spec ambiguous? Is an image file missing or broken? Is the build itself buggy? Is Quinn misreading something the spec already covered? Whatever the answer is, a human owns it from that point forward. A third failure never silently passes.

What you actually get

Concrete deliverables, not promises.

A real modern website

Built on Next.js, the same stack used by Nike, Notion, and TikTok. Yours, hosted by us, on a fast global network.

Mobile, tablet, and desktop

Tested at 375px, 768px, and 1440px before launch. The site that works on your laptop also works on your customer's phone.

Search engine foundations

Sitemap, robots file, structured data, and proper heading structure. Google can read your site the way you want it read.

Fast load times

Images are optimised, fonts are loaded efficiently, and pages are served from an edge network close to your visitors.

Your real words

Every heading, every paragraph, every CTA comes from your existing site. No invented testimonials, no AI-written about us.

Your real photos

Your team, your products, your logo. Stock and AI only fill the places where you genuinely have no asset.

The full file set

Brand brief, page plan, design spec, image manifest, QA report. If you ever want to audit how your site was built, every artifact is there.

Five working days

From kickoff to handoff. A clear schedule, real artifacts at each step, no vanishing for weeks at a time.

One price. No tiers.

R5,000 for the foundation. Add-ons are quoted separately and start lower. Everything is paid up front in ZAR, with no monthly retainer attached to the website itself.

Premium Foundation
R5,000/ flat. Once off.
  • Custom design and build, not a template
  • Mobile, tablet, and desktop tested
  • Search engine foundations included
  • Fast hosting on a global edge network
  • Lead forms wired to your inbox or WhatsApp
  • All your real content and photos
  • Five working days from kickoff to handoff

Common questions.

How long until my site is live?

Five working days from kickoff. Each of the six stages has a fixed slot in that window, and you can see progress at any point because every stage produces a real document or a working URL.

What if I don't like the design?

The cheapest moment to change direction is at Stage 3, when the design spec is written but nothing has been built yet. You can ask for changes at any later stage too, but earlier is faster and easier on everyone.

Will my content sound like me, or like an AI wrote it?

It sounds like you. Stage 2 (the page plan) lifts your existing words verbatim from your current site. We do not paraphrase, summarise, or rewrite your voice. If a section is genuinely missing copy, we flag it for you to write rather than fill it in with invented text.

Do you host it for me, or do I host it?

We host it for you on a fast global edge network at no extra cost for the foundation tier. If you would rather own the hosting account in your name, we can hand the codebase over for you to deploy yourself.

Can I see what's happening at each stage?

Yes. Every stage produces a real artifact you can review: the brand brief, the page plan, the design spec, the image manifest, the working dev URL, and the QA report. Most clients glance at them. A few read every line. Both are fine.

What happens if the build fails three times?

The pipeline stops automatically after three QA failures rather than looping forever. Jordan (the head of the division) personally diagnoses what is going on: is the spec ambiguous, is an asset missing, is there a real bug, or is the test misreading the design? Nothing silently slips through.

Is my data safe with you?

We only use what you give us or what is already public on your existing site. Brand assets, contact details, and team photos stay on infrastructure we control. We do not sell, share, or train any third-party model on your business information.

What if I want changes after launch?

Small changes after launch are quoted as add-ons and start lower than the R5,000 foundation. Larger restructures (new pages, new sections, new product lines) get a separate scope so you always know what you are paying for before you commit.

Do I own the website when it's done?

Yes. The code, the design, the copy, and the images are yours. We do not lock you into our hosting, and we do not hold the project hostage with proprietary tooling.

What if my business doesn't have a website yet?

We can still build for you. Instead of crawling an existing site at Stage 1, we run a structured intake to capture your services, your team, your products, and your voice. The rest of the pipeline runs the same way from Stage 2 onwards.

Want to see what we'd build for you?

Send us your existing site and we will run the first stage on our own time, then show you a free preview of what the rebuild would look like. No card, no commitment, no sales call you did not ask for.

R5,000 flat|Five working days|Founder sign-off before launch