Learn HTML by writing it.

A free HTML course for people who have never written code before. Each lesson explains one thing. Then you write it yourself, and the page tells you whether you got it right.

Start learningOpen the playground

61 lessons · 10 modules · free, no sign-up

How every lesson works

1

Read one idea

A short explanation of a single concept, with a runnable example.

2

Write real code

Type into a syntax-highlighted editor or edit the page visually. The preview updates as you type.

3

Get checked

The checker tests your page and tells you exactly what is missing. Three levels of hints if you are stuck.

4

Build projects

Every module ends with a project. The course ends with four complete pages you can download.

What you get on every lesson page

Write code, or edit the page itself

  • The code editor colours your tags, closes them for you and keeps the indentation tidy
  • Switch on Visual edit and type straight onto the page; the code rewrites itself to match
  • A problem list catches unclosed tags, missing alt text and repeated ids while you type
  • Check the page at phone width, or download it as a real .html file

See what the browser sees

  • The DOM tree shows how the browser read your code, and lights up each element as you hover it
  • The Outline tab lists what a screen reader announces, from headings to form labels
  • Put the cursor on any tag to get a one-line explanation
  • Quizzes, spot-the-bug puzzles and a drag-and-drop exercise break up the reading

What is HTML?

HTML (HyperText Markup Language) (opens in a new tab) is the language every web page is written in. It labels content so the browser knows what each part is: a heading here, a paragraph there, a link, an image. CSS decides how those parts look, and JavaScript adds behavior. Both sit on top of HTML, so it is the first thing web developers learn.

You don't need math or programming logic to start. HTML is a markup language: you put tags such as <h1> and <p> around your content, open the file in a browser and look at the result. A few seconds pass between writing a line and seeing it on screen, which makes HTML a friendly first language. If you like to start visually, a WYSIWYG editor such as html6.com (opens in a new tab) shows the HTML behind formatted text. The What Is HTML guide covers the basics in more depth.

Why learn HTML?

With HTML you can build and publish your own pages, edit a blog or online shop template without fear of breaking it, write better emails and documentation, and work out what went wrong when a page breaks. Front-end development, web design and accessibility work all start here. Well-written HTML loads faster, works better with a screen reader and is easier for search engines to read. Google's SEO starter guide (opens in a new tab) makes the same point. You will keep using it long after you learn CSS and JavaScript.

Who this course is for

We wrote the course for people with no coding experience at all: students, career changers, designers, marketers, bloggers, or anyone who has wondered how a web page is put together. Every new term is defined before it is used, and the glossary explains 46 of them in plain words. Already know some HTML? Skip to the modules you need, such as forms, semantic HTML or accessibility, or test yourself with the challenges.

How the course works

Each lesson teaches one idea. You read a short explanation, run the example and then complete a task in the editor. The checker tests your code against a set of rules and points to the first thing that is missing. Stuck? Three hints go from a gentle nudge to almost the full answer. A short quiz at the end checks that the idea stuck. Every module ends with a project that pulls its lessons together, and in the last module you build four complete pages.

Outside the lessons there is a playground for free experimenting, a reference of 115 HTML elements with examples, a printable cheat sheet and longer guides. Finish the course and you can print a certificate of completion.

How long does it take to learn HTML?

About 10 to 11 hours of focused work, counting lessons and projects. At 30 minutes a day that is roughly three weeks. Most lessons take 5 to 10 minutes, so short sessions work fine, and your browser remembers exactly where you stopped. By the end you will be able to write complete, valid and accessible web pages on your own.

Illustration of a student at a laptop while floating browser windows and code brackets snap together into a web page

Guides

Longer reads for when a lesson leaves you with questions.

What is HTML, and what does a browser do with it?

HTML in plain English: what the letters stand for, how a browser turns tags into a page, what elements and attributes are, and a first page you can write in ten minutes.

9 min read

HTML vs CSS vs JavaScript, and what each one does

HTML vs CSS vs JavaScript with one quiz card built three times, a layer at a time, so you can see what each language adds. Plus a comparison table and which to learn first.

8 min read

How to make a website with HTML, from empty folder to live site

Build a two-page bakery website by hand: pick an editor, set up a folder, write index.html, add photos, links and one CSS file, test it on a phone and publish it for free.

10 min read

How long does it take to learn HTML? About six weeks, and here is the plan

How long does it take to learn HTML? One hour to a first page, two weeks for the basics, six weeks to be comfortable. A week-by-week plan with free lessons and projects.

9 min read

Semantic HTML explained with before-and-after examples

Semantic HTML with real examples: the landmark elements, article vs section, rewriting a page of div soup, and what meaningful tags do for accessibility and SEO. Checklist included.

9 min read

HTML for SEO, from the title tag to structured data

The HTML that affects search in 2026 and the parts that do not: title tags, meta descriptions, headings, links, alt text, canonical, Open Graph and JSON-LD, myths included.

10 min read

An HTML accessibility checklist for beginners (WCAG 2.2)

A WCAG 2.2 checklist for the parts of accessibility you control in HTML: lang, headings, alt text, labels, keyboard, focus, contrast and ARIA, plus a 5-minute keyboard test.

10 min read

20 HTML best practices for clean, valid code

Twenty rules we apply to every HTML file: doctype, lang, charset, semantic tags, alt text, labels, file names and W3C validation, each with a short code example.

9 min read

Frequently asked questions

Is this HTML course really free?

Yes. Lessons, challenges, guides, the reference, the playground and the certificate cost nothing. There is no paid tier, no trial and no account to create. Progress is saved in your own browser, so you can close the tab and carry on later on the same device.

Can I learn HTML with no coding experience?

Yes. Most people start with HTML precisely because there is no programming logic to learn first. The course opens with what HTML is, explains every term before it uses it and checks your code automatically, so you always know whether you are on the right track.

What can I build after learning HTML?

Complete pages: a personal profile, a portfolio, a recipe or event page, a contact page with a form, documentation, even a small multi-page site. These are all static web pages (opens in a new tab), and plenty of hosts will serve them for free. Add some CSS (the course introduces it) and they look finished. HTML is also what you need before JavaScript or a front-end framework will make sense.

Do I need to install anything?

No. The lessons, the code editor, the live preview and the checker all run in your web browser. Later, when you build sites on your own computer, a plain text editor and a browser are enough, because any browser can open an HTML file directly.

Write your first tag