Shoryaku AI

How to publish a website without paying for hosting

Product15 min

The website files are done. They are still only on your own computer.

This article is about putting them on the internet. The previous article went as far as having AI build the pages. This one is where you put them, and the domain.

I am building Shoryaku AI ( https://shoryaku.net ), a marketing-support service, on my own. I will use the traffic we actually measured and make what it ends up costing clear.

What "publish" means

There is only one thing to do. Put the files you made on a computer that keeps running 24 hours a day. That is all.

The service that rents you that place is called hosting (a rental server). Your computer stops when you turn it off. Hosting does not. That is why anyone in the world can see it.

It used to be normal to pay about ¥1,000 a month. For a personal or small-business site, you can now put it up for almost nothing.

How much is actually used

This is what the Shoryaku AI site (7 landing pages, the blog, legal pages, and other public pages) used over about 26 days in August 2026.

Item Measured
Traffic (total data sent to visitors) 144.1 MiB (about 5.8 MB per day)
Storage (total size of the files) 61.7 MiB

Even with a lot of photos, it is about this much. Most of the storage is the logo and images for social. The text and design files, all together, are only a few MB.

Keep these numbers in mind, then look at the free tiers.

Places you can put it for free

These are the free tiers on each company's official page as of September 5, 2026. Free tiers change, so check them yourself before you sign up.

Service What you can do for free Compared with the measurements above
Firebase Hosting (Google) 10 GB storage, 360 MB/day of traffic. A custom domain and SSL are free too Traffic is about 2% of the tier
Cloudflare Pages Up to 500 updates a month, up to 20,000 files per upload, up to 25 MiB per file. Up to 100 custom domains. A traffic cap is not written on the page You only need to watch the number of updates
GitHub Pages Up to 1 GB for the whole site, 100 GB of traffic a month (a guideline), up to 10 updates an hour (a guideline) Traffic is 0.15% of the tier

(Sources: firebase.google.com/pricing, developers.cloudflare.com/pages/platform/limits, docs.github.com. All checked on 2026-09-05.)

Netlify and Vercel are common choices too, but Netlify's pricing page writes the free tier as "300 credits," and I could not read, on that page, how many GB of traffic that is. I am leaving out numbers I could not read.

For one website, all three are free enough. They are 2 orders of magnitude apart, so traffic is not the thing to worry about.

Which one to choose

Price does not separate them, so choose by how far you will build from here.

In this case A fit
Only pages and a contact form. You will not build membership or similar features Cloudflare Pages or GitHub Pages
You already use GitHub, or you plan to GitHub Pages (the fewest steps)
You plan to build signup, login, or payments Firebase Hosting (login and a database are in the same place)
You want display speed first Cloudflare Pages

Shoryaku AI is on Firebase Hosting. The reason is that login, the database, and server-side processing are in the same place, so the site and the app can run on the same domain. If the site is at company A and the server-side processing is at company B, you will hit a snag once, at the point where you connect the two.

There is one caution. To use server-side processing on Firebase (Cloud Functions), you have to switch to the pay-as-you-go plan (Blaze). Shoryaku AI does that. The free tier above still applies to the part where the website is hosted, so that part has not been charged. If you go over, the unit prices are $0.026/GB for storage and $0.15/GB for traffic (checked the same day).

How to publish

Asking an agent is more reliable than looking it up yourself as you go. The steps differ by tool, and screenshots in the official docs are often old.

I want to publish the website in this folder on Cloudflare Pages for free.
The account is already created.
Split the work into what I do in the browser and what you do in this folder,
and tell me the steps in order. Add a short explanation to each technical term.

It is better to add "split what I do from what you do." An agent tends to explain as if it can do everything with its own hands, but only you can create the account or set up payment in the browser. Split that at the start and you will not get lost.

If the screen stops matching the explanation partway through, the fast path is to install the Chrome extension (Claude in Chrome) in the Claude desktop app and show it the admin screen you have open and ask. It is ordinary for the instructions to say "click the X button" when that button is not there.

Get a custom domain

When you publish, you first get an address on the service's side, such as something.pages.dev or something.web.app. People can view the site on that address as usual.

There are still three reasons to get a custom domain (your own address, such as shoryaku.net).

  • You can put it on a business card or a flyer. You cannot put mysite-2026-final.pages.dev on one
  • You can align the email address. You can make info@your-company.com
  • If you change where the site is hosted later, the address does not change. This is the largest one. If you grow the site on the service's address, a move means starting over on search standing and on links

Cost and where to get one

For .com or .net, it is about ¥1,000 to ¥2,000 a year. That is a yearly price, not a monthly one.

There are many places to get one. お名前.com, Cloudflare Registrar, Google Cloud Domains, ムームードメイン, and others. The contents are the same wherever you get it. Matching a service you already use makes it easier to manage.

Shoryaku AI got shoryaku.net at Google Cloud Domains. Billing and management sit in one place, on the same Google account as Firebase.

Connect it to the hosting

Getting the domain does not display anything yet. You need a setting that says "when someone comes to this address, show this place." That is called a DNS setting.

What you do is choose "add a custom domain" in the hosting admin screen, and copy the string it shows into the admin screen of the place where you got the domain. There is no hard judgment.

SSL (the address becomes https://, and a lock icon appears) is prepared automatically by all three. You do not sign up for it separately, and it does not cost money. It can take a few hours to take effect.

This is another place that is easy to get stuck, so showing the screen and asking is the fast path.

A trap that is common on sites built with AI

Last, one point that matters more than where you host it.

The previous article said it is better to specify "build it with HTML and CSS only, to start." If you do not specify that, AI sometimes brings in a full framework such as React. Then this problem shows up.

When you build with React or similar, the finished files come out as only one page. /company and /service actually return that same one file, and JavaScript swaps the contents after it opens.

For a person looking at it, there is no problem. What breaks is the view from a search engine.

What happens What it leads to
Every page has the same title and description in search results A search for the company overview still shows the top page's description
Every page declares, on its own, "the real URL is the top page" However many pages you make, Google sees one page
A machine that does not run JavaScript sees empty contents Generative-AI search cannot read the contents

The second one is fatal. Shoryaku AI has 7 industry landing pages, and if this had not been handled, all 7 would have been passed to Google as "copies of the top page."

The fix is to state the symptom

You do not have to fix it yourself. Asking to "do SEO" does not fix it. It usually ends with old-style keyword settings added on.

State the symptom as it is.

This site is built so that the build outputs only one index.html.
Because of that, every page keeps the top page's title, description, and canonical.
I want the build to output HTML that has the correct values for each page.

On Shoryaku AI, for each public page, the build writes out HTML with the title, description, canonical, and social image replaced. Along with that, so that a machine that does not run JavaScript can still see the headings and the signup link, text is placed inside <noscript> (when you view it in a browser it is overwritten, so you do not see it twice).

This problem happens the same way no matter which host you use. It is a problem of how the site is built, not a feature of the host.

Summary

What you decide Answer
What it costs Hosting is free enough. About 2% of the free tier in the measurements
Where to put it Pages only: Cloudflare Pages or GitHub Pages. If you will build membership or payments: Firebase Hosting
Domain Get a custom domain. ¥1,000 to ¥2,000 a year. SSL is free and automatic
Caution If you built it with React or similar, leaving it as is means every page is treated as "a copy of the top page"

The last trap makes more of a difference than the hosting itself. If you do not fix it, however many pages you make, a search engine sees one page.

The continuation is in Search Console and GA4 setup to do as soon as you publish. It includes the failure where the numbers were empty because you thought you had set it up.