CodeIt guide

How to actually publish a first website for free

Putting a first website online free: which hosts need an account, a card, git knowledge, or a minimum age, and which quietly exclude kids.

Short answer: if you have a folder with an index.html file in it, you can have a public link in about ten minutes for no money, and the two most common good choices are Neocities and GitHub Pages. The catch is not price. It is friction, and the friction is different for a 30-year-old than for a 10-year-old.

This page lists the real requirements for each option: whether you need an account, an email address, a credit card, any knowledge of git or a command line, and, the one most guides skip, whether there is a minimum age that silently rules a child out.

First, what "publishing" actually means

A website is a folder of files. Publishing means putting that folder on a computer that is always on, so anyone with the address can ask for those files. That computer is the host; the address is the URL.

If your project is HTML, CSS and JavaScript only, it is a static site, and static hosting is free almost everywhere because serving a file is cheap. Nearly every first website is static, which is good news. You need one file named exactly index.html: that is the page a host shows when someone visits the address with nothing after it.

The options, with the real friction

Every option below needs an account and an email address. None of them asks for a card on the free tier.

OptionGit / CLIMinimum ageFree custom domain
NeocitiesNo, upload files in the browserTerms state noneNo (paid feature)
GitHub PagesSome. Repo concepts at minimum13+Yes, if you own a domain
Netlify dropNo, drag a folder13+Yes, if you own a domain
VercelUsually git or CLI16+Yes, if you own a domain
NekowebNo, browser editorCheck current termsNo
Cloudflare PagesGit or CLI13+ (18 to contract)Yes, if you own a domain
CodePenNo13+No
itch.io (games)No, upload a zip13 to use; 18+ or guardian consent to publishNo

"Free custom domain" means the host serves a domain you own at no extra charge, you still buy the domain separately. "No card" means the free tier does not ask for one at signup; that can change, so check before relying on it.

The 13+ problem nobody mentions

This is the single most useful thing on this page. GitHub requires account holders to be 13 or older. Its terms say so plainly, because of US children's privacy law. So do Netlify, CodePen and Cloudflare. Vercel goes further and requires 16.

Nearly every "publish your first website free" tutorial recommends GitHub Pages without mentioning this. If you are a parent following one of those guides with a 9-year-old, you will get most of the way through and then be asked for a date of birth. The workaround people reach for, entering a false birth year, creates an account that violates the terms and that your child does not legally control.

The honest options for a child under 13 who wants a public link:

  1. A parent-owned account. The parent creates and owns the GitHub, Neocities or Netlify account and publishes the child's work under it. This is legitimate, it is what the terms contemplate, and it keeps an adult in the loop. It is the route we would suggest first.
  2. Neocities, whose terms do not state a minimum age, though a parent should still set it up and hold the login.
  3. Do not publish publicly yet. Share the actual file instead. An HTML file opens in any browser by double-clicking it, and can be emailed or put in a shared drive. Relatives can see the project without it being on the open internet.

Option three is underrated. A public URL is not a requirement for a child to be proud of something.

"Is it safe for my child's project to be public?"

The honest answer has three parts, and only one of them is about hackers.

The code is not the risk. A static page cannot be broken into in any meaningful sense. There is no login, no database, nothing to steal. The worst realistic outcome is that someone copies the source, which is how the web has always worked.

The content is the risk. Kids put their full name, school, town, sports team and photos into an "About Me" page, because that is what a personal page is. That becomes public and searchable. Before anything goes live, read every word on the page with an adult. First name only is a reasonable default.

The account is the risk. A public site under a real name is a durable, searchable record attached to a child. Publish under a nickname unless there is a reason not to, and keep the login with a parent.

One more practical point: a static site has no comments and no messages, which makes it substantially safer than most places a child could put creative work. Nobody can reply to it. That is a feature.

A ten-minute path for an adult with an HTML file

  1. Put your files in one folder, with the main page named index.html.
  2. Go to Netlify Drop and drag the folder onto the page.
  3. You get a live URL immediately. Sign in to keep it permanently.

If you would rather learn what professionals use, do the same project on GitHub Pages instead. It takes longer and you will meet repositories and commits, but that knowledge is reusable everywhere.

What about a domain name?

You cannot get a genuinely good custom domain for free. Registrars charge roughly $10-15 a year for a .com. Hosts above will serve a domain you own at no extra cost, but the domain itself is the paid part. For a first project, the free subdomain you are given, yourname.neocities.org, yourname.github.io, is completely fine.


Disclosure: we make a tool in this space

We build CodeIt (codeitlearn.com), a browser-based studio where a learner describes a website, game or quiz and gets a working version they can play. They change it by moving things on the page, picking colours and fonts, or asking for what they want. A tab then shows what the project is made of and opens the lesson behind each idea it used. The project stays open and changeable, not locked. The loop is: make something, play it, change it, see what it is made of, and publish it. Free tier: a monthly allowance of assisted builds, two learner profiles with parent view, free now, no card required.

Where we are not the answer. This page is about publishing, and on publishing we are not the strongest option. It does not host your own domain and is not a general web host, if you already have files and want them online, Neocities or GitHub Pages is the right tool and we would point you there. Most importantly: managed profiles for under-13s cannot publish publicly. For a child under 13 whose specific goal is a public link, a parent-owned Neocities or GitHub Pages account is the honest route, not us. Independent accounts start at 13; profiles for ages 5-12 are parent-managed and email-verified.


Common questions

Do I need to buy hosting? No. Static hosting for a personal site is free on every option above.

Do I need to know git? Not for Neocities, Netlify Drop, Nekoweb or CodePen. Yes, at least a little, for GitHub Pages, Vercel and Cloudflare Pages.

Can my 10-year-old have their own GitHub account? No. GitHub's terms require 13 or older. Use a parent-owned account.

Will anyone find my site? Not by accident. A new site with no links pointing at it gets essentially no traffic; sharing the link is how people arrive.

Can I take it down later? Yes, on all of them. Search engines may keep a cached copy for a while, which is one more reason to be careful about what goes on the page in the first place.

Last verified: 23 August 2026.

Questions parents ask first

Do I need to buy hosting?

No. Static hosting for a personal site is free on every option above.

Do I need to know git?

Not for Neocities, Netlify Drop, Nekoweb or CodePen. Yes, at least a little, for GitHub Pages, Vercel and Cloudflare Pages.

Can my 10-year-old have their own GitHub account?

No. GitHub's terms require 13 or older. Use a parent-owned account.

Will anyone find my site?

Not by accident. A new site with no links pointing at it gets essentially no traffic; sharing the link is how people arrive.

Can I take it down later?

Yes, on all of them. Search engines may keep a cached copy for a while, which is one more reason to be careful about what goes on the page in the first place.

What you can do on CodeIt

Last verified 2026-08-23.