{"id":22295,"date":"2026-09-03T12:24:07","date_gmt":"2026-09-03T18:24:07","guid":{"rendered":"https:\/\/pontiusrealty.com\/?page_id=22295"},"modified":"2026-09-03T14:21:30","modified_gmt":"2026-09-03T20:21:30","slug":"mortgage-calculator","status":"publish","type":"page","link":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/","title":{"rendered":"Mortgage Calculator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"22295\" class=\"elementor elementor-22295\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d81817c pontius-credit-page e-con-full e-flex e-con e-parent\" data-id=\"d81817c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-f9daa14 e-con-full pontius-credit-main e-flex e-con e-child\" data-id=\"f9daa14\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d2b8f52 pontius-credit-widget elementor-widget elementor-widget-html\" data-id=\"d2b8f52\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"pontius-credit-page\">\n\n    <!-- =========================================\n         HERO\n    ========================================== -->\n\n    <section class=\"pontius-credit-hero\">\n\n        <div class=\"pontius-credit-eyebrow\">\n            MORTGAGE CALCULATOR\n        <\/div>\n\n        <h1 class=\"pontius-credit-title\">\n            Estimate your monthly payment\n        <\/h1>\n\n        <p class=\"pontius-credit-intro\">\n            Estimate your mortgage payment and explore what property price could\n            fit your budget based on your down payment, loan term and estimated interest rate.\n        <\/p>\n\n    <\/section>\n\n\n    <!-- =========================================\n         TOOL\n    ========================================== -->\n\n    <div class=\"pontius-mortgage-tool\">\n\n\n        <!-- TABS -->\n\n        <div class=\"pontius-calculator-tabs\">\n\n            <button\n                type=\"button\"\n                class=\"pontius-tab active\"\n                data-target=\"pontiusMonthlyPanel\">\n                Calculate monthly payment\n            <\/button>\n\n            <button\n                type=\"button\"\n                class=\"pontius-tab\"\n                data-target=\"pontiusBudgetPanel\">\n                How much can I afford per month?\n            <\/button>\n\n        <\/div>\n\n\n        <!-- =========================================\n             PANEL 1\n             MONTHLY PAYMENT\n        ========================================== -->\n\n        <div\n            class=\"pontius-calculator-panel active\"\n            id=\"pontiusMonthlyPanel\">\n\n            <div class=\"pontius-calculator-grid\">\n\n\n                <!-- FORM -->\n\n                <div class=\"pontius-calculator-form\">\n\n                    <div class=\"pontius-calculator-heading\">\n\n                        <h2>\n                            Enter your loan details\n                        <\/h2>\n\n                        <p>\n                            Adjust the values to get an estimate.\n                        <\/p>\n\n                    <\/div>\n\n\n                    <!-- CURRENCY -->\n\n                    <div class=\"pontius-field\">\n\n                        <label>\n                            Currency\n                        <\/label>\n\n                        <div class=\"pontius-currency-toggle\">\n\n                            <button\n                                type=\"button\"\n                                class=\"pontius-currency active\"\n                                data-currency=\"MXN\">\n                                MXN\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                class=\"pontius-currency\"\n                                data-currency=\"USD\">\n                                USD\n                            <\/button>\n\n                        <\/div>\n\n                    <\/div>\n\n\n                    <!-- PROPERTY PRICE -->\n\n                    <div class=\"pontius-field\">\n\n                        <label for=\"pontiusPropertyPrice\">\n                            Property price\n                        <\/label>\n\n                        <div class=\"pontius-input-money\">\n\n                            <span class=\"pontius-money-symbol\">\n                                $\n                            <\/span>\n\n                            <input\n                                type=\"text\"\n                                inputmode=\"numeric\"\n                                id=\"pontiusPropertyPrice\"\n                                value=\"4,000,000\"\n                                autocomplete=\"off\"\n                            >\n\n                            <span\n                                class=\"pontius-currency-label\"\n                                id=\"pontiusPriceCurrency\">\n                                MXN\n                            <\/span>\n\n                        <\/div>\n\n                    <\/div>\n\n\n                    <!-- DOWN PAYMENT -->\n\n                    <div class=\"pontius-field\">\n\n                        <div class=\"pontius-field-heading\">\n\n                            <label for=\"pontiusDownPayment\">\n                                Down payment\n                            <\/label>\n\n                            <div class=\"pontius-percentage-box\">\n\n                                <input\n                                    type=\"number\"\n                                    id=\"pontiusDownPaymentNumber\"\n                                    value=\"20\"\n                                    min=\"5\"\n                                    max=\"90\"\n                                    step=\"1\"\n                                >\n\n                                <span>%<\/span>\n\n                            <\/div>\n\n                        <\/div>\n\n\n                        <input\n                            type=\"range\"\n                            id=\"pontiusDownPayment\"\n                            class=\"pontius-range\"\n                            min=\"5\"\n                            max=\"90\"\n                            value=\"20\"\n                            step=\"1\"\n                        >\n\n\n                        <div class=\"pontius-range-labels\">\n                            <span>5%<\/span>\n                            <span>90%<\/span>\n                        <\/div>\n\n\n                        <div class=\"pontius-field-helper\">\n\n                            Estimated down payment:\n\n                            <strong id=\"pontiusDownPaymentAmount\">\n                                $800,000 MXN\n                            <\/strong>\n\n                        <\/div>\n\n                    <\/div>\n\n\n                    <!-- TERM -->\n\n                    <div class=\"pontius-field\">\n\n                        <label>\n                            Loan term\n                        <\/label>\n\n                        <div class=\"pontius-term-options\">\n\n                            <button\n                                type=\"button\"\n                                data-years=\"5\">\n                                5\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"10\">\n                                10\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"15\">\n                                15\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"20\"\n                                class=\"active\">\n                                20\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"25\">\n                                25 years\n                            <\/button>\n\n                        <\/div>\n\n                        <input\n                            type=\"hidden\"\n                            id=\"pontiusTerm\"\n                            value=\"20\"\n                        >\n\n                    <\/div>\n\n\n                    <!-- INTEREST RATE -->\n\n                    <div class=\"pontius-field\">\n\n                        <label for=\"pontiusInterestRate\">\n                            Estimated annual interest rate\n                        <\/label>\n\n                        <div class=\"pontius-input-percent\">\n\n                            <input\n                                type=\"number\"\n                                id=\"pontiusInterestRate\"\n                                value=\"10.5\"\n                                min=\"0\"\n                                max=\"30\"\n                                step=\"0.1\"\n                            >\n\n                            <span>%<\/span>\n\n                        <\/div>\n\n                        <p class=\"pontius-input-note\">\n                            You can adjust the rate based on the financing\n                            option you are considering.\n                        <\/p>\n\n                    <\/div>\n\n                <\/div>\n\n\n                <!-- =========================================\n                     RESULTS\n                ========================================== -->\n\n                <div class=\"pontius-calculator-results\">\n\n                    <div class=\"pontius-results-label\">\n                        YOUR ESTIMATE\n                    <\/div>\n\n\n                    <div class=\"pontius-main-result\">\n\n                        <span>\n                            Estimated monthly payment\n                        <\/span>\n\n                        <strong id=\"pontiusMonthlyPayment\">\n                            $31,948\n                        <\/strong>\n\n                        <small id=\"pontiusMonthlyCurrency\">\n                            MXN \/ month\n                        <\/small>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-divider\"><\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Loan amount\n                        <\/span>\n\n                        <strong id=\"pontiusLoanAmount\">\n                            $3,200,000 MXN\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Down payment\n                        <\/span>\n\n                        <strong id=\"pontiusResultDownPayment\">\n                            $800,000 MXN\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Loan term\n                        <\/span>\n\n                        <strong id=\"pontiusResultTerm\">\n                            20 years\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Annual interest rate\n                        <\/span>\n\n                        <strong id=\"pontiusResultRate\">\n                            10.5%\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <!-- BUTTONS -->\n\n                    <div class=\"pontius-results-actions\">\n\n                        <a\n                            href=\"\/en\/properties\/\"\n                            class=\"pontius-primary-button\">\n                            View properties\n                        <\/a>\n\n\n                        <a\n                            href=\"https:\/\/wa.link\/qgapju\"\n                            class=\"pontius-advisor-button\"\n                            target=\"_blank\"\n                            rel=\"noopener noreferrer\">\n\n                            <svg\n                                viewBox=\"0 0 24 24\"\n                                aria-hidden=\"true\">\n\n                                <path\n                                    d=\"M20.52 3.48A11.8 11.8 0 0 0 12.08 0C5.5 0 .15 5.35.15 11.93c0 2.1.55 4.16 1.6 5.97L.05 24l6.24-1.64a11.9 11.9 0 0 0 5.78 1.47h.01c6.58 0 11.93-5.35 11.93-11.93 0-3.19-1.24-6.18-3.49-8.42ZM12.08 21.8h-.01a9.86 9.86 0 0 1-5.03-1.38l-.36-.21-3.7.97.99-3.61-.24-.37a9.85 9.85 0 1 1 8.35 4.6Zm5.4-7.38c-.3-.15-1.75-.86-2.02-.96-.27-.1-.47-.15-.67.15-.2.3-.77.96-.94 1.16-.17.2-.35.22-.65.07-.3-.15-1.25-.46-2.38-1.47-.88-.78-1.47-1.75-1.64-2.05-.17-.3-.02-.46.13-.61.13-.13.3-.35.44-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.08-.15-.67-1.61-.91-2.2-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48 0 1.46 1.07 2.87 1.21 3.07.15.2 2.1 3.2 5.08 4.49.71.31 1.27.49 1.7.63.71.23 1.36.19 1.87.12.57-.08 1.75-.72 2-1.41.25-.7.25-1.29.17-1.41-.07-.13-.27-.2-.57-.35Z\"\n                                \/>\n\n                            <\/svg>\n\n                            <span>\n                                Talk to an advisor\n                            <\/span>\n\n                        <\/a>\n\n                    <\/div>\n\n                <\/div>\n\n            <\/div>\n\n        <\/div>\n\n\n        <!-- =========================================\n             PANEL 2\n             AFFORDABILITY\n        ========================================== -->\n\n        <div\n            class=\"pontius-calculator-panel\"\n            id=\"pontiusBudgetPanel\">\n\n            <div class=\"pontius-calculator-grid\">\n\n\n                <!-- FORM -->\n\n                <div class=\"pontius-calculator-form\">\n\n                    <div class=\"pontius-calculator-heading\">\n\n                        <h2>\n                            Set your monthly payment\n                        <\/h2>\n\n                        <p>\n                            Get an estimate of the property price\n                            that could fit your budget.\n                        <\/p>\n\n                    <\/div>\n\n\n                    <!-- CURRENCY -->\n\n                    <div class=\"pontius-field\">\n\n                        <label>\n                            Currency\n                        <\/label>\n\n                        <div class=\"pontius-budget-currency-toggle\">\n\n                            <button\n                                type=\"button\"\n                                class=\"pontius-budget-currency active\"\n                                data-currency=\"MXN\">\n                                MXN\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                class=\"pontius-budget-currency\"\n                                data-currency=\"USD\">\n                                USD\n                            <\/button>\n\n                        <\/div>\n\n                    <\/div>\n\n\n                    <!-- MONTHLY PAYMENT -->\n\n                    <div class=\"pontius-field\">\n\n                        <label for=\"pontiusAffordableMonthly\">\n                            How much would you like to pay per month?\n                        <\/label>\n\n                        <div class=\"pontius-input-money\">\n\n                            <span class=\"pontius-money-symbol\">\n                                $\n                            <\/span>\n\n                            <input\n                                type=\"text\"\n                                inputmode=\"numeric\"\n                                id=\"pontiusAffordableMonthly\"\n                                value=\"30,000\"\n                                autocomplete=\"off\"\n                            >\n\n                            <span\n                                class=\"pontius-currency-label\"\n                                id=\"pontiusAffordableCurrencyLabel\">\n                                MXN\n                            <\/span>\n\n                        <\/div>\n\n                    <\/div>\n\n\n                    <!-- DOWN PAYMENT -->\n\n                    <div class=\"pontius-field\">\n\n                        <div class=\"pontius-field-heading\">\n\n                            <label for=\"pontiusAffordableDownRange\">\n                                Down payment\n                            <\/label>\n\n                            <div class=\"pontius-percentage-box\">\n\n                                <input\n                                    type=\"number\"\n                                    id=\"pontiusAffordableDown\"\n                                    value=\"20\"\n                                    min=\"5\"\n                                    max=\"90\"\n                                    step=\"1\"\n                                >\n\n                                <span>%<\/span>\n\n                            <\/div>\n\n                        <\/div>\n\n\n                        <input\n                            type=\"range\"\n                            id=\"pontiusAffordableDownRange\"\n                            class=\"pontius-range\"\n                            min=\"5\"\n                            max=\"90\"\n                            value=\"20\"\n                            step=\"1\"\n                        >\n\n\n                        <div class=\"pontius-range-labels\">\n                            <span>5%<\/span>\n                            <span>90%<\/span>\n                        <\/div>\n\n\n                        <div class=\"pontius-field-helper\">\n\n                            Estimated down payment:\n\n                            <strong id=\"pontiusAffordableDownAmount\">\n                                $751,217 MXN\n                            <\/strong>\n\n                        <\/div>\n\n                    <\/div>\n\n\n                    <!-- TERM -->\n\n                    <div class=\"pontius-field\">\n\n                        <label>\n                            Loan term\n                        <\/label>\n\n                        <div class=\"pontius-affordable-term-options\">\n\n                            <button\n                                type=\"button\"\n                                data-years=\"5\">\n                                5\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"10\">\n                                10\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"15\">\n                                15\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"20\"\n                                class=\"active\">\n                                20\n                            <\/button>\n\n                            <button\n                                type=\"button\"\n                                data-years=\"25\">\n                                25 years\n                            <\/button>\n\n                        <\/div>\n\n                        <input\n                            type=\"hidden\"\n                            id=\"pontiusAffordableTerm\"\n                            value=\"20\"\n                        >\n\n                    <\/div>\n\n\n                    <!-- RATE -->\n\n                    <div class=\"pontius-field\">\n\n                        <label for=\"pontiusAffordableRate\">\n                            Estimated annual interest rate\n                        <\/label>\n\n                        <div class=\"pontius-input-percent\">\n\n                            <input\n                                type=\"number\"\n                                id=\"pontiusAffordableRate\"\n                                value=\"10.5\"\n                                min=\"0\"\n                                max=\"30\"\n                                step=\"0.1\"\n                            >\n\n                            <span>%<\/span>\n\n                        <\/div>\n\n                    <\/div>\n\n                <\/div>\n\n\n                <!-- =========================================\n                     BUDGET RESULTS\n                ========================================== -->\n\n                <div class=\"pontius-calculator-results\">\n\n                    <div class=\"pontius-results-label\">\n                        YOUR ESTIMATED BUDGET\n                    <\/div>\n\n\n                    <div class=\"pontius-main-result\">\n\n                        <span>\n                            Estimated property price\n                        <\/span>\n\n                        <strong id=\"pontiusAffordableProperty\">\n                            $3,756,085\n                        <\/strong>\n\n                        <small id=\"pontiusAffordablePropertyCurrency\">\n                            MXN\n                        <\/small>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-divider\"><\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Monthly payment\n                        <\/span>\n\n                        <strong id=\"pontiusBudgetMonthlyResult\">\n                            $30,000 MXN\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Estimated loan amount\n                        <\/span>\n\n                        <strong id=\"pontiusBudgetLoanResult\">\n                            $3,004,868 MXN\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Estimated down payment\n                        <\/span>\n\n                        <strong id=\"pontiusBudgetDownResult\">\n                            $751,217 MXN\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <div class=\"pontius-result-row\">\n\n                        <span>\n                            Loan term\n                        <\/span>\n\n                        <strong id=\"pontiusBudgetTermResult\">\n                            20 years\n                        <\/strong>\n\n                    <\/div>\n\n\n                    <!-- BUTTONS -->\n\n                    <div class=\"pontius-results-actions\">\n\n                        <a\n                            href=\"\/en\/properties\/\"\n                            class=\"pontius-primary-button\">\n                            Explore properties\n                        <\/a>\n\n\n                        <a\n                            href=\"https:\/\/wa.link\/qgapju\"\n                            class=\"pontius-advisor-button\"\n                            target=\"_blank\"\n                            rel=\"noopener noreferrer\">\n\n                            <svg\n                                viewBox=\"0 0 24 24\"\n                                aria-hidden=\"true\">\n\n                                <path\n                                    d=\"M20.52 3.48A11.8 11.8 0 0 0 12.08 0C5.5 0 .15 5.35.15 11.93c0 2.1.55 4.16 1.6 5.97L.05 24l6.24-1.64a11.9 11.9 0 0 0 5.78 1.47h.01c6.58 0 11.93-5.35 11.93-11.93 0-3.19-1.24-6.18-3.49-8.42ZM12.08 21.8h-.01a9.86 9.86 0 0 1-5.03-1.38l-.36-.21-3.7.97.99-3.61-.24-.37a9.85 9.85 0 1 1 8.35 4.6Zm5.4-7.38c-.3-.15-1.75-.86-2.02-.96-.27-.1-.47-.15-.67.15-.2.3-.77.96-.94 1.16-.17.2-.35.22-.65.07-.3-.15-1.25-.46-2.38-1.47-.88-.78-1.47-1.75-1.64-2.05-.17-.3-.02-.46.13-.61.13-.13.3-.35.44-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.08-.15-.67-1.61-.91-2.2-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48 0 1.46 1.07 2.87 1.21 3.07.15.2 2.1 3.2 5.08 4.49.71.31 1.27.49 1.7.63.71.23 1.36.19 1.87.12.57-.08 1.75-.72 2-1.41.25-.7.25-1.29.17-1.41-.07-.13-.27-.2-.57-.35Z\"\n                                \/>\n\n                            <\/svg>\n\n                            <span>\n                                Talk to an advisor\n                            <\/span>\n\n                        <\/a>\n\n                    <\/div>\n\n                <\/div>\n\n            <\/div>\n\n        <\/div>\n\n\n        <!-- =========================================\n             DISCLAIMER\n        ========================================== -->\n\n        <div class=\"pontius-calculator-disclaimer\">\n\n            <strong>\n                Informational estimate only.\n            <\/strong>\n\n            Results include principal and interest only.\n            Final rates, insurance, fees, financing percentages and approved\n            amounts depend on the financial institution and the applicant\u2019s profile.\n\n        <\/div>\n\n    <\/div>\n\n<\/div>\n\n\n<!-- ==========================================================\n     JAVASCRIPT\n========================================================== -->\n\n<script>\n\ndocument.addEventListener(\"DOMContentLoaded\", function () {\n\n\n    \/* ==================================================\n       GENERAL FUNCTIONS\n    ================================================== *\/\n\n    function limpiarNumero(valor) {\n\n        return Number(\n            String(valor).replace(\/[^\\d.]\/g, \"\")\n        ) || 0;\n\n    }\n\n\n    function formatearDinero(valor) {\n\n        return new Intl.NumberFormat(\n            \"en-US\",\n            {\n                maximumFractionDigits: 0\n            }\n        ).format(valor);\n\n    }\n\n\n    function formatearCampo(input) {\n\n        const valor =\n            limpiarNumero(input.value);\n\n        input.value =\n            formatearDinero(valor);\n\n    }\n\n\n    function actualizarBarra(elemento) {\n\n        const minimo =\n            Number(elemento.min);\n\n        const maximo =\n            Number(elemento.max);\n\n        const valor =\n            Number(elemento.value);\n\n        const porcentaje =\n            (\n                (valor - minimo) \/\n                (maximo - minimo)\n            ) * 100;\n\n\n        elemento.style.background =\n            `linear-gradient(\n                to right,\n                #c40000 0%,\n                #c40000 ${porcentaje}%,\n                #e3e7ec ${porcentaje}%,\n                #e3e7ec 100%\n            )`;\n\n    }\n\n\n    \/* ==================================================\n       TABS\n    ================================================== *\/\n\n    const tabs =\n        document.querySelectorAll(\n            \".pontius-tab\"\n        );\n\n    const panels =\n        document.querySelectorAll(\n            \".pontius-calculator-panel\"\n        );\n\n\n    tabs.forEach(function(tab) {\n\n        tab.addEventListener(\n            \"click\",\n            function() {\n\n                tabs.forEach(\n                    function(item) {\n                        item.classList.remove(\n                            \"active\"\n                        );\n                    }\n                );\n\n\n                panels.forEach(\n                    function(panel) {\n                        panel.classList.remove(\n                            \"active\"\n                        );\n                    }\n                );\n\n\n                tab.classList.add(\n                    \"active\"\n                );\n\n\n                const target =\n                    document.getElementById(\n                        tab.dataset.target\n                    );\n\n\n                if (target) {\n                    target.classList.add(\n                        \"active\"\n                    );\n                }\n\n            }\n        );\n\n    });\n\n\n    \/* ==================================================\n       CALCULATOR 1\n    ================================================== *\/\n\n    const precio =\n        document.getElementById(\n            \"pontiusPropertyPrice\"\n        );\n\n    const engancheBarra =\n        document.getElementById(\n            \"pontiusDownPayment\"\n        );\n\n    const engancheNumero =\n        document.getElementById(\n            \"pontiusDownPaymentNumber\"\n        );\n\n    const tasa =\n        document.getElementById(\n            \"pontiusInterestRate\"\n        );\n\n    const plazo =\n        document.getElementById(\n            \"pontiusTerm\"\n        );\n\n    const mensualidadResultado =\n        document.getElementById(\n            \"pontiusMonthlyPayment\"\n        );\n\n    const monedaMensualidad =\n        document.getElementById(\n            \"pontiusMonthlyCurrency\"\n        );\n\n    const creditoResultado =\n        document.getElementById(\n            \"pontiusLoanAmount\"\n        );\n\n    const engancheCantidad =\n        document.getElementById(\n            \"pontiusDownPaymentAmount\"\n        );\n\n    const engancheResultado =\n        document.getElementById(\n            \"pontiusResultDownPayment\"\n        );\n\n    const plazoResultado =\n        document.getElementById(\n            \"pontiusResultTerm\"\n        );\n\n    const tasaResultado =\n        document.getElementById(\n            \"pontiusResultRate\"\n        );\n\n    const monedaPrecio =\n        document.getElementById(\n            \"pontiusPriceCurrency\"\n        );\n\n\n    let moneda =\n        \"MXN\";\n\n\n    function calcularCredito() {\n\n        const precioPropiedad =\n            limpiarNumero(\n                precio.value\n            );\n\n\n        const porcentajeEnganche =\n            Number(\n                engancheBarra.value\n            ) || 0;\n\n\n        const tasaAnual =\n            Number(\n                tasa.value\n            ) || 0;\n\n\n        const anos =\n            Number(\n                plazo.value\n            ) || 0;\n\n\n        const cantidadEnganche =\n            precioPropiedad *\n            (\n                porcentajeEnganche \/\n                100\n            );\n\n\n        const montoFinanciado =\n            precioPropiedad -\n            cantidadEnganche;\n\n\n        const meses =\n            anos * 12;\n\n\n        const tasaMensual =\n            tasaAnual \/\n            100 \/\n            12;\n\n\n        let mensualidad =\n            0;\n\n\n        if (\n            montoFinanciado > 0 &&\n            meses > 0\n        ) {\n\n            if (\n                tasaMensual === 0\n            ) {\n\n                mensualidad =\n                    montoFinanciado \/\n                    meses;\n\n            } else {\n\n                const factor =\n                    Math.pow(\n                        1 + tasaMensual,\n                        meses\n                    );\n\n\n                mensualidad =\n                    montoFinanciado *\n                    (\n                        tasaMensual *\n                        factor\n                    ) \/\n                    (\n                        factor - 1\n                    );\n\n            }\n\n        }\n\n\n        mensualidadResultado.textContent =\n            \"$\" +\n            formatearDinero(\n                mensualidad\n            );\n\n\n        monedaMensualidad.textContent =\n            moneda +\n            \" \/ month\";\n\n\n        creditoResultado.textContent =\n            \"$\" +\n            formatearDinero(\n                montoFinanciado\n            ) +\n            \" \" +\n            moneda;\n\n\n        engancheCantidad.textContent =\n            \"$\" +\n            formatearDinero(\n                cantidadEnganche\n            ) +\n            \" \" +\n            moneda;\n\n\n        engancheResultado.textContent =\n            \"$\" +\n            formatearDinero(\n                cantidadEnganche\n            ) +\n            \" \" +\n            moneda;\n\n\n        plazoResultado.textContent =\n            anos +\n            (\n                anos === 1\n                    ? \" year\"\n                    : \" years\"\n            );\n\n\n        tasaResultado.textContent =\n            tasaAnual.toFixed(1) +\n            \"%\";\n\n\n        monedaPrecio.textContent =\n            moneda;\n\n\n        actualizarBarra(\n            engancheBarra\n        );\n\n    }\n\n\n    \/* CURRENCY *\/\n\n    document\n        .querySelectorAll(\n            \".pontius-currency\"\n        )\n        .forEach(\n            function(boton) {\n\n                boton.addEventListener(\n                    \"click\",\n                    function() {\n\n                        document\n                            .querySelectorAll(\n                                \".pontius-currency\"\n                            )\n                            .forEach(\n                                function(item) {\n\n                                    item.classList.remove(\n                                        \"active\"\n                                    );\n\n                                }\n                            );\n\n\n                        boton.classList.add(\n                            \"active\"\n                        );\n\n\n                        moneda =\n                            boton.dataset.currency;\n\n\n                        formatearCampo(\n                            precio\n                        );\n\n\n                        calcularCredito();\n\n                    }\n                );\n\n            }\n        );\n\n\n    \/* TERM *\/\n\n    document\n        .querySelectorAll(\n            \".pontius-term-options button\"\n        )\n        .forEach(\n            function(boton) {\n\n                boton.addEventListener(\n                    \"click\",\n                    function() {\n\n                        document\n                            .querySelectorAll(\n                                \".pontius-term-options button\"\n                            )\n                            .forEach(\n                                function(item) {\n\n                                    item.classList.remove(\n                                        \"active\"\n                                    );\n\n                                }\n                            );\n\n\n                        boton.classList.add(\n                            \"active\"\n                        );\n\n\n                        plazo.value =\n                            boton.dataset.years;\n\n\n                        calcularCredito();\n\n                    }\n                );\n\n            }\n        );\n\n\n    \/* DOWN PAYMENT SLIDER *\/\n\n    engancheBarra.addEventListener(\n        \"input\",\n        function() {\n\n            engancheNumero.value =\n                engancheBarra.value;\n\n\n            calcularCredito();\n\n        }\n    );\n\n\n    \/* MANUAL DOWN PAYMENT *\/\n\n    engancheNumero.addEventListener(\n        \"input\",\n        function() {\n\n            let valor =\n                Number(\n                    engancheNumero.value\n                );\n\n\n            if (valor < 5) {\n                valor = 5;\n            }\n\n\n            if (valor > 90) {\n                valor = 90;\n            }\n\n\n            engancheBarra.value =\n                valor;\n\n\n            calcularCredito();\n\n        }\n    );\n\n\n    \/* PRICE *\/\n\n    precio.addEventListener(\n        \"input\",\n        calcularCredito\n    );\n\n\n    precio.addEventListener(\n        \"blur\",\n        function() {\n\n            formatearCampo(\n                precio\n            );\n\n\n            calcularCredito();\n\n        }\n    );\n\n\n    \/* RATE *\/\n\n    tasa.addEventListener(\n        \"input\",\n        calcularCredito\n    );\n\n\n    \/* INITIALIZE *\/\n\n    formatearCampo(\n        precio\n    );\n\n\n    calcularCredito();\n\n\n    \/* ==================================================\n       CALCULATOR 2\n    ================================================== *\/\n\n    const presupuestoMensual =\n        document.getElementById(\n            \"pontiusAffordableMonthly\"\n        );\n\n\n    const presupuestoEnganche =\n        document.getElementById(\n            \"pontiusAffordableDown\"\n        );\n\n\n    const presupuestoEngancheBarra =\n        document.getElementById(\n            \"pontiusAffordableDownRange\"\n        );\n\n\n    const presupuestoPlazo =\n        document.getElementById(\n            \"pontiusAffordableTerm\"\n        );\n\n\n    const presupuestoTasa =\n        document.getElementById(\n            \"pontiusAffordableRate\"\n        );\n\n\n    const presupuestoPropiedad =\n        document.getElementById(\n            \"pontiusAffordableProperty\"\n        );\n\n\n    const presupuestoMonedaResultado =\n        document.getElementById(\n            \"pontiusAffordablePropertyCurrency\"\n        );\n\n\n    const presupuestoMonedaCampo =\n        document.getElementById(\n            \"pontiusAffordableCurrencyLabel\"\n        );\n\n\n    const presupuestoMensualResultado =\n        document.getElementById(\n            \"pontiusBudgetMonthlyResult\"\n        );\n\n\n    const presupuestoCreditoResultado =\n        document.getElementById(\n            \"pontiusBudgetLoanResult\"\n        );\n\n\n    const presupuestoEngancheResultado =\n        document.getElementById(\n            \"pontiusBudgetDownResult\"\n        );\n\n\n    const presupuestoEngancheCantidad =\n        document.getElementById(\n            \"pontiusAffordableDownAmount\"\n        );\n\n\n    const presupuestoPlazoResultado =\n        document.getElementById(\n            \"pontiusBudgetTermResult\"\n        );\n\n\n    let monedaPresupuesto =\n        \"MXN\";\n\n\n    function calcularPresupuesto() {\n\n        const pago =\n            limpiarNumero(\n                presupuestoMensual.value\n            );\n\n\n        let enganche =\n            Number(\n                presupuestoEnganche.value\n            ) || 0;\n\n\n        const anos =\n            Number(\n                presupuestoPlazo.value\n            ) || 0;\n\n\n        const tasaAnual =\n            Number(\n                presupuestoTasa.value\n            ) || 0;\n\n\n        if (enganche < 5) {\n            enganche = 5;\n        }\n\n\n        if (enganche > 90) {\n            enganche = 90;\n        }\n\n\n        presupuestoEnganche.value =\n            enganche;\n\n\n        presupuestoEngancheBarra.value =\n            enganche;\n\n\n        const meses =\n            anos * 12;\n\n\n        const tasaMensual =\n            tasaAnual \/\n            100 \/\n            12;\n\n\n        let credito =\n            0;\n\n\n        if (\n            pago > 0 &&\n            meses > 0\n        ) {\n\n            if (\n                tasaMensual === 0\n            ) {\n\n                credito =\n                    pago *\n                    meses;\n\n            } else {\n\n                const factor =\n                    Math.pow(\n                        1 + tasaMensual,\n                        meses\n                    );\n\n\n                credito =\n                    pago *\n                    (\n                        factor - 1\n                    ) \/\n                    (\n                        tasaMensual *\n                        factor\n                    );\n\n            }\n\n        }\n\n\n        const precioPropiedad =\n            credito \/\n            (\n                1 -\n                enganche \/\n                100\n            );\n\n\n        const cantidadEnganche =\n            precioPropiedad -\n            credito;\n\n\n        presupuestoPropiedad.textContent =\n            \"$\" +\n            formatearDinero(\n                precioPropiedad\n            );\n\n\n        presupuestoMonedaResultado.textContent =\n            monedaPresupuesto;\n\n\n        presupuestoMonedaCampo.textContent =\n            monedaPresupuesto;\n\n\n        presupuestoMensualResultado.textContent =\n            \"$\" +\n            formatearDinero(\n                pago\n            ) +\n            \" \" +\n            monedaPresupuesto;\n\n\n        presupuestoCreditoResultado.textContent =\n            \"$\" +\n            formatearDinero(\n                credito\n            ) +\n            \" \" +\n            monedaPresupuesto;\n\n\n        \/* DOWN PAYMENT NEXT TO SLIDER *\/\n\n        presupuestoEngancheCantidad.textContent =\n            \"$\" +\n            formatearDinero(\n                cantidadEnganche\n            ) +\n            \" \" +\n            monedaPresupuesto;\n\n\n        \/* DOWN PAYMENT IN RESULTS *\/\n\n        presupuestoEngancheResultado.textContent =\n            \"$\" +\n            formatearDinero(\n                cantidadEnganche\n            ) +\n            \" \" +\n            monedaPresupuesto;\n\n\n        presupuestoPlazoResultado.textContent =\n            anos +\n            (\n                anos === 1\n                    ? \" year\"\n                    : \" years\"\n            );\n\n\n        actualizarBarra(\n            presupuestoEngancheBarra\n        );\n\n    }\n\n\n    \/* CURRENCY *\/\n\n    document\n        .querySelectorAll(\n            \".pontius-budget-currency\"\n        )\n        .forEach(\n            function(boton) {\n\n                boton.addEventListener(\n                    \"click\",\n                    function() {\n\n                        document\n                            .querySelectorAll(\n                                \".pontius-budget-currency\"\n                            )\n                            .forEach(\n                                function(item) {\n\n                                    item.classList.remove(\n                                        \"active\"\n                                    );\n\n                                }\n                            );\n\n\n                        boton.classList.add(\n                            \"active\"\n                        );\n\n\n                        monedaPresupuesto =\n                            boton.dataset.currency;\n\n\n                        formatearCampo(\n                            presupuestoMensual\n                        );\n\n\n                        calcularPresupuesto();\n\n                    }\n                );\n\n            }\n        );\n\n\n    \/* TERM *\/\n\n    document\n        .querySelectorAll(\n            \".pontius-affordable-term-options button\"\n        )\n        .forEach(\n            function(boton) {\n\n                boton.addEventListener(\n                    \"click\",\n                    function() {\n\n                        document\n                            .querySelectorAll(\n                                \".pontius-affordable-term-options button\"\n                            )\n                            .forEach(\n                                function(item) {\n\n                                    item.classList.remove(\n                                        \"active\"\n                                    );\n\n                                }\n                            );\n\n\n                        boton.classList.add(\n                            \"active\"\n                        );\n\n\n                        presupuestoPlazo.value =\n                            boton.dataset.years;\n\n\n                        calcularPresupuesto();\n\n                    }\n                );\n\n            }\n        );\n\n\n    \/* DOWN PAYMENT SLIDER *\/\n\n    presupuestoEngancheBarra.addEventListener(\n        \"input\",\n        function() {\n\n            presupuestoEnganche.value =\n                presupuestoEngancheBarra.value;\n\n\n            calcularPresupuesto();\n\n        }\n    );\n\n\n    \/* MANUAL DOWN PAYMENT *\/\n\n    presupuestoEnganche.addEventListener(\n        \"input\",\n        function() {\n\n            let valor =\n                Number(\n                    presupuestoEnganche.value\n                );\n\n\n            if (valor < 5) {\n                valor = 5;\n            }\n\n\n            if (valor > 90) {\n                valor = 90;\n            }\n\n\n            presupuestoEngancheBarra.value =\n                valor;\n\n\n            calcularPresupuesto();\n\n        }\n    );\n\n\n    \/* MONTHLY PAYMENT *\/\n\n    presupuestoMensual.addEventListener(\n        \"input\",\n        calcularPresupuesto\n    );\n\n\n    presupuestoMensual.addEventListener(\n        \"blur\",\n        function() {\n\n            formatearCampo(\n                presupuestoMensual\n            );\n\n\n            calcularPresupuesto();\n\n        }\n    );\n\n\n    \/* RATE *\/\n\n    presupuestoTasa.addEventListener(\n        \"input\",\n        calcularPresupuesto\n    );\n\n\n    \/* INITIALIZE *\/\n\n    formatearCampo(\n        presupuestoMensual\n    );\n\n\n    calcularPresupuesto();\n\n});\n\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>MORTGAGE CALCULATOR Estimate your monthly payment Estimate your mortgage payment and explore what property price could fit your budget based on your down payment, loan term and estimated interest rate. Calculate monthly payment How much can I afford per month? Enter your loan details Adjust the values to get an estimate. Currency MXN USD Property [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-22295","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mortgage Calculator in Mexico | Pontius Realty<\/title>\n<meta name=\"description\" content=\"Estimate your monthly mortgage payment based on property price, down payment, loan term and interest rate. Calculate your budget in MXN or USD.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mortgage Calculator in Mexico | Pontius Realty\" \/>\n<meta property=\"og:description\" content=\"Estimate your monthly mortgage payment based on property price, down payment, loan term and interest rate. Calculate your budget in MXN or USD.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/\" \/>\n<meta property=\"og:site_name\" content=\"Pontius Realty Group\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-03T20:21:30+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/mortgage-calculator\\\/\",\"url\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/mortgage-calculator\\\/\",\"name\":\"Mortgage Calculator in Mexico | Pontius Realty\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/#website\"},\"datePublished\":\"2026-09-03T18:24:07+00:00\",\"dateModified\":\"2026-09-03T20:21:30+00:00\",\"description\":\"Estimate your monthly mortgage payment based on property price, down payment, loan term and interest rate. Calculate your budget in MXN or USD.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/mortgage-calculator\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/mortgage-calculator\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/mortgage-calculator\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/pontius-realty-properties-in-puerto-vallarta\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mortgage Calculator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/\",\"name\":\"Pontius Realty Group\",\"description\":\"Pontius Realty Group: compra, vende o invierte en bienes ra\u00edces en Puerto Vallarta y Bah\u00eda de Banderas. Hogares e inversiones con experiencia, confianza y resultados.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/pontiusrealty.com\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mortgage Calculator in Mexico | Pontius Realty","description":"Estimate your monthly mortgage payment based on property price, down payment, loan term and interest rate. Calculate your budget in MXN or USD.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/","og_locale":"en_US","og_type":"article","og_title":"Mortgage Calculator in Mexico | Pontius Realty","og_description":"Estimate your monthly mortgage payment based on property price, down payment, loan term and interest rate. Calculate your budget in MXN or USD.","og_url":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/","og_site_name":"Pontius Realty Group","article_modified_time":"2026-09-03T20:21:30+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/","url":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/","name":"Mortgage Calculator in Mexico | Pontius Realty","isPartOf":{"@id":"https:\/\/pontiusrealty.com\/en\/#website"},"datePublished":"2026-09-03T18:24:07+00:00","dateModified":"2026-09-03T20:21:30+00:00","description":"Estimate your monthly mortgage payment based on property price, down payment, loan term and interest rate. Calculate your budget in MXN or USD.","breadcrumb":{"@id":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/pontiusrealty.com\/en\/mortgage-calculator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/pontiusrealty.com\/en\/pontius-realty-properties-in-puerto-vallarta\/"},{"@type":"ListItem","position":2,"name":"Mortgage Calculator"}]},{"@type":"WebSite","@id":"https:\/\/pontiusrealty.com\/en\/#website","url":"https:\/\/pontiusrealty.com\/en\/","name":"Pontius Realty Group","description":"Pontius Realty Group: compra, vende o invierte en bienes ra\u00edces en Puerto Vallarta y Bah\u00eda de Banderas. Hogares e inversiones con experiencia, confianza y resultados.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/pontiusrealty.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/pages\/22295","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/comments?post=22295"}],"version-history":[{"count":5,"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/pages\/22295\/revisions"}],"predecessor-version":[{"id":22302,"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/pages\/22295\/revisions\/22302"}],"wp:attachment":[{"href":"https:\/\/pontiusrealty.com\/en\/wp-json\/wp\/v2\/media?parent=22295"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}