Calculadora de dois empréstimos
Coloque duas propostas de empréstimo lado a lado: 250.000 a 6,5% em 30 anos custam 1.580,17 por mês, enquanto a 5,9% em 15 anos custam 2.096,16 mas economizam 191.552,52 em juros. Veja qual vence na parcela e qual no custo total. 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
- Principal A
- 250.000
- Taxa anual A
- 6,5
- Prazo A (anos)
- 30
- Principal B
- 250.000
- Taxa anual B
- 5,9
- Prazo B (anos)
- 15
- Número de pagamentos A
- 360
- Pagamento A
- 1.580,17
- Total pago A
- 568.861,22
- Total de juros A
- 318.861,22
Escolher entre duas ofertas de empréstimo não é a mesma coisa que ler dois APRs. Uma cotação pode parecer mais barata todo mês porque dura mais; a outra pode parecer mais cara no papel e ainda assim economizar dezenas de milhares em juros vitalícios. Mutuários, consultores e equipes de produto precisam das duas cifras na mesma página antes de qualquer assinatura. Esta calculadora de comparação de dois empréstimos aceita duas ofertas independentes — cada uma com o próprio principal, taxa anual nominal em percentual e prazo em anos —, precifica cada uma como um calendário amortizável a taxa fixa e devolve a parcela periódica, o total pago e os juros totais dos dois lados, mais deltas com sinal e um vencedor no fluxo de caixa e um vencedor nos juros vitalícios.
O que uma comparação de dois empréstimos realmente responde
Uma oferta de empréstimo é um triplo: quanto você toma emprestado, que taxa anual paga e quanto tempo tem para quitar. Duas ofertas podem diferir em qualquer um desses três eixos, de modo que um único destaque — a parcela mensal ou o APR — não as classifica. Esticar uma hipoteca de quinze para trinta anos costuma reduzir a parcela e elevar os juros vitalícios, às vezes em mais do que o principal original.
Cortar a taxa em meio ponto no mesmo prazo faz o oposto em escala menor: parcela e juros caem. Misturar um refinanciamento com saque de capital, um principal maior e um prazo mais curto mistura os dois efeitos de uma vez. Esta calculadora isola esses efeitos ao precificar cada oferta como um empréstimo amortizável a taxa fixa.
Em cada período, os juros são calculados sobre o principal restante à taxa periódica contratual, e o restante da parcela reduz o principal. A parcela em forma fechada é o único valor constante que leva o saldo a zero após um número conhecido de pagamentos. Os juros totais são então a soma de todos os pagamentos menos o valor originalmente tomado.
Comparar esses dois pares — parcela A versus parcela B, e juros A versus juros B — é o lado a lado que famílias usam quando dois credores enviam folhas de condições, que consultores colocam em uma cotação de uma página e que landings de marketplace precisam ao lado de dois APRs concorrentes. Quando a parcela mais barata e os juros mais baratos pertencem a ofertas diferentes, o resultado não é um defeito: é o verdadeiro equilíbrio entre fluxo de caixa e custo de capital.
Quem compara duas propostas de empréstimo
Páginas de compra de hipotecas e financiamentos de veículos precisam de um lado a lado ao vivo ao lado de duas cotações para o visitante ver que uma parcela menor pode esconder uma conta vitalícia maior. Aplicativos de finanças pessoais e consultores percorrem o mesmo principal em dois prazos, ou duas taxas no mesmo prazo, e mostram qual oferta vence no fluxo de caixa versus qual vence nos juros. Mesas de refinanciamento comparam o contrato atual com uma oferta nova sem pedir que o mutuário reconstrua uma planilha.
Ferramentas de sala de aula e exame que ensinam amortização podem afirmar as duas parcelas e os dois juros vitalícios contra casos de livro com goldens arredondados estáveis. Esta ferramenta não produz uma tabela de amortização período a período, APR sob a Regulation Z, impostos, seguros, pontos nem trajetórias de taxa variável — apenas as duas parcelas a taxa fixa em forma fechada, seus juros vitalícios e a comparação entre elas.
Casos de uso
Hipoteca de quinze versus trinta anos
Mantenha principal e taxa fixos, altere só o prazo e mostre que a parcela mensal menor em trinta anos é paga com juros vitalícios bem maiores.
Folhas de condições de credores rivais
Coloque duas cotações — taxas diferentes, talvez principais diferentes após pontos ou saque de capital — em um único pedido e classifique-as por parcela e por juros totais.
Refinanciar versus permanecer
Trate o contrato atual como oferta A e o refinanciamento como oferta B para ver se a nova taxa e o novo prazo realmente economizam juros ou só reorganizam a conta mensal.
Perguntas frequentes
Como funciona a calculadora de comparação de dois empréstimos?
Cada oferta é precificada como um empréstimo amortizável a taxa fixa. A calculadora devolve as duas parcelas periódicas, os dois juros vitalícios, deltas com sinal (oferta B menos oferta A) e qual lado é mais barato na parcela e nos juros.
Por que uma oferta pode vencer na parcela e a outra nos juros?
Um prazo mais longo costuma reduzir a parcela periódica e elevar os juros totais. Os dois vencedores podem diferir; esse é o equilíbrio entre fluxo de caixa e custo de capital, não um erro.
Posso comparar pagamentos a cada duas semanas ou semanais?
Sim. Informe o número de pagamentos por ano, como 26 para a cada duas semanas ou 52 para semanais; ele vale para as duas propostas, que ficam no mesmo calendário. Cada prazo precisa resultar em um número inteiro de pagamentos.
Como leio as diferenças?
Elas são a proposta B menos a proposta A. No exemplo, a parcela de B é 515,99 maior por mês, enquanto seus juros totais são 191.552,52 menores; uma diferença de juros negativa significa que B economiza dinheiro.
As duas propostas podem ter valores diferentes?
Sim. Cada proposta tem seu próprio valor, taxa e prazo, então você pode comparar um empréstimo maior com um menor. A parcela e os juros de cada uma são calculados separadamente antes de mostrar as diferenças.
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/finance/loan-comparison \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"principal_a":250000,"annual_rate_a":6.5,"term_years_a":30,"principal_b":250000,"annual_rate_b":5.9,"term_years_b":15}'const res = await fetch("https://api.kit.forhosting.com/finance/loan-comparison", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"principal_a": 250000,
"annual_rate_a": 6.5,
"term_years_a": 30,
"principal_b": 250000,
"annual_rate_b": 5.9,
"term_years_b": 15
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/finance/loan-comparison",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"principal_a": 250000,
"annual_rate_a": 6.5,
"term_years_a": 30,
"principal_b": 250000,
"annual_rate_b": 5.9,
"term_years_b": 15
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/finance/loan-comparison", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"principal_a":250000,"annual_rate_a":6.5,"term_years_a":30,"principal_b":250000,"annual_rate_b":5.9,"term_years_b":15}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"principal_a":250000,"annual_rate_a":6.5,"term_years_a":30,"principal_b":250000,"annual_rate_b":5.9,"term_years_b":15}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/finance/loan-comparison", 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
{
"principal_a": 250000,
"annual_rate_a": 6.5,
"term_years_a": 30,
"principal_b": 250000,
"annual_rate_b": 5.9,
"term_years_b": 15
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "finance.loan_comparison",
"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.
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
Contrato de entrada, fórmula da parcela e campos de comparação
A mesma frequência vale para as duas ofertas, para a comparação ficar no mesmo calendário. Opcionalmente defina decimals de zero a oito para o arredondamento no estilo moeda (padrão dois). Envie um objeto JSON com seis números finitos obrigatórios: principal_a e principal_b maiores que zero (os valores tomados), annual_rate_a e annual_rate_b como percentuais nominais maiores ou iguais a zero (seis ponto cinco significa seis ponto cinco por cento ao ano, não uma fração decimal) e term_years_a e term_years_b maiores que zero. Opcionalmente defina payments_per_year como um inteiro de um a trezentos e sessenta e cinco (padrão doze para mensal; vinte e seis quinzenal, cinquenta e dois semanal, quatro trimestral ou um anual são comuns). Para cada oferta o motor forma payment_count como term_years vezes payments_per_year e exige que esse produto seja um número inteiro de pagamentos; calendários fracionários falham com invalid_input. A taxa periódica r é annual_rate sobre cem dividido por payments_per_year. Quando r é zero, cada parcela é principal dividido por payment_count e os juros totais são zero. Quando r é positivo, a parcela é principal vezes r vezes (um mais r) elevado a n, dividido por (um mais r) elevado a n menos um. total_paid é a parcela vezes n; total_interest é total_paid menos principal. A resposta ecoa os dois triplos, as duas contagens de pagamentos, as duas parcelas, os dois totais pagos e os dois juros vitalícios, e adiciona payment_delta e total_interest_delta como oferta B menos oferta A, de modo que um delta positivo significa que B custa mais. cheaper_by_payment e cheaper_by_interest valem a, b ou tie após o arredondamento. Campos ausentes, números não finitos, principais ou prazos não positivos, taxas negativas e inteiros fora da faixa falham com invalid_input e não são cobrados.
Onde uma API de comparação de dois empréstimos se paga
Originadores de marketplace preenchem os dois lados a partir de duas folhas de condições e precisam de um endpoint parse determinístico que coincida com amortizações de planilha sem um núcleo bancário. Como a implementação é parse puro de nível A, cada chamada bem-sucedida custa o preço-base publicado US$ 0,002 sem tokens de modelo e sem rede de saída, e a validação falha não consome saldo. Varra uma taxa ou um prazo no seu próprio código para montar uma tabela de deltas; fixe payment_a, payment_b e os dois campos total_interest nos testes; e mantenha as requisições pequenas.
Perguntas técnicas
Quais campos são obrigatórios?
principal_a, annual_rate_a, term_years_a, principal_b, annual_rate_b e term_years_b. payments_per_year tem padrão 12 (compartilhado pelas duas ofertas); decimals tem padrão 2.
annual_rate_a significa 0.065 ou 6.5 para 6.5%?
Use 6.5 para uma taxa nominal anual de 6.5% em qualquer uma das ofertas. O motor divide por 100 internamente antes de aplicar a taxa periódica.
Quanto custa a calculadora de comparação de dois empréstimos?
A ferramenta no navegador é gratuita. As requisições API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.