Back to blog
Guides6 min read

HTML Wireframe: Plan Page Structure Before You Code

An HTML wireframe sketches a page as headings, text, buttons, inputs and boxes, so you settle structure cheaply and write the markup only once.

What is an HTML wireframe?

An HTML wireframe is a low-fidelity layout of a page drawn in the vocabulary of HTML: headings, text blocks, buttons, inputs, images, boxes, links and dividers. It settles what a page contains and in what order, before any markup is written.

The phrase has carried two meanings for a decade, and search results still mix them. One is the sense above, sketching a page as HTML-shaped parts. The other is the older practice of building wireframes as real HTML and CSS files. Both are worth understanding, because the second one explains why the first exists.

Wireframes built as real HTML and CSS

Around the mid-2010s a strong argument circulated in front-end circles, associated with writers like Brad Frost and Eric Meyer, that design artifacts should live in the browser. A static picture of a page cannot resize, cannot be tabbed through, and cannot be clicked. A page built in markup can do all three.

That argument was and is correct about fidelity. Its cost is timing. The moment your wireframe is a real document, you are paying markup costs during the phase where you are still deciding what the page is. You choose class names for a section you may delete. You debug a flex container to answer a question about content order. Every restructure is a refactor.

For a design system or a component library, that cost is worth paying, because the artifact becomes the thing you ship. For settling the structure of a single page, it usually is not. The decisions at that stage are cheap ones, and coding them makes them expensive.

Wireframing with HTML's vocabulary instead

The middle path is to keep HTML's vocabulary and drop HTML's syntax. You still think in headings, paragraphs, form controls, media and containers, because those are the parts the page will eventually be made of. You just place them on a canvas instead of typing them into a file.

This matters more than it sounds. A wireframe drawn in generic grey rectangles tells you nothing about semantics. A wireframe drawn as an h1 followed by a paragraph, an input, and a button already encodes heading hierarchy, form structure and the tab order. When you do write markup, the translation is close to mechanical.

The rule of thumb: wireframe in the target's vocabulary, decide the structure, then write the markup once. The same principle scales past the single page — for how the wider visual-tooling landscape handles it, see the pillar on drag-and-drop app builders; for the route-tree level, sketching a Next.js route tree.

How to make a wireframe

Here is a practical sequence for a website wireframe. It works whether you are sketching on paper, in a tool, or on a canvas.

  • Start at one breakpoint per screen. Draw the same page at phone, tablet and desktop widths as separate boards. A layout that only exists at 1280px is a layout you have not finished designing.
  • Place the element hierarchy top down. Heading, supporting text, primary action, then the secondary content. If you cannot decide which action is primary, the page is not ready to build.
  • Use real content lengths, not lorem placeholders of convenient size. A heading that is nine words in production and three words in the wireframe will break the layout you just approved.
  • Extract repeated pieces as shared components. A header that appears on six screens should be one thing you edit once, not six drawings that quietly drift apart.
  • Mark what is interactive. Buttons, links and inputs should be visually distinct from static text, because that distinction is the whole point of a low-fidelity wireframe.
  • Stop when the next question is a visual one. Once you are asking about colour, shadow or typeface, the wireframe is done and you have moved to mockup territory.

That last point is the honest test for "done". A wireframe answers what goes here and in what order. The moment it starts answering what does this look like, you have crossed into a different artifact, which we untangle in wireframe vs mockup vs prototype.

HTML wireframe examples and templates

You rarely need a blank canvas. Most pages fall into a handful of shapes, and an html wireframe template is really just a known good starting arrangement. Three cover most of what people build.

Landing page. A slim header with a wordmark and one call to action. Below it, a heading, one paragraph of positioning, and a primary button. Then three to four feature blocks, each an image or box with a short heading and two lines of text. A closing action, then a footer of links. The whole page is one column at phone width and two or three at desktop.

Dashboard. A persistent left rail of navigation links, collapsing to a top bar on phone. A main region with a page heading and a row of summary boxes, then one dominant surface such as a table or chart. Actions live top-right of the region they act on, not in the global header.

Form page. A heading, one line of explanation, then labelled inputs stacked in a single column. Group related fields with dividers rather than boxes. One primary submit button at the end, with the secondary action rendered as a link so it cannot be misclicked. Never split a form into two columns at phone width.

These are structural defaults, not rules. The value of html wireframe examples is that they let you start by editing rather than inventing.

Wireframe tools and a free HTML wireframe designer

General-purpose wireframe tools are plentiful, and most are fine. The question worth asking is whether the tool speaks the language of the thing you are going to build.

Nodlume's wireframe designer is free, needs no login, and runs entirely in the browser, saving to localStorage. Its palette is HTML-shaped on purpose: heading, text, button, input, image, box, link, divider. Phone (390×844), tablet (768×1024) and desktop (1280×800) screens sit on one canvas, so you compare breakpoints instead of switching between them.

It also has Figma-style shared components. A master frame lives on the canvas, and every placed instance renders that master live, so editing the master updates each instance. That is the "extract repeated pieces" step above, made into a mechanism.

Two deliberate limits are worth stating plainly. It exports the board as plain JSON, and it generates no code at all. A wireframe that emits markup invites you to keep the generated markup, which is exactly the trap the older HTML-wireframe practice fell into. Structure first, code once. When you are ready to lay out routes rather than pages, structure painter is the sibling tool, and the rest live under tools.

Summary

  • An HTML wireframe means either sketching in HTML's vocabulary or literally building wireframes in markup. The first is cheaper for deciding structure.
  • Building in real HTML gives true fidelity but makes every restructure a refactor, which is the wrong trade during the deciding phase.
  • Draw each screen at phone, tablet and desktop widths, order elements by hierarchy, and pull repeated pieces into shared components.
  • A wireframe is done when the remaining questions are visual.
  • Templates for landing, dashboard and form pages remove most of the blank-canvas problem.

Frequently asked questions

What is an HTML wireframe?

An HTML wireframe is a low-fidelity plan of a page expressed as HTML's building blocks: headings, text, buttons, inputs, images and containers. It fixes content and order without committing to visual design. Some people use the term for wireframes actually coded in HTML and CSS.

How do you make a wireframe for a website?

Draw the page at each breakpoint you support, place elements in hierarchy order starting with the heading and primary action, use realistic content lengths, and factor repeated regions into shared components. Stop once the open questions are about appearance rather than structure.

Should you build wireframes in HTML and CSS?

Only when the artifact will survive as code, such as a component library or a design system reference. For settling the layout of a single page, coding the wireframe front-loads markup costs onto decisions that are still changing, and every revision becomes a refactor.

What is a low-fidelity wireframe?

A low-fidelity wireframe deliberately omits colour, typography, imagery and polish so the conversation stays on structure. Grey boxes and plain labels are a feature, because they stop reviewers from critiquing a shade of blue while the content order is still wrong.

What wireframe tools should I use?

Anything that lets you place blocks, compare breakpoints and reuse repeated pieces will do the job, from paper to a browser canvas. Prefer a tool whose vocabulary matches your target medium. For the web, that means HTML-shaped elements rather than abstract shapes, which is the approach behind Nodlume's UI builder thinking.

Visual app design

Continue this learning path

Wireframes, mockups, UI builders, and the drag-and-drop tooling landscape — deciding structure visually, then handing engineers something real.

Open the Wireframe Designer

Design your application

Take the layout into a full product designer where routes, data, themes, and access rules ground generated Next.js code.

Open projects

We'd like to use Google cookies to understand how Nodlume is used and to measure our advertising. Nothing loads until you choose, and declining does not affect anything in the app.