HTMLpad

SEO for a Static Website: What to Set by Hand

By · · 4 min read

A printed page on a desk with its headline underlined in pencil and a magnifying glass resting on the margin

SEO for a static website works like SEO for any site, except that nothing is automatic. You set each page's title, meta description, headings, links and image alt text in the HTML yourself, add a sitemap and robots.txt, and submit the site to Google Search Console. Static pages are fast and easy to crawl, which helps.

On WordPress, an SEO plugin fills in titles, writes the sitemap and adds structured data. On a static site, those jobs are yours. That sounds like extra work, and it is, but it is a short list, and once each page has the basics right, a static site has some natural advantages: it is fast, clean and easy for search engines and AI assistants to read.

Start with the page itself

Search engines rank pages, not sites. Each HTML page needs a few things in its <head> and body.

A unique title. The text in the browser tab and usually the blue link in search results. Put the main topic first and keep it under about 60 characters so it is not cut off.

<title>Handmade Oak Tables | Smith Workshop</title>

A meta description. The summary that often appears under the link. Around 150 to 160 characters, written for a person deciding whether to click.

<meta name="description" content="Solid oak dining tables made to order in our Vermont workshop. See finishes, sizes and delivery times.">

One clear H1, matching what the page is about, and H2s for sections. Headings tell search engines how the content is organised.

Language and encoding. <html lang="en"> and <meta charset="utf-8">, so text is read correctly.

A viewport tag, so the page works on phones, which Google uses first when it evaluates a page:

<meta name="viewport" content="width=device-width, initial-scale=1">

Descriptive links. "See our delivery times" tells a search engine more than "click here". Link related pages to each other; internal links are how search engines discover and understand your pages.

Alt text on images. Describe each meaningful image in its alt attribute. It helps people using screen readers, and it tells search engines what the image shows.

Clean URLs. /oak-tables/ reads better than /page2.html?id=7. On a static host, a folder with an index.html inside gives you the clean version.

Canonical tag. If the same page is reachable at two addresses, tell search engines which one is the real one:

<link rel="canonical" href="https://example.com/oak-tables/">

Sitemap and robots.txt

A sitemap is a file listing your pages, so search engines find them all. For a small static site you can write it by hand:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://example.com/</loc></url>
  <url><loc>https://example.com/oak-tables/</loc></url>
</urlset>

Save it as sitemap.xml at the root of the site. Google's guide to building and submitting a sitemap explains the format and the options.

Then add a robots.txt that points to it:

User-agent: *
Sitemap: https://example.com/sitemap.xml

Structured data

Structured data describes your content in a format machines read directly: this is an article, this is its author, this is a product with this price. It is written as JSON-LD in a script tag. A simple article might use:

<script type="application/ld+json">
{"@context":"https://schema.org","@type":"Article","headline":"How we make our oak tables","author":{"@type":"Person","name":"Jane Smith"},"datePublished":"2026-11-04"}
</script>

It does not guarantee anything in search results, but it removes guesswork, both for search engines and for AI assistants that pull answers from pages.

Tell Google the site exists

  1. Add the site to Google Search Console and verify that you own it, usually with a DNS record or an HTML file.
  2. Submit your sitemap there.
  3. Use the URL inspection tool to check that important pages can be indexed.

Google publishes a short search visibility checklist that covers these first steps.

Where static sites have an edge

Speed. Fast pages are better for visitors, and static pages are fast by default.

Readable HTML. The content is in the HTML itself, not assembled by JavaScript after the page loads, so every crawler can read it without extra work.

Fewer duplicates. No tag pages, author archives or parameter URLs generated automatically, which are a common source of duplicate content on CMS sites.

Where they fall behind

Every step above is manual, for every page. On a five-page site that is an afternoon. On a site that publishes every week, it becomes a chore that a CMS with an SEO plugin does for you. That is one of the signs covered in when a single HTML page isn't enough.

A note for pages shared as quick links: HTMLpad pads are deliberately not indexed by search engines, because they are meant for sharing with people who have the link. If you want a page to rank, host it on your own domain and apply the steps above. For the basics of the format itself, see what is a static website.

Frequently asked questions

Can a plain HTML website rank on Google?

Yes. Google ranks pages by their content and signals, not by how they were built. A well-written static page with a good title, description, headings and links can rank as well as a page from any CMS.

Do I need a sitemap for a small static site?

It is not mandatory for a handful of well-linked pages, but it is easy to add and helps search engines find new pages quickly. For anything beyond a few pages, add one.

How do I add meta tags to an HTML page?

Open the HTML file in an editor and add the tags inside the <head> section, before </head>: the title, the meta description, the viewport and, if needed, the canonical link.

Are static websites better for SEO than WordPress?

Neither is better in itself. Static sites are fast and clean by default; WordPress automates titles, sitemaps and structured data. Good content and the basics done right matter more than the platform.

More in Static Sites