How to make my own

Website

Register a domain, pick a host, drop in a page builder or hand-code HTML — live in under an hour.

howtomakemyown4.8(3.3k reviews)120 min total
Jump to Recipe
How to make my own website

Project At-A-Glance

Difficulty
medium
Active Time
66 min
Total Time
120 min
Yield
1 live page

Materials & Tools

0/5

A website is a folder of files on someone else's computer, pointed at by a domain name you rent. You do not need to learn to code to get one live, but knowing what the pieces are stops you overpaying for magic.

This guide gets a single-page site online. Not a store, not a blog empire — one page that loads fast and says what you need it to say.

Step-by-step

Step 1: Decide what the page needs to say

Decide what the page needs to say. Write a single sentence for the heading and one paragraph underneath. Do not design before you have text.

Step 2: Register a domain

Register a domain. Use a registrar like Namecheap or Cloudflare Registrar — avoid the upsells for privacy protection on registrars that charge extra (Cloudflare includes it free).

Step 3: Pick your build method

Pick your build method. If you want no code, sign up for Carrd ($19/year for a custom domain) or Squarespace. If you want to learn, create an index.html file in a text editor.

Step 4: If hand-coding: write a minimal HTML file with a DOCT…

If hand-coding: write a minimal HTML file with a DOCTYPE, a head with a title and viewport meta tag, and a body with your heading and paragraph. Save it as index.html.

Step 5: Add one stylesheet

Add one stylesheet. Link a CSS file or add a style block. Set the font, max-width the body to about 38rem, and centre it with margin auto. That is enough for readability.

Step 6: Add your image

Add your image. Compress it with Squoosh or TinyPNG first. Place it in the same folder and reference it with an img tag that has alt text.

Step 7: Push to a host

Push to a host. For GitHub Pages: create a repository, push your files, enable Pages in settings. For Vercel or Netlify: connect the repo and it deploys automatically on every push.

Step 8: Point your domain

Point your domain. In your registrar's DNS settings, add the CNAME or A records your host tells you to. Propagation usually takes under 30 minutes.

Step 9: Test on your phone

Test on your phone. Open the live URL on mobile — if text is tiny or images overflow, add a viewport meta tag and set images to max-width 100%.

Step 10: Set up HTTPS

Set up HTTPS. Most modern hosts (Vercel, Netlify, GitHub Pages, Cloudflare) issue a free SSL certificate automatically. Verify the padlock appears.

Notes

  • The most common failure is buying a domain and never pointing it at anything. Set a calendar reminder for the day you register: DNS records by end of day.
  • Do not pay for hosting if your site is static HTML/CSS with no backend. Free tiers exist specifically for this.
  • Avoid website builders that do not let you export your content. If you ever want to leave, you should be able to take your pages with you.

FAQ

Not if you use a page builder like Carrd or Squarespace. But knowing basic HTML (headings, paragraphs, links, images) takes about an evening and gives you full control forever.

Related