Tem basicamente três formas:
- estima a quantidade de horas, com margem de segurança e vê quanto quer receber por hora, o risco é seu de ganhar mais ou menos do que deveria
- vê a concorrência para fazer o mesmo e faz algo competitivo e assume o risco de receber muito bem ou menos do que deveria
- combina que o cliente pagará por hora que você relatar, o risco é dele pagar mais ou menos, mas é justo, a não ser que você demore de propósito ou por incapacidade.
Estimar é muito difícil.
Espero ter ajudado.
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).