Você criou um site. Ele abre perfeitamente quando você clica duas vezes no arquivo ou roda um comando no seu computador. Mas aí vem a pergunta que todo mundo enfrenta nesse momento: como faço pra qualquer pessoa, em qualquer lugar do mundo, conseguir acessar esse site?

A boa notícia é que hoje, em 2026, colocar um site no ar ficou muito mais simples e, dependendo do tipo de projeto, totalmente gratuito. A notícia honesta é que "gratuito" tem limites, e um domínio próprio (tipo seusite.com) normalmente é uma compra separada, feita fora da hospedagem. Esse guia te leva do zero até o site publicado, sem pular nenhuma etapa.

Resposta rápida: sim, é possível hospedar a maioria dos sites gratuitamente. O caminho básico é: seus arquivos → GitHub → um serviço de hospedagem (Cloudflare Pages, Vercel, Netlify ou GitHub Pages) → domínio (opcional) → HTTPS automático → site no ar. Sites estáticos (HTML/CSS/JS, landing pages, portfólios, React/Vue bem configurados) se encaixam bem nesse caminho gratuito. Sites com backend próprio, banco de dados complexo ou WordPress geralmente precisam de mais análise — isso é explicado na próxima seção.

Que tipo de site você tem?

Antes de escolher onde publicar, vale entender em qual categoria seu projeto se encaixa — isso muda bastante o que é ou não gratuito:

Tipo de projetoHospedagem grátis?Observação
HTML / CSS / JSSimMuito simples, o caso mais direto
Landing pageSimExcelente para hospedagem estática
PortfólioSimBoa opção, geralmente estático
React / Vue / Next.jsSimDepende da configuração do build
Aplicação com backend próprioDependePrecisa analisar onde o backend vai rodar
Banco de dadosDependeAlguns serviços gratuitos têm limites de uso
WordPress / PHPDependePrecisa de um ambiente compatível com PHP

Se o seu site é HTML/CSS/JS puro, ou um framework front-end como React, Vue ou Next.js configurado como site estático, o caminho gratuito descrito aqui funciona muito bem. Se envolve backend próprio ou banco de dados, esse guia ainda ajuda com a parte de hospedagem do front-end — a parte de backend fica pra um próximo conteúdo.

O que você precisa antes de começar

  • Os arquivos do seu site — sejam eles HTML/CSS/JS prontos, ou o código-fonte de um projeto React/Vue.
  • Uma conta no GitHub — gratuita, é onde seu código vai ficar guardado e de onde a hospedagem vai "puxar" as atualizações.
  • Um serviço de hospedagem — vamos comparar as opções mais adiante.
  • Um domínio (opcional) — se quiser um endereço próprio em vez do endereço gratuito que a hospedagem já fornece.

Dois termos técnicos que vão aparecer bastante: DNS é o sistema que "traduz" um nome de domínio (como devlobbo.com) para o endereço real do servidor que hospeda o site — pense nele como uma lista telefônica da internet. E HTTPS é a camada de segurança que criptografa a conexão entre o navegador e o site (o cadeado que aparece na barra de endereço) — hoje em dia é praticamente obrigatório, e os serviços que vamos mostrar aqui já ativam isso automaticamente, sem custo.

Passo a passo: colocando seus arquivos no GitHub

O GitHub é o ponto de partida de praticamente todo esse processo — é ele que vai conversar com o serviço de hospedagem toda vez que você atualizar o site.

1. Crie sua conta gratuita

Acesse github.com e clique em "Sign up". Basta um e-mail, não é preciso cartão de crédito.

2. Crie um repositório

Clique no ícone "+" no canto superior direito → "New repository". Dê um nome (pode ser o nome do seu site), escolha se ele será público ou privado, e clique em "Create repository".

Criação de repositório no GitHub

3. Envie os arquivos do seu site

Na página do repositório recém-criado, clique em "uploading an existing file" (ou "Add file" → "Upload files"). Arraste todos os arquivos do seu site pra dentro da área indicada — dá pra fazer isso direto pelo navegador, sem instalar nada no computador.

4. Verifique a estrutura

Confira se o arquivo principal do seu site (geralmente index.html) está na raiz do repositório, e não escondido dentro de uma subpasta desnecessária — isso é uma causa comum de erro na hora de publicar.

5. Confirme o envio (commit)

Role até o final da página, escreva uma breve descrição (tipo "primeira versão do site") na caixa de mensagem de commit, e clique em "Commit changes". Pronto — seus arquivos já estão salvos no GitHub.

6. Atualizando o projeto no futuro

Sempre que você quiser mudar algo no site, é só repetir o processo de upload (ou editar o arquivo direto na interface do GitHub) e fazer um novo commit. A hospedagem vai detectar essa mudança e publicar a nova versão automaticamente — não é preciso repetir a configuração inicial.

O caminho completo, visualmente:
Arquivos do site→ GitHub→ Hospedagem→ Domínio→ HTTPS→ Site no ar

Comparando as opções de hospedagem gratuita

As quatro opções mais usadas hoje têm um funcionamento parecido (conectam direto no GitHub e publicam automaticamente), mas com diferenças que importam dependendo do seu projeto:

CritérioCloudflare PagesVercelNetlifyGitHub Pages
Facilidade pra iniciantesAltaAltaAltaMédia
Deploy automático via GitHubSimSimSimSim
Domínio personalizado grátisSimSimSimSim
HTTPS automáticoSimSimSimSim
Melhor para sites estáticosExcelenteBoaBoaBoa
Melhor para Next.js/ReactBoaExcelenteExcelenteLimitada
Quando usarTráfego alto, banda ilimitadaProjetos Next.jsFormulários e funções prontasProjetos simples já no GitHub

Os limites exatos de cada plano gratuito podem mudar com o tempo — vale sempre conferir a página oficial de cada serviço antes de decidir, especialmente se seu projeto crescer bastante.

Se você já usa (ou pretende usar) algum desses serviços, temos comparativos e guias dedicados: Vercel vs Netlify vs Cloudflare Pages, comparado a fundo.

Tutorial completo: publicando no Cloudflare Pages

Vamos usar o Cloudflare Pages como exemplo principal, por ter banda ilimitada gratuita e ser direto ao ponto. Se você já tem os arquivos no GitHub (passo anterior), leva menos de 10 minutos.

1. Crie sua conta gratuita

Acesse dash.cloudflare.com/sign-up — só precisa de e-mail, sem cartão de crédito.

2. Conecte com o GitHub

No painel, vá em "Workers & Pages" → "Create application", e clique em "Continue with GitHub". Autorize o acesso à sua conta do GitHub.

Conectar Cloudflare Pages com GitHub

3. Selecione o projeto

Escolha o repositório que você criou no passo anterior, na lista de repositórios disponíveis.

4. Configure a publicação

Se o site for HTML puro, deixe os campos de comando de build em branco e aponte a pasta de saída pra raiz (/). Se for um projeto React/Vite, o comando costuma ser npm run build e a pasta de saída dist.

5. Faça o deploy

Clique em "Save and Deploy". O processo leva de 30 segundos a 2 minutos, e você acompanha o progresso em tempo real.

6. Teste o endereço gratuito

Ao terminar, você recebe um endereço no formato seu-projeto.pages.dev — clique nele pra conferir que tudo carregou certo.

💡 Fizemos um guia ainda mais detalhado, só sobre o Cloudflare Pages, com solução de problemas comuns: Como hospedar seu site grátis no Cloudflare Pages: passo a passo completo.

Fazendo uma alteração depois

A partir de agora, qualquer mudança que você enviar (commit) pro repositório no GitHub republica o site automaticamente, sem precisar repetir nenhuma configuração — esse é o "deploy automático" que citamos antes.

Como as atualizações funcionam depois de configurado:
Alteração no código→ GitHub→ Deploy automático→ Nova versão no ar

Seu site funciona no computador, mas não depois de publicado?

Essa é provavelmente a parte mais útil deste guia. É extremamente comum um site funcionar perfeitamente local e "quebrar" de alguma forma assim que vai pro ar — geralmente por um punhado de motivos bem específicos.

🖼️ Imagens não carregam

Por que acontece: geralmente um caminho de arquivo relativo que funciona local, mas quebra no servidor.

Como identificar: abra o console do navegador (F12) e veja se aparece erro 404 no nome da imagem.

Como corrigir: use caminhos começando com barra, como /imagens/foto.jpg, em vez de ./imagens/foto.jpg.

🎨 CSS não carrega

Por que acontece: mesmo problema de caminho relativo, ou o arquivo CSS não foi incluído no upload.

Como identificar: o site aparece "sem estilo", só texto puro; console mostra 404 no arquivo .css.

Como corrigir: confirme que o arquivo CSS foi enviado ao repositório e que o caminho no HTML está correto.

⚙️ JavaScript quebrado

Por que acontece: erro de sintaxe, arquivo não encontrado, ou dependência externa que não carregou.

Como identificar: aba "Console" do navegador mostra a mensagem de erro exata, com o número da linha.

Como corrigir: leia a mensagem de erro com calma — ela quase sempre aponta exatamente onde está o problema.

🔠 Maiúsculas e minúsculas

Por que acontece: seu computador (Windows/Mac) geralmente ignora diferença entre maiúscula/minúscula em nomes de arquivo — servidores online, não.

Como identificar: funciona local, dá 404 online, mesmo o arquivo existindo.

Como corrigir: confira se Logo.png no código bate exatamente com logo.png (ou o nome real) no repositório.

🚫 Erro 404 (página não encontrada)

Por que acontece: o arquivo pedido genuinamente não existe naquele endereço, ou a pasta de saída configurada está errada.

Como identificar: a própria página de erro mostra "404" claramente.

Como corrigir: confira a configuração de "pasta de saída" da hospedagem — é a causa mais comum.

🔒 Erro de CORS

Por que acontece: seu site tenta buscar dados de uma API em outro endereço, e essa API não autorizou seu domínio.

Como identificar: mensagem específica no console mencionando "CORS policy".

Como corrigir: esse é um tema grande o suficiente pra ter um guia próprio — veja o passo a passo completo. Como corrigir erro de CORS: guia completo.

🔌 API não configurada / variáveis de ambiente

Por que acontece: chaves de API ou senhas que funcionam local (num arquivo .env) precisam ser configuradas manualmente no painel da hospedagem também.

Como identificar: funcionalidades que dependem de login ou dados externos simplesmente não funcionam, sem erro visual óbvio.

Como corrigir: procure a seção "Environment Variables" nas configurações do seu projeto na hospedagem, e adicione as mesmas chaves que você usa localmente.

🌐 DNS ainda não propagou

Por que acontece: depois de configurar um domínio próprio, a mudança leva tempo pra se espalhar pelos servidores DNS do mundo todo.

Como identificar: o domínio funciona em alguns lugares/dispositivos e não em outros, logo depois de configurado.

Como corrigir: só esperar — geralmente resolve sozinho em algumas horas.

🔐 HTTPS não ativa

Por que acontece: o certificado de segurança só é emitido depois que o domínio termina de ser validado.

Como identificar: navegador mostra aviso de "conexão não segura".

Como corrigir: geralmente é automático depois que o DNS propaga — se persistir por mais de 24h, vale reconferir a configuração do domínio.

Domínio próprio: o que muda

O endereço gratuito que a hospedagem te dá (tipo seusite.pages.dev) já funciona perfeitamente e é seguro — mas se você quer algo mais profissional, como seusite.com.br, precisa de um domínio próprio.

O domínio (o "nome") é normalmente comprado separado da hospedagem (o "espaço" onde o site fica). São dois serviços diferentes, que você conecta um ao outro através do DNS — a "lista telefônica" que mencionamos antes.

Já escrevemos um guia dedicado, passo a passo, sobre essa conexão específica: Como conectar um domínio próprio no Cloudflare Pages.

Como fazer o site aparecer no Google

Publicar o site é só o primeiro passo — pra alguém te encontrar através de uma busca, o Google precisa primeiro descobrir e indexar suas páginas. Isso não é instantâneo.

  • Google Search Console: ferramenta gratuita onde você "apresenta" seu site ao Google, envia seu sitemap e pede indexação manual das páginas.
  • Sitemap: um arquivo (sitemap.xml) listando todas as páginas do seu site, que ajuda o Google a encontrá-las mais rápido.
  • Robots.txt: um arquivo simples que confirma ao Google que ele tem permissão pra rastrear seu site.
  • Título e descrição: cada página deve ter um título claro e uma meta description explicando do que se trata — isso aparece direto no resultado de busca.
  • Links internos: páginas conectadas entre si ajudam o Google a entender a estrutura do seu site.
  • Conteúdo útil: no fim das contas, é o fator que mais pesa — conteúdo que responde de verdade à pergunta de quem busca.
⚠️ Não existe atalho pra indexação instantânea ou primeira posição garantida. O Google pode levar de alguns dias a algumas semanas pra descobrir e posicionar uma página nova — isso é normal, mesmo com tudo configurado corretamente.

Checklist final

  • Site funcionando localmente, sem erros no console
  • Arquivos organizados, com index.html na raiz
  • Conta no GitHub criada
  • Repositório criado e arquivos enviados
  • Hospedagem configurada e conectada ao GitHub
  • Primeiro deploy realizado com sucesso
  • Site testado também no celular
  • Domínio próprio configurado (se aplicável)
  • HTTPS ativo, sem aviso de "conexão não segura"
  • Todos os links internos testados
  • Todas as imagens carregando corretamente
  • Formulários testados, se houver
  • Google Search Console configurado
  • Sitemap enviado e verificado

Perguntas frequentes

É possível hospedar um site gratuitamente?
Sim, principalmente sites estáticos (HTML/CSS/JS) e a maioria dos projetos React/Vue/Next.js configurados corretamente. Serviços como Cloudflare Pages, Vercel, Netlify e GitHub Pages oferecem planos gratuitos genuinamente usáveis, não só demos.
Preciso comprar um domínio?
Não é obrigatório — o endereço gratuito que a hospedagem fornece (tipo seusite.pages.dev) já funciona normalmente. Um domínio próprio é opcional, geralmente uma compra separada, e ajuda a dar uma impressão mais profissional.
Qual a diferença entre domínio e hospedagem?
O domínio é o "nome" do seu site (como devlobbo.com); a hospedagem é o "espaço" onde os arquivos do site realmente ficam guardados e são servidos. São dois serviços separados, conectados através de configuração de DNS.
Posso hospedar um site HTML gratuitamente?
Sim, é exatamente o caso mais simples e direto de todos — HTML/CSS/JS puro é compatível com qualquer uma das quatro opções de hospedagem que comparamos neste guia.
Posso usar meu próprio domínio?
Sim, todos os serviços de hospedagem gratuita mencionados aqui permitem conectar um domínio próprio sem custo adicional pela hospedagem em si — só o domínio costuma ser pago separadamente, dependendo de onde você o registrar.
Por que meu site funciona no computador mas não depois de publicado?
É geralmente um entre poucos motivos comuns: caminho de arquivo relativo em vez de absoluto, diferença de maiúscula/minúscula no nome do arquivo, ou uma variável de ambiente que não foi configurada na hospedagem. Veja a seção de solução de problemas deste guia para os detalhes de cada caso.
Como configurar HTTPS?
Na grande maioria dos casos, você não precisa fazer nada manualmente — Cloudflare Pages, Vercel, Netlify e GitHub Pages emitem e renovam o certificado HTTPS automaticamente assim que o domínio é validado.
Como fazer meu site aparecer no Google?
Configure o Google Search Console, envie o sitemap do seu site, e tenha paciência — a indexação pode levar de dias a semanas. Título, descrição e conteúdo realmente útil também pesam bastante nesse processo.
O que fazer quando aparece erro 404?
Confira primeiro se a pasta de saída configurada na hospedagem está correta — essa é a causa mais comum. Depois, confirme se o arquivo realmente existe no caminho exato que está sendo pedido.
O que fazer quando as imagens não aparecem?
Na maioria das vezes é um caminho de arquivo relativo (como ./imagem.jpg) que funciona local mas quebra online. Trocar para um caminho absoluto começando com barra (/imagem.jpg) costuma resolver.

Quer um sistema, não só um site?

Desenvolvemos sistemas completos de gestão, escalas e controle de ponto — não só páginas estáticas.

Conhecer Aplicativos