No gratuitos acredito que o vercel e o Netlify seriam boas opções, porém perde a possibilidade de personalização do domínio, acredito ser uma boa opção se você está oferecendo seus serviços graça a fim de montar um portfólio, não tem custo financeiro para você, nem para seu cliente.
Cara nos pagos tudo pode ir pelo HostGator, Hostnet, dependendo da tua forma de trabalho é até mais vantagem pagar, uma vez que o custo para ti pode ser 0.
A parada é o seguinte:
Você como desenvolvedor pode comprar um plano de hospedagem por exemplo de 10 sites com uma mensalidade de R$ 50,00. Você constrói o site do seu cliente, hospeda nesse teu plano e cobra uma certa mensalidade do seu cliente a fim de manter essa hospedagem e também eventuais manutenções, logo se tu tem 10 sites no plano é só imaginar como fazer com as mensalidades se tiver 10 clientes, no final pode até gerar um lucro em cima disso.
Pontos importantes:
1 - O domínio é do seu cliente, ou seja, ele paga e fica com o domínio, tu pode fazer a gestão do domínio para efeitos de validade.
2 - O cliente pode querer migrar o site dele para oura plataforma, logo vai precisar de todos os recursos fontes que foram usados para construir o site.
3 - Se é um projeto de um cliente lembre-se que no GitHub deve ser privado, agora no teu portfólio legal ter o site exposto.
A maneira de colocar o site no Ar nessas plataformas que eu citei são muito intuitivas, além de terem vários tutoriais nos próprios serviços de hospedagem, basicamente tu vai precisar ter um arquivo index.html na pasta raiz do teu projeto.
Espero ter ajudado!