Como hospedar n8n em VPS Hostinger: automação B2B sem custo por tarefa
Como hospedar n8n em VPS Hostinger com Docker, PostgreSQL, Nginx e SSL: arquitetura, RAM e CPU por volume e a conta contra o custo por tarefa de Make e Zapier.
por Ailton Carvalho · Servidor e infraestrutura · 12 de outubro de 2026 · 12 min de leitura
Neste artigo
- O resumo direto
- 1. Por que a conta por tarefa pesa no B2B
- 2. Quanto custa cada caminho, lado a lado
- 3. Arquitetura de referência para produção
- 4. Dimensionamento: quanta RAM e CPU o n8n pede
- 5. Passo a passo na VPS Hostinger
- 6. Operação: o que mantém o n8n de pé
- 7. Quando o n8n não basta e vale integração sob medida
- Prompt pronto para o seu agente
- Perguntas frequentes
- Conclusão
O resumo direto
Hospedar o n8n numa VPS é rodar a ferramenta de automação no seu próprio servidor, com custo fixo de máquina em vez de cobrança por tarefa. Compensa quando o volume já pesa na fatura do Zapier (10.000 tarefas custam US$ 129 por mês no plano anual) ou quando os fluxos têm muitas etapas por execução; em 10.000 créditos, o Make Core ainda fica no mesmo patamar da VPS. A arquitetura de produção tem quatro peças: n8n em Docker, PostgreSQL como banco, um proxy reverso (Nginx ou Traefik) e certificado SSL no subdomínio. Na Hostinger, os planos KVM vão de 4 GB a 32 GB de RAM, e a própria documentação do n8n publica um teste com uma instância de 4 GB processando até 220 execuções por segundo. O limite deixa de ser a fatura e passa a ser CPU, memória e quem cuida do servidor. Quando a automação começa a carregar regra de negócio crítica, o caminho seguinte é integração sob medida, não mais nós no canvas.
1. Por que a conta por tarefa pesa no B2B
Make e Zapier cobram pelo trabalho que o fluxo executa. No Zapier, segundo a página oficial de preços lida em 12/10/2026, "a task is counted whenever Zapier successfully completes a unit of work for you": cada ação concluída conta, enquanto gatilhos e filtros não contam. No Make, cada ação de módulo consome um crédito. O n8n Cloud cobra diferente: por execução do workflow inteiro, "regardless of complexity", como diz a página de preços do n8n.
Em operação B2B a diferença aparece rápido. Um fluxo que recebe um pedido, consulta o ERP, atualiza o CRM, gera a nota no sistema fiscal e avisa o comercial tem cinco ações. Rodando 2.000 vezes no mês (exemplo hipotético), isso dá 10.000 tarefas no Zapier e pelo menos 10.000 créditos no Make. No n8n, são 2.000 execuções. Na sua VPS, o número de execuções não entra na fatura: entra no uso de CPU e memória.
O segundo problema é o que acontece quando o limite estoura. No Zapier, com cobrança por tarefa ligada, o excedente custa 1,25 vez a taxa base no plano anual e 2,5 vezes no mensal, e o uso para ao chegar em 3 vezes o valor da assinatura. Com a opção desligada, as automações param no limite até o próximo ciclo. No Make, sem créditos "your scenarios won't continue to run". Para quem automatiza faturamento ou atendimento, parar no dia 25 do mês custa mais do que a diferença de plano.
Se a sua dúvida ainda é entre automatizar com ferramenta pronta ou construir um sistema, a página de sistemas sob medida e integrações explica onde cada abordagem termina.
2. Quanto custa cada caminho, lado a lado
Os números abaixo foram lidos nas páginas oficiais em 12/10/2026. As unidades não são iguais (tarefa, crédito, execução, servidor), e é exatamente esse o ponto: só a VPS não cresce com o volume.
| Opção | Preço lido em 12/10/2026 | O que esse preço inclui | Unidade de cobrança |
|---|---|---|---|
| Zapier Professional (anual) | US$ 49,00/mês | 2.000 tarefas por mês | Cada ação concluída |
| Zapier Professional (anual) | US$ 129,00/mês | 10.000 tarefas por mês | Cada ação concluída |
| Make Core | US$ 9/mês | 10.000 créditos por mês | Cada ação de módulo |
| n8n Cloud Starter (anual) | 20 euros/mês | 2.500 execuções por mês | Workflow inteiro |
| n8n Cloud Pro (anual) | 50 euros/mês | 10.000 execuções por mês | Workflow inteiro |
| VPS Hostinger KVM 2 | R$ 43,99/mês (renova R$ 77,99) | 2 vCPU, 8 GB RAM, 100 GB NVMe | Servidor fixo |
Fontes: páginas oficiais de preços do Zapier, do Make, do n8n e de VPS da Hostinger.
Três observações antes de decidir só pela tabela. Primeiro, o preço promocional da Hostinger é o total do plano dividido pelos meses contratados, e a renovação a cada 2 anos sai pelo valor cheio; planeje o custo pela renovação. Segundo, a página de hospedagem n8n da Hostinger anuncia "workflows e execuções ilimitados", mas o limite prático é o hardware: um fluxo pesado numa máquina pequena trava antes de qualquer cota. Terceiro, a licença paga Business do n8n, mesmo self-hosted, soma as execuções de todas as instâncias à cota contratada, segundo a página de preços do n8n; o custo fixo vale para a versão self-hosted padrão que o n8n mantém no GitHub.
O ponto de equilíbrio sai da tabela. No Zapier, 10.000 tarefas custam US$ 129 por mês no anual; o KVM 2 renova por R$ 77,99, e como o dólar vale mais que o real, a VPS sai mais barata sem conta de câmbio. Contra o Make é diferente: em 10.000 créditos, o Core custa US$ 9 por mês, no mesmo patamar do KVM 2, sem servidor para cuidar. Nesse volume o Make não perde para a VPS. A VPS compensa em três perfis: quem já paga a faixa de 10.000 tarefas do Zapier ou mais; quem roda fluxos com muitas etapas, porque cada ação de módulo consome crédito no Make; e quem não pode ver a automação parar quando os créditos acabam. A página do Make mostra preço só para 10.000 créditos; para volumes maiores, confira a tabela antes de decidir.
O custo que não aparece na tabela é o de operação: atualizar, fazer backup, olhar log quando um webhook falha. A própria documentação do n8n avisa: "n8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime." Esse tempo tem preço, seu ou de quem você contrata.
3. Arquitetura de referência para produção
O template da Hostinger "Ubuntu 24.04 com n8n" entrega o n8n pré-instalado em Docker e serve para começar em minutos. Para uma operação B2B que vai depender da automação, a arquitetura recomendada tem quatro camadas.
n8n em Docker
A imagem oficial é n8nio/n8n e escuta na porta 5678. O container precisa de um volume persistente para o diretório de dados do n8n: mesmo com banco externo, a documentação diz que ali ficam as chaves de criptografia e os logs da instância. Perder esse volume sem ter a chave guardada significa perder o acesso às credenciais salvas.
PostgreSQL em vez de SQLite
Por padrão o n8n grava credenciais, execuções e workflows em SQLite, um arquivo dentro do volume. Funciona para teste. Em produção, o PostgreSQL facilita backup consistente, aguenta mais escrita simultânea e é o banco que o n8n usou no teste de desempenho de instância única publicado na documentação. A troca é feita por variáveis de ambiente: DB_TYPE=postgresdb e as variáveis DB_POSTGRESDB_*.
Proxy reverso com SSL
O n8n não deve ficar exposto direto na internet. O guia oficial de Docker Compose usa o Traefik para emitir e renovar certificados TLS e deixa o n8n acessível só por HTTPS. Se a VPS já roda Nginx para outros sites, o Nginx cumpre o mesmo papel: recebe o tráfego no subdomínio, termina o SSL e repassa para a porta local do n8n. Webhooks de ERP, gateway de pagamento e CRM exigem HTTPS válido, então essa camada não é opcional.
Subdomínio e URL de webhook
O pré-requisito do guia oficial é um domínio ou subdomínio com registro A apontando para o IP da VPS. O n8n precisa saber esse endereço para gerar as URLs de webhook certas: N8N_HOST, N8N_PROTOCOL=https e N8N_WEBHOOK_URL, variável que existe a partir do n8n 2.30.0; em versões anteriores o nome é WEBHOOK_URL. Sem isso, o n8n gera webhooks com o endereço interno e o sistema externo nunca chega até ele.
4. Dimensionamento: quanta RAM e CPU o n8n pede
A documentação do n8n não publica um requisito mínimo de memória. O que ela publica é mais útil: o que faz a memória subir e um teste de referência. Na página de erros de memória, o n8n diz que "doesn't restrict the amount of data each node can fetch and process" e lista os fatores que pesam: volume de JSON, tamanho de arquivos binários, número de nós no workflow, uso do nó Code, execuções manuais (o n8n copia os dados para a interface) e workflows rodando ao mesmo tempo.
O teste de desempenho publicado na documentação usou uma única instância com 4 GB de RAM, n8n em modo main e PostgreSQL, e registrou até 220 execuções de workflow por segundo. Isso mostra que 4 GB rodam o n8n com folga para fluxos leves. Não mostra o comportamento com planilhas grandes, PDFs ou chamadas a modelos de IA, que é onde a memória estoura.
| Plano Hostinger | vCPU | RAM | NVMe | Preço lido em 12/10/2026 | Perfil de uso indicado |
|---|---|---|---|---|---|
| KVM 1 | 1 | 4 GB | 50 GB | R$ 29,99/mês (renova R$ 59,99) | n8n com SQLite ou fluxos leves, sem arquivos |
| KVM 2 | 2 | 8 GB | 100 GB | R$ 43,99/mês (renova R$ 77,99) | n8n, PostgreSQL e proxy na mesma máquina |
| KVM 4 | 4 | 16 GB | 200 GB | R$ 59,99/mês (renova R$ 149,99) | Arquivos grandes, muitos fluxos em paralelo |
| KVM 8 | 8 | 32 GB | 400 GB | R$ 119,99/mês (renova R$ 259,99) | Queue mode com vários workers |
Fonte das especificações e preços: página oficial de VPS da Hostinger. A coluna de perfil é recomendação minha a partir dos fatores de memória da documentação do n8n, não medição.
Para uma operação B2B com PostgreSQL no mesmo servidor, o KVM 2 é o ponto de partida sensato: o banco e o proxy também consomem memória, e a margem evita que um fluxo com anexo derrube os outros. A FAQ da Hostinger descreve o KVM 2 da mesma forma, como potência suficiente para aplicações de médio porte como o n8n.
Antes de subir de plano, ajuste o fluxo. A documentação do n8n recomenda dividir o processamento em lotes (o exemplo oficial troca 10.000 linhas por execução por 200), evitar o nó Code quando um nó nativo resolve, não testar volume grande em execução manual e quebrar o workflow em sub-workflows que devolvem pouco dado ao principal. Se ainda assim aparecer erro de heap, a variável NODE_OPTIONS com a flag --max-old-space-size aumenta a memória disponível para o Node.
Quando um servidor não basta, o n8n escala em queue mode: o teste multi-instância da documentação usa instâncias separadas para webhook e workers, com Redis. A Hostinger oferece um modelo de VPS específico para n8n em modo de fila.
5. Passo a passo na VPS Hostinger
O caminho abaixo segue o guia oficial de Docker Compose do n8n, com PostgreSQL e um proxy na frente. Se você usou o template pronto da Hostinger, os passos de DNS, proxy e validação continuam valendo.
5.1 Aponte o subdomínio
No painel do seu domínio, crie um registro A para o subdomínio (por exemplo n8n.suaempresa.com.br) com o IP da VPS. Confira se já propagou:
dig +short n8n.suaempresa.com.br
A resposta tem de ser o IP da VPS. Enquanto não for, o certificado SSL não sai.
5.2 Confira o Docker e gere os segredos
O guia oficial pede Docker Engine e Docker Compose instalados. Depois, crie a pasta do projeto e gere a chave de N8N_ENCRYPTION_KEY e a senha do banco direto no arquivo .env, sem imprimir os valores no terminal:
docker --version
docker compose version
mkdir -p ~/n8n && cd ~/n8n
echo "N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)" >> .env
echo "DB_POSTGRESDB_PASSWORD=$(openssl rand -hex 24)" >> .env
chmod 600 .env
Os valores não aparecem na saída do terminal. Abra o .env só na hora de copiar a chave e a senha para um cofre de senhas, fora do servidor.
5.3 Configure o banco e o endereço público
Na mesma pasta, acrescente ao .env as demais variáveis do PostgreSQL. Esse arquivo nunca vai para repositório.
DB_TYPE=postgresdb
DB_POSTGRESDB_HOST=postgres
DB_POSTGRESDB_DATABASE=n8n
DB_POSTGRESDB_USER=n8n
No mesmo arquivo, o endereço público e o fuso. Em versão do n8n anterior à 2.30.0, troque N8N_WEBHOOK_URL por WEBHOOK_URL.
N8N_HOST=n8n.suaempresa.com.br
N8N_PROTOCOL=https
N8N_WEBHOOK_URL=https://n8n.suaempresa.com.br/
GENERIC_TIMEZONE=America/Sao_Paulo
TZ=America/Sao_Paulo
5.4 Suba os containers
Parta do docker-compose.yml do guia oficial e acrescente um serviço postgres com volume próprio. No serviço do n8n, mantenha o volume de dados, aponte o env_file para o .env e publique a porta 5678 só em 127.0.0.1, para que apenas o proxy alcance o n8n.
sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs n8n --tail 50
Os dois containers precisam aparecer como em execução, e o log do n8n não pode mostrar erro de conexão com o banco.
5.5 Coloque o proxy e o SSL
Se você usa o Traefik do guia oficial, o certificado sai sozinho no primeiro acesso. Se a VPS já tem Nginx, crie um site para o subdomínio com este bloco, que repassa o tráfego e mantém a conexão em tempo real da interface do n8n:
location / {
proxy_pass http://127.0.0.1:5678;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
Depois emita o certificado e teste o endereço público:
sudo certbot --nginx -d n8n.suaempresa.com.br
curl -I https://n8n.suaempresa.com.br
O curl tem de responder com status 200 por HTTPS, sem aviso de certificado. Abra o endereço no navegador e crie a conta de dono da instância. No firewall da VPS, deixe abertos só SSH, HTTP e HTTPS.
6. Operação: o que mantém o n8n de pé
Subir é a parte curta. O que separa uma automação confiável de uma que some numa sexta à noite é a rotina.
Backup em duas partes. O dump do PostgreSQL guarda workflows, credenciais criptografadas e histórico. A N8N_ENCRYPTION_KEY guarda a capacidade de ler essas credenciais. Um sem o outro não restaura nada. Faça o dump diário para fora da VPS e teste a restauração numa máquina limpa pelo menos uma vez.
Limpeza do histórico de execuções. O n8n já limpa execuções antigas por padrão: apaga o que passou de 336 horas (14 dias) ou o que excede 10.000 execuções guardadas, segundo a documentação de dados de execução. Sem isso, o banco cresce até faltar disco. Se quiser deixar explícito no .env:
EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=336
EXECUTIONS_DATA_PRUNE_MAX_COUNT=10000
Atualização com janela. Atualizar é baixar a imagem nova e recriar o container pelo Compose. Faça depois do backup, fora do horário em que os webhooks de clientes chegam, e leia as notas de versão antes: a própria troca de WEBHOOK_URL para N8N_WEBHOOK_URL mostra que nome de variável muda entre versões.
Monitoramento mínimo. Configure um workflow de erro no n8n que avisa a equipe quando outro fluxo falha, e um monitor externo que acessa o subdomínio de tempos em tempos. Se o servidor cair, o monitor externo é o único que vai perceber.
Se a mesma VPS roda outras ferramentas, como agentes de IA, separe por container e acompanhe a memória total. O artigo sobre Claude Code 24/7 numa VPS Hostinger mostra esse outro uso do mesmo tipo de servidor.
7. Quando o n8n não basta e vale integração sob medida
O n8n é excelente para ligar sistemas que já têm API e conector. Ele começa a ser o lugar errado em quatro situações.
- A regra de negócio mora no canvas. Cálculo de preço, política de crédito ou regra fiscal espalhados em nós Code viram código sem teste, sem revisão e sem versionamento confiável. Regra crítica vai para um serviço próprio, e o n8n só chama esse serviço.
- O volume exige consistência. Quando um pedido não pode ser processado duas vezes nem se perder, você precisa de fila, idempotência e reprocessamento controlado. Dá para montar parte disso no n8n, mas um worker dedicado resolve com menos peças.
- O sistema do outro lado não tem conector. ERP legado, banco local ou portal sem API pedem um adaptador escrito para aquele sistema. O n8n consome o adaptador; não substitui.
- A equipe precisa de tela, não de fluxo. Aprovação, conferência e exceção pedem interface. Se a automação nasceu para substituir uma planilha que trava, o artigo sobre quando substituir planilha por sistema ajuda a ver se é hora de um painel.
O desenho que costuma funcionar em B2B é híbrido: n8n para orquestração e integrações simples, serviços próprios para regra crítica e conectores difíceis, tudo na mesma infraestrutura que você controla.
Prompt pronto para o seu agente
Cole o texto abaixo no agente de IA que tem acesso ao terminal da sua VPS (por SSH). Ele confere os pré-requisitos, executa os passos da seção 5 na mesma ordem e para no primeiro erro. Login no painel, criação do registro DNS e criação da conta de dono no navegador continuam com você.
Você vai instalar o n8n numa VPS Ubuntu com Docker, PostgreSQL, proxy e SSL.
Meus dados:
- Subdomínio: <SUBDOMINIO> (ex.: n8n.suaempresa.com.br)
- IP da VPS: <IP_DA_VPS>
- Proxy: <TRAEFIK_OU_NGINX>
Regras:
- Nunca imprima, cole no chat ou grave em arquivo versionado senha, token, chave de API ou código de login.
- A senha do banco e a N8N_ENCRYPTION_KEY vão só no arquivo .env do servidor; me diga onde estão, não o valor.
- Mostre cada comando antes de rodar e pare no erro exato, com a saída.
- Não invente comando, versão ou preço. Use só os comandos abaixo.
Pré-requisitos (confira antes de tudo):
1. Rode: dig +short <SUBDOMINIO>. A saída tem de ser <IP_DA_VPS>. Se não for, pare e me peça para criar o registro A no painel do domínio.
2. Rode: docker --version e docker compose version. Se faltar algum, pare e me avise.
Passos:
3. Rode: mkdir -p ~/n8n && cd ~/n8n. Depois, sem imprimir os valores: echo "N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)" >> .env, echo "DB_POSTGRESDB_PASSWORD=$(openssl rand -hex 24)" >> .env e chmod 600 .env. Nunca rode openssl rand sozinho nem mostre o conteúdo do .env. Me lembre de copiar a chave e a senha do .env para um cofre de senhas.
4. Acrescente ao .env: DB_TYPE=postgresdb, DB_POSTGRESDB_HOST=postgres, DB_POSTGRESDB_DATABASE=n8n, DB_POSTGRESDB_USER=n8n.
5. Acrescente ao .env: N8N_HOST=<SUBDOMINIO>, N8N_PROTOCOL=https, N8N_WEBHOOK_URL=https://<SUBDOMINIO>/, GENERIC_TIMEZONE=America/Sao_Paulo, TZ=America/Sao_Paulo. Se a versão do n8n for anterior à 2.30.0, use WEBHOOK_URL no lugar de N8N_WEBHOOK_URL.
6. Monte o docker-compose.yml a partir do guia oficial de Docker Compose do n8n, com um serviço postgres com volume próprio; no serviço n8n, mantenha o volume de dados, use env_file .env e publique a porta 5678 só em 127.0.0.1.
7. Rode: sudo docker compose up -d, depois sudo docker compose ps e sudo docker compose logs n8n --tail 50. Os dois containers têm de estar em execução e o log não pode ter erro de conexão com o banco.
8. Proxy:
- Se <TRAEFIK_OU_NGINX> for Traefik, use a configuração do guia oficial.
- Se for Nginx, crie o site do subdomínio com location / repassando para http://127.0.0.1:5678, proxy_http_version 1.1 e os cabeçalhos Upgrade e Connection "upgrade". Depois rode: sudo certbot --nginx -d <SUBDOMINIO>.
9. No firewall da VPS, deixe abertos só SSH, HTTP e HTTPS.
Passos que são meus (me avise quando chegar neles):
- Criar o registro A no painel do domínio.
- Abrir https://<SUBDOMINIO> no navegador e criar a conta de dono da instância.
- Copiar a N8N_ENCRYPTION_KEY e a senha do banco do .env para um cofre de senhas.
Validação final:
- Rode: curl -I https://<SUBDOMINIO>. Tem de responder status 200 por HTTPS, sem erro de certificado.
- Rode: sudo docker compose ps. n8n e postgres em execução.
Só diga que terminou quando as duas validações passarem. Me entregue um resumo com o que foi feito e onde ficou cada arquivo.
Perguntas frequentes
Quanto custa hospedar o n8n?
O custo principal é a VPS. Na página oficial da Hostinger, lida em 12/10/2026, o KVM 1 (4 GB de RAM) sai por R$ 29,99/mês e renova por R$ 59,99/mês; o KVM 2 (8 GB) sai por R$ 43,99/mês e renova por R$ 77,99/mês, com renovação a cada 2 anos. Some o domínio, que você provavelmente já tem, e o tempo de manutenção. Como comparação, o n8n Cloud Starter custa 20 euros por mês no plano anual com 2.500 execuções, segundo a página de preços do n8n.
Quantos GB de RAM o n8n precisa?
A documentação do n8n não fixa um mínimo. O teste de desempenho publicado por ela usou uma instância de 4 GB de RAM com PostgreSQL e chegou a 220 execuções por segundo. Na prática, 4 GB atendem fluxos leves; com PostgreSQL e proxy na mesma máquina e arquivos no meio do fluxo, 8 GB dão margem. O consumo sobe com volume de JSON, arquivos binários, nó Code e workflows simultâneos.
Posso usar o template de n8n da Hostinger em produção?
Pode como ponto de partida. O template "Ubuntu 24.04 com n8n" entrega o n8n em Docker já instalado. Antes de colocar processo de cliente em cima, confira qual banco ele usa, troque para PostgreSQL se estiver em SQLite, configure o subdomínio com SSL, as variáveis de webhook e o backup com a chave de criptografia.
SQLite ou PostgreSQL?
SQLite é o padrão do n8n e serve para testar. Para produção, PostgreSQL: backup consistente enquanto o n8n roda, melhor convivência com execuções simultâneas e é o banco do teste de desempenho de instância única da documentação. Ele também evita o problema do SQLite de não devolver espaço em disco sem rodar VACUUM.
O n8n na minha VPS tem limite de execuções?
A cobrança não. O limite passa a ser a capacidade da máquina: CPU, memória e disco. A exceção é a licença paga Business do n8n, que mesmo self-hosted soma as execuções de todas as instâncias à cota contratada, segundo a página de preços do n8n.
Conclusão
Hospedar o n8n numa VPS Hostinger troca uma fatura que cresce com o volume por um custo fixo de servidor. Ela compensa contra o Zapier na faixa de 10.000 tarefas e em fluxos de muitas etapas; contra o Make Core em 10.000 créditos o preço empata, e a vantagem é não parar quando a cota acaba. O preço disso é operação: PostgreSQL, proxy com SSL, backup com a chave de criptografia e atualização com janela. Comece no KVM 2 se banco e proxy ficarem na mesma máquina, ajuste os fluxos antes de subir de plano e leve a regra de negócio crítica para fora do canvas. Quando a automação passa a sustentar faturamento, estoque ou atendimento, ela merece o mesmo cuidado de um sistema sob medida.
Se o que você precisa é integração e fluxos automatizados de sistemas sob medida, com o seu ERP, a sua loja ou o seu CRM conversando por webhook e fila, descreve os sistemas e o que quer automatizar em oailton.dev/contato.