Calculadora de horas
Entrando às 09:00, saindo às 17:30 e com 30 minutos de almoço, você trabalhou exatamente 8 horas. Digite o início, o fim e a pausa não remunerada de um dia e receba as horas decimais para a folha de ponto. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Hora de início
- 09:00
- Hora de término
- 17:30
- Minutos de pausa
- 30
- Hora de início
- 09:00:00
- Hora de término
- 17:30:00
- Minutos decorridos
- 510
- Horas decorridas
- 8,5
Saber quantas horas você de fato trabalhou é uma tarefa de folha de pagamento e de cartão de ponto, não um enigma de calendário. Registra-se a entrada em um horário de início, a saída em um horário de fim, subtraem-se os minutos de almoço ou outra pausa não remunerada e o restante vira horas decimais para um ponto, uma fatura ou uma linha salarial. Esta calculadora de horas faz exatamente isso: lê um relógio de início e um relógio de fim no mesmo dia civil, subtrai minutos de pausa não negativos e devolve a duração líquida em horas. Não é uma ferramenta de diferença de datas, nem um estimador de hora extra, nem um somador de horas sobre a face de um relógio.
O que horas trabalhadas entre dois relógios realmente significam
Horas trabalhadas em um único dia são o tempo de relógio decorrido menos as pausas não remuneradas, escrito como uma contagem decimal de horas. Converta o relógio de início e o de fim em minutos depois da meia-noite, subtraia esses totais, subtraia os minutos de pausa e divida por sessenta. Das nove às dezessete e trinta há quinhentos e dez minutos decorridos; um almoço de trinta minutos deixa quatrocentos e oitenta minutos, que são exatamente oito horas.
Esse oito é o que uma célula de ponto, uma linha de fatura e a maioria dos sistemas de folha guardam. A mesma identidade é o que as pessoas querem ao buscar uma calculadora de horas: não uma conversão entre semanas e segundos, não somar cinco horas a uma face de relógio e não o intervalo com sinal entre dois datetimes ISO em dias civis diferentes. Escalas que cruzam a meia-noite pertencem a uma ferramenta de escala que também conhece a data civil seguinte.
Minutos de pausa negativos são recusados porque uma pausa não pode acrescentar tempo ao turno. Pausas mais longas que o intervalo batido também são recusadas, para que o resultado nunca seja uma duração negativa.
Onde uma calculadora de horas trabalhadas se justifica
Equipes horistas e contratados transformam um par de batidas em papel nas horas decimais que uma exportação de folha espera, depois de retirar o almoço, sem abrir uma planilha. Autônomos convertem um bloco de estúdio em horas faturáveis para uma linha de fatura que precisa coincidir com o ponto que o cliente já assinou. Quem lidera turnos confere se um início e um fim planejados menos um descanso obrigatório ainda equivalem à jornada contratada antes de publicar a escala.
Professores e sites de preparação para provas precisam de um oráculo determinístico que marque 09:00 a 17:30 menos trinta minutos como oito horas, não como oito e meia, e que falhe um par invertido em vez de virar em silêncio depois da meia-noite. Combine esta calculadora com uma ferramenta de hora extra quando você já souber as horas adicionais e a tarifa, e com um conversor de salário quando precisar da remuneração anual a partir de um valor por hora.
Casos de uso
Pares de batida para ponto e folha
Transforme uma entrada, uma saída e um almoço do mesmo dia em horas decimais que uma exportação de folha ou uma linha salarial possa guardar sem uma planilha.
Faturas avulsas e blocos de estúdio
Converta um início e um fim reservados menos uma pausa não remunerada em horas faturáveis que coincidam com o ponto que o cliente já assinou.
Perguntas frequentes
E se o horário de fim for anterior ao de início?
Esta calculadora é um par de batidas no mesmo dia: um fim que precede o início não é tratado como uma virada noturna.
Os minutos de pausa podem ser zero, omitidos ou uma fração?
Minutos fracionários são permitidos. Pausas negativas e pausas mais longas que a batida decorrida são recusadas.
Quais formatos de relógio a calculadora de horas aceita?
HH:MM ou HH:MM:SS de vinte e quatro horas de 00:00 a 23:59, e relógios de doze horas com AM ou PM.
Como os minutos viram horas decimais?
Os minutos líquidos são divididos por sessenta. Das 08:15 às 16:45 com 45 minutos de pausa você trabalhou 7,75 horas, porque esses 45 minutos valem três quartos de hora, e não 45 centésimos.
A calculadora também calcula o pagamento de horas extras?
Não. Ela só mostra as horas trabalhadas depois das pausas. Se você já sabe as horas extras e o valor, use uma calculadora de hora extra, e um conversor de salário se precisar do salário anual a partir do valor por hora.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/life/hours \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"start_time":"09:00","end_time":"17:30"}'const res = await fetch("https://api.kit.forhosting.com/life/hours", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"start_time": "09:00",
"end_time": "17:30"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/hours",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"start_time": "09:00",
"end_time": "17:30"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/hours", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"start_time":"09:00","end_time":"17:30"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"start_time":"09:00","end_time":"17:30"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/hours", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"start_time": "09:00",
"end_time": "17:30"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.hours",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_break_minutes | 100000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Se o relógio de fim precede o de início, ou se os minutos de pausa são negativos, a tarefa falha com invalid_input e não é cobrada. Chamadas API bem-sucedidas usam o preço-base publicado US$ 0,002.
O que horas trabalhadas entre dois relógios realmente significam
Este endpoint recusa um relógio de fim que precede o de início em vez de inventar uma virada noturna, porque a intenção de busca é um par de batidas no mesmo dia.
Contrato de entrada, forma da resposta e comportamento de erro
Exemplo: 08:15 a 16:45 menos 45 minutos gera hours 7.75. Relógios ausentes, uma face como 25:00 ou 9:70, um fim que precede o início, uma pausa negativa ou uma pausa mais longa que a batida são falhas tipadas e não são cobradas. Envie um corpo JSON com duas strings de relógio obrigatórias e uma pausa opcional. start_time é a face de entrada: HH:MM ou HH:MM:SS de vinte e quatro horas de 00:00 a 23:59, ou um relógio de doze horas com AM ou PM como 9:00 AM. Os aliases start, from e clock_in são aceitos para que planilhas e formulários tipados reutilizem o mesmo contrato. end_time é a face de saída nos mesmos formatos; os aliases end, to e clock_out são aceitos. break_minutes é um número finito não negativo de minutos não remunerados a subtrair; omita-o ou envie 0 para um bloco contínuo. Os aliases breaks, break e lunch são aceitos. Inteiros, decimais, notação científica e strings numéricas são interpretados para a pausa; booleanos, arrays, objetos, Infinity e NaN falham com invalid_input nomeando break_minutes. Em caso de sucesso o corpo ecoa start_time e end_time normalizados em vinte e quatro horas, o break_minutes analisado, elapsed_minutes e elapsed_hours antes da pausa, os minutos líquidos, o valor principal hours, os segundos líquidos, hours_hms como HH:MM:SS e uma string de fórmula curta. Exemplo: start_time 09:00, end_time 17:30, break_minutes 30 gera hours 8 e hours_hms 08:00:00.
Onde uma calculadora de horas trabalhadas se justifica
Nesta página o trabalho roda inteiramente no seu navegador; pela API cada batida bem-sucedida custa US$ 0,002, a validação que falha não é cobrada e nada é armazenado depois que a resposta retorna.
Casos de integração
Conferências de escala e gabaritos de prova
Afirme que um turno planejado menos o descanso equivale à jornada contratada e fixe valores golden de hours em fixtures que não podem depender do relógio da máquina.
Perguntas técnicas
Como calcular as horas trabalhadas entre dois horários?
Envie start_time e end_time como strings de relógio (09:00, 17:30:00 ou 5:30 PM) e, se quiser, break_minutes. A API devolve hours como duração decimal depois de subtrair a pausa não remunerada.
Quanto custa a calculadora de horas?
A ferramenta do navegador é gratuita. Pedidos API usam saldo pré-pago do KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.