Netlify can publish a simple HTML microsite without a traditional web-hosting control panel. You can upload a finished folder manually or connect a Git repository so future changes deploy automatically.
The first method is easier for a quick test. The Git method takes a little more setup but is usually better when you expect to update the site regularly.
Quick takeaways: Make sure the folder contains index.html, test the temporary Netlify address before connecting a domain, keep existing email DNS records safe, and check your current plan limits rather than relying on an old bandwidth figure.
Before you begin
You will need:
- A Netlify account.
- A website folder containing
index.htmland its CSS, JavaScript, and image files. - A custom domain if you want to use one. You can publish to a Netlify address first.
Open index.html on your computer and test the navigation before uploading. Check filename capitalization carefully. A link to About.html may fail online if the actual file is named about.html.
Option 1: Deploy the folder manually
- Sign in to Netlify and choose the option to add a new project.
- Select the manual or drag-and-drop deployment option. Netlify also provides a dedicated drop page for manual deployments.
- Upload the folder that directly contains
index.html. Do not upload a parent folder if the website is buried inside another folder. - Wait for Netlify to create the deployment and temporary
netlify.appaddress. - Open the temporary address and test every page, image, form, and link.
Dashboard wording can change, so follow the manual-deployment option shown in your account if its label differs slightly.
Option 2: Connect a GitHub repository
A Git-based deployment is more useful for ongoing work because Netlify can publish changes after they are committed to the connected branch.
- Choose Add new project and select the option to import an existing project.
- Choose GitHub and authorize access to the correct repository.
- Select the production branch, usually
main. - For a basic static site with no build process, leave the build command blank and choose the folder containing the finished site as the publish directory.
- Deploy the project and test the generated Netlify address.
If your site uses a framework or build tool, its build command and publish directory will be different. Follow the documentation for that framework rather than guessing.
Add a custom domain
From the project's domain settings, choose the option to add a domain you already own. Netlify will then provide setup instructions for that specific domain.
You have two main choices:
- Keep your current DNS provider: Add the DNS records Netlify gives you at your registrar or DNS provider.
- Use Netlify DNS: Delegate the domain by changing its nameservers to those supplied by Netlify.
Changing nameservers is not required just to use a custom domain. If you decide to move DNS to Netlify, copy any existing records first. This is especially important for MX, SPF, DKIM, or other records used by your email service.
Set a primary address, such as www.example.com or example.com, and redirect the other version to it. This gives visitors one consistent version of the site.
Wait for DNS verification and HTTPS
DNS changes are not always immediate. Netlify will show whether the domain is still waiting for verification and will provide instructions tailored to your setup.
Once the domain points to the project correctly, Netlify normally provisions an HTTPS certificate. Confirm that your live address opens with https:// and that the browser does not display a certificate warning.
How to publish updates
For a manual deployment, upload the revised site folder again. Netlify keeps a deployment history, but you should also keep your own backup or version-controlled copy.
For a Git-connected project, commit and push the approved changes to the production branch. Netlify will normally build and publish a new deployment automatically. A connected Git workflow also makes it easier to review changes before they reach the live site.
Common problems
The homepage shows a 404 error
Check that index.html is in the publish directory rather than one folder deeper.
Images or styles are missing
Check relative paths and capitalization. Avoid links that point to a folder location on your own computer.
The domain is still pending
Compare your DNS records with the instructions in Netlify's domain dashboard. Old or conflicting records can prevent verification.
The site stops because a limit was reached
Netlify's plan structure has changed over time. Newer accounts use credit-based plans, while some older accounts remain on legacy plans. Check Usage & billing in your own account for the limits that apply to you.
What the free plan includes
Do not rely on older articles that quote one universal bandwidth or build-minute allowance. Netlify introduced credit-based plans for new accounts in September 2025. The current Free plan provides a monthly credit allowance with a hard limit, while qualifying older accounts may still use legacy limits.
Pricing and included features can change. Review Netlify's current plan page before choosing the service, especially if the site receives meaningful traffic or uses builds, functions, forms, or other metered features.
The bottom line
Manual deployment is fine for a first test, but connecting GitHub is the cleaner choice for a site you plan to maintain. Test the Netlify address first, connect the domain carefully, protect existing DNS records, and confirm both HTTPS and usage limits after setup.
If you are still preparing the site itself, start with How to Build Your First Microsite. You can also review the site speed guide before launch.
References
- Netlify. (n.d.). Assign a domain to your site or app. https://docs.netlify.com/manage/domains/manage-domains/assign-a-domain-to-your-site-app/
- Netlify. (n.d.). Credit-based pricing plans. https://docs.netlify.com/manage/accounts-and-billing/billing/billing-for-credit-based-plans/credit-based-pricing-plans/
- Netlify. (n.d.). Deploy overview. https://docs.netlify.com/deploy/deploy-overview/
- Netlify. (n.d.). Set up Netlify DNS. https://docs.netlify.com/manage/domains/set-up-netlify-dns/