Úvěrová a hypoteční kalkulačka 2025 - výpočet splátky hypotéky

Chcete-li si vzít hypotéku, je dobré vědět, jaké měsíční splátky vás v budoucnu čekají. Přesný výpočet splátky úvěru samozřejmě záleží na mnoha specifických faktorech, které mohou její výslednou výši ovlivnit. Naše online hypoteční kalkulačka vám však pomůže přiblížit se částce, kterou byste platili ve skutečnosti.

Jak na to? Naše kalkulačka hypotéky je velice jednoduchá a přehledná. Stačí zadat pouze tři základní údaje, kam patří celková výše úvěru, úroková sazba nabízená věřitelem a doba, po kterou budete hypotéku splácet. Jakmile všechna tato políčka vyplníte, klikněte na tlačítko „Spočítat“ a brzy se dozvíte, jaká bude výše měsíčních splátek ve vašem případě.

nápověda
Zadejte částku, kterou si chcete půjčit.
nápověda
Zadejte roční úrokovou sazbu, kterou vám věřitel nabízí.
nápověda
Napište čísly, kolik let chcete úvěr splácet.

Hypoteční úvěr

Spousta mladých i starších lidí si v dnešní době touží splnit sen o vlastním bydlení, ale jejich finanční možnosti na to zkrátka a jednoduše nestačí. Z toho důvodu se musí poohlédnout po jiném způsobu financování jejich vysněného domu, bytu či stavebního pozemku, přičemž mezi nejčastější řešení patří hypoteční úvěr.

Jako hypotéka se označuje půjčka, kterou žadateli poskytuje banka na základě zástavy nemovitosti. Touto zástavou může být právě nemovitost, k jejímuž financování je úvěr určený, ale také zcela jiná nemovitost, která nemá s úvěrem nic společného.

Hlavním důvodem, proč lidé o hypotéku žádají, bývá nákup či výstavba nemovitosti. Sjednání úvěru však může sloužit také ke zcela jiným účelům, jako je například:

  • financování nástavby, vestavby či přístavby,
  • financování rekonstrukce či modernizace nemovitosti,
  • zakoupení družstevního podílu, úhrada členského podílu,
  • zakoupení podílu nemovitostí z důvodu vypořádání spoluvlastnických a dědických podílů nebo společného jmění manželů,
  • refinancování hypotéky,
  • konsolidace neúčelových a účelových půjček.

Poskytováním hypotečních úvěrů se dnes zabývají především banky, kde mají jejich zprostředkování na starost finanční poradci a hypoteční makléři. Pro Českou republiku platí, že o hypotéku mohou žádat jak fyzické, tak i právnické osoby, a to na základě zástavy nemovitosti na území ČR. Zároveň si mohou vybrat, zda půjde o hypotéku účelovou či neúčelovou.

Americká hypotéka

Stejně jako běžný spotřebitelský úvěr můžete i americkou hypotéku použít prakticky na cokoliv. Jde o neúčelový hypoteční úvěr zajištěný zástavním právem k nemovitosti, který vás nijak výrazně neomezuje v tom, co si za peníze pořídíte. Kromě financování nemovitostí je tak možné americkou hypotéku využít také pro nákup automobilu či zaplacení cesty kolem světa.

V případě účelových úvěrů, kde banky vědí, k čemu financování slouží (bydlení), se obvykle dočkáte lepších podmínek než u neúčelových úvěrů. Ty mívají například vyšší úrokové sazby a maximální výše půjčky bývá často omezená bez ohledu na hodnotu nemovitosti.

Nebankovní hypotéka

Když se lidé snaží přijít na to, jaká je nejlepší hypotéka, kalkulačka určená pro srovnání úvěrů v jednotlivých bankách je může nepříjemně zaskočit. Často se totiž stává, že na klasický úvěr nedosáhnou nebo nesplňují podmínky hypotéky. Pokud je to i váš případ, můžete zvolit alternativní řešení v podobě nebankovní hypotéky. Musíte nicméně počítat s vyšší úrokovou sazbou, s dalšími poplatky za sjednání hypotéky, ale i s rizikem, že v případě neplacení můžete o nemovitost snadno přijít.

Další typy hypotečních úvěrů:

  • hypotéka bez dokládání příjmů,
  • hypotéka s neúčelovou částí,
  • hypotéka na pronájem,
  • předhypoteční úvěr,
  • hypoteční kontokorent,
  • kombinovaná hypotéka.

Výše úvěru a doba splatnosti

Ať už vás zajímá hypotéka na dům, hypotéka na byt nebo jiný typ hypotečního úvěru, jistě přemýšlíte také o tom, jak vysoký úvěr si můžete vzít a jak dlouho budete půjčené peníze vlastně splácet. Maximální výše hypotéky se v případě jednotlivých bankovních institucí liší, přičemž se u jednotlivých žadatelů posuzuje zejména schopnost vybranou hypotéku splácet. Musíte tedy prokázat, že jsou vaše příjmy dostatečné a měli byste mít také dobrou platební historii.

Pokud jde o splatnost hypotečního úvěru, ta se většinou pohybuje v rozmezí od 5 do 30 let. Zároveň platí, že čím delší dobu splatnosti si pak vyberete, tím nižší budou vaše splátky. Existuje také možnost sjednat si hypotéku s prodlouženou dobou splatnosti (na 40 let), což se ale samozřejmě pojí s určitými podmínkami.

Kalkulačka splátek

Pro výpočet hypotéky je zásadní také výška měsíčních splátek, které musí žadatel o úvěr pravidelně odvádět. Ty se mohou pro jednotlivé klienty lišit a podle způsobu jejich výpočtu se označují jako:

  • Splátky anuitní – jejich výše se během trvání úvěru nemění (nejčastěji využívaný typ).
  • Splátky progresivní – klient nejprve platí nižší měsíční splátky, postupně se však zvyšují.
  • Splátky degresivní – klient nejprve platí vyšší měsíční splátky, postupně se však snižují.

Když si chcete spočítat hypotéku, důležitý je také výpočet úroků. Ty jsou dané úrokovou sazbou, která udává, jakou finanční odměnu banka či věřitel za vypůjčení peněz požaduje. Právě z toho důvodu by se vám mohla hodit naše hypoteční a úvěrová kalkulačka, která provádí nejen výpočet splátky hypotéky, ale prozradí vám i celkovou částku, kterou společně s úroky nakonec zaplatíte.

Hypotéky 2025

Na rozdíl od toho, jak vypadala hypotéka 2019, nastaly v roce 2020 pro žadatele o úvěr významné změny. Bankovní rada České národní banky zmírnila doporučení pro posuzování nových hypoték a zvýšila limit ukazatele LTV, který označuje výši hypotéky v poměru k hodnotě zastavované nemovitosti, z 80 % na 90 %. Od dubna 2022 ČNB tento ukazatel snížila z 90 % zpět na 80 %, ale pro žadatele mladší 36 let zůstal na 90 %. 

Chcete si také pořídit vlastní bydlení a rádi byste věděli, jaká nejlevnější hypotéka je momentálně dostupná? Podívejte se na naši tabulku srovnání hypoték, kde najdete obecné porovnání celkových sazeb jednotlivých úvěrů.

Co je hypoteční úvěr?
Jako hypoteční úvěr (hypotéka) se označuje půjčka, kterou vám banka poskytne na základě zástavy nemovitosti. Tou může být nemovitost, která s úvěrem vůbec nesouvisí, ale klidně i nemovitost, k jejímuž financování bude úvěr sloužit.
Kdo si může hypotéku sjednat?
V České republice může o hypotéku zažádat fyzická i právnická osoba, přičemž je možné vybírat mezi hypotékou účelovou a hypotékou neúčelovou.
K čemu hypotéka slouží?
Hlavním důvodem, proč lidé žádají o hypotéku, bývá nákup či výstavba nemovitosti. Sjednat úvěr si však můžete také pro financování nástavby, vestavby či přístavby, pro financování rekonstrukce nebo modernizace nemovitosti, pro zakoupení družstevního podílu, pro refinancování hypotéky nebo třeba pro konsolidaci neúčelových a účelových půjček.
Jaké druhy splátek rozlišujeme?
Podle způsobu, jak se počítají, můžeme rozlišit tři různé druhy splátek. Prvním z nich jsou anuitní splátky, jejichž výše se během trvání úvěru nemění. Dále pak existují splátky progresivní, což znamená, že klient nejprve platí méně a suma postupem času narůstá, či splátky degresivní, které fungují opačně.
Jak funguje úvěrová kalkulačka?
Výpočet splátky hypotéky je velice jednoduchý. Kalkulačka půjčky zohledňuje tři základní údaje, a to konkrétně celkovou výši úvěru, úrokovou sazbu nabízenou věřitelem a dobu, po kterou se chystáte vaši hypotéku splácet. Po zadání těchto informací stačí už jen kliknout na tlačítko "Spočítat" a dozvíte se nejen to, jaká bude vaše měsíční splátka, ale i kolik v rámci dané hypotéky celkově zaplatíte.   
Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).
'; document.getElementById('outstream-iframe').onload = function () { setupIframe(); } replayScreen = document.getElementById('iinfoOutstreamReplay'); iinfoOutstreamPosition = document.getElementById('iinfoOutstreamPosition'); outstreamContainer = document.getElementsByClassName('outstream-container')[0]; setupReplayScreen(); } function setupIframe() { outstreamDocument = document.getElementById('outstream-iframe').contentWindow.document; let el = outstreamDocument.createElement('style'); outstreamDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:-5px;right:25px}"; videoContent = outstreamDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; if ( location.href.indexOf('rejstriky.finance.cz') !== -1 || location.href.indexOf('finance-rejstrik') !== -1 || location.href.indexOf('firmy.euro.cz') !== -1 || location.href.indexOf('euro-rejstrik') !== -1 || location.href.indexOf('/rejstrik/') !== -1 || location.href.indexOf('/rejstrik-firem/') !== -1) { outstreamDirectPlayed = true; soundAllowed = true; iinfoVastUrlIndex = 0; } if (!outstreamDirectPlayed) { console.log('OUTSTREAM direct'); setUpIMA(true); } else { if (soundAllowed) { const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('OUTSTREAM sound allowed'); setUpIMA(false); }).catch(function () { console.log('OUTSTREAM sound forbidden'); renderBanner(); }); } } else { renderBanner(); } } } function getWrapper() { let articleWrapper = document.querySelector('.rs-outstream-placeholder'); // Outstream Placeholder from RedSys manipulation if (articleWrapper && articleWrapper.style.display !== 'block') { articleWrapper.innerHTML = ""; articleWrapper.style.display = 'block'; } // Don't render OutStream on homepages if (articleWrapper === null) { if (document.querySelector('body.p-index')) { return null; } } if (articleWrapper === null) { articleWrapper = document.getElementById('iinfo-outstream'); } if (articleWrapper === null) { articleWrapper = document.querySelector('.layout-main__content .detail__article p:nth-of-type(6)'); } if (articleWrapper === null) { // Euro, Autobible, Zdravi articleWrapper = document.querySelector('.o-article .o-article__text p:nth-of-type(6)'); } if (articleWrapper === null) { articleWrapper = document.getElementById('sidebar'); } if (!articleWrapper) { console.error("Outstream wrapper of article was not found."); } return articleWrapper; } function setupDimensions() { outstreamWidth = Math.min(iinfoOutstreamPosition.offsetWidth, 480); outstreamHeight = Math.min(iinfoOutstreamPosition.offsetHeight, 320); } /** * Sets up IMA ad display container, ads loader, and makes an ad request. */ function setUpIMA(direct) { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); if (direct) { adsRequest.adTagUrl = directVast; console.log('Outstream DIRECT CAMPAING advert: ' + directVast); videoContent.muted = true; videoContent.volume = 0; outstreamDirectPlayed = true; } else { adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Outstream advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; } // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = outstreamWidth; // adsRequest.linearAdSlotHeight = outstreamHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function setupReplayScreen() { replayScreen.addEventListener('click', function () { iinfoOutstreamPosition.remove(); iinfoVastUrlIndex = 0; outstreamInit(); }); } /** * Sets the 'adContainer' div as the IMA ad display container. */ function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. outstreamDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( outstreamDocument.getElementById('adContainer'), videoContent); } function unmuteAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); outstreamDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); outstreamDocument.getElementById('adMuteBtn').innerHTML = ''; } } /** * Loads the video content and initializes IMA ad playback. */ function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(outstreamWidth, outstreamHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } /** * Handles the ad manager loading and sets ad event listeners. * @param { !google.ima.AdsManagerLoadedEvent } adsManagerLoadedEvent */ function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } /** * Handles actions taken in response to ad events. * @param { !google.ima.AdEvent } adEvent */ function onAdEvent(adEvent) { // Retrieve the ad from the event. Some events (for example, // ALL_ADS_COMPLETED) don't have ad object associated. const ad = adEvent.getAd(); console.log('Outstream event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: // This is the first event sent for an ad - it is possible to // determine whether the ad is a video ad or an overlay. if (!ad.isLinear()) { // Position AdDisplayContainer correctly for overlay. // Use ad.width and ad.height. videoContent.play(); } outstreamDocument.getElementById('adContainer').style.width = '100%'; outstreamDocument.getElementById('adContainer').style.maxWidth = '640px'; outstreamDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); // This event indicates the ad has started - the video player // can adjust the UI, for example display a pause button and // remaining time. if (ad.isLinear()) { // For a linear ad, a timer can be started to poll for // the remaining time. intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } outstreamDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (outstreamLastError === 303) { if (isBanner) { renderBanner(); } else { replayScreen.style.display = 'flex'; } } break; case google.ima.AdEvent.Type.COMPLETE: // This event indicates the ad has finished - the video player // can perform appropriate UI actions, such as removing the timer for // remaining time detection. if (ad.isLinear()) { clearInterval(intervalTimer); } if (isBanner) { renderBanner(); } else { replayScreen.style.display = 'flex'; } break; } } /** * Handles ad errors. * @param { !google.ima.AdErrorEvent } adErrorEvent */ function onAdError(adErrorEvent) { // Handle the error logging. console.log(adErrorEvent.getError()); outstreamLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { renderBanner(); } } function renderBanner() { if (isBanner) { console.log('Outstream: Render Banner'); iinfoOutstreamPosition.innerHTML = ""; iinfoOutstreamPosition.style.height = "330px"; iinfoOutstreamPosition.appendChild(bannerDiv); } else { console.log('Outstream: Banner is not set'); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoOutstreamPosition.remove(); outstreamInit(); } else { return false; } adVolume = 1; return true; } /** * Pauses video content and sets up ad UI. */ function onContentPauseRequested() { videoContent.pause(); // This function is where you should setup UI for showing ads (for example, // display ad timer countdown, disable seeking and more.) // setupUIForAds(); } /** * Resumes video content and removes ad UI. */ function onContentResumeRequested() { videoContent.play(); // This function is where you should ensure that your UI is ready // to play content. It is the responsibility of the Publisher to // implement this function when necessary. // setupUIForContent(); } function onActiveView() { if (outstreamContainer) { const containerOffset = outstreamContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (outstreamPaused) { adsManager.resume(); outstreamPaused = false; } return true; } else { if (!outstreamPaused) { adsManager.pause(); outstreamPaused = true; } } } return false; } let outstreamInitInterval; if (typeof cpexPackage !== "undefined") { outstreamInitInterval = setInterval(tryToInitializeOutstream, 100); } else { const wrapper = getWrapper(); if (wrapper) { let outstreamInitialized = false; window.addEventListener('scroll', () => { if (!outstreamInitialized) { const containerOffset = wrapper.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { outstreamInit(); outstreamInitialized = true; } } }); } } function tryToInitializeOutstream() { const wrapper = getWrapper(); if (wrapper) { const containerOffset = wrapper.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { if (cpexPackage.adserver.displayed) { clearInterval(outstreamInitInterval); outstreamInit(); } } } else { clearInterval(outstreamInitInterval); } } }