1import{c as e}from"./components-DBQ8KnQG.js";import{t}from"./lib-DFHwdoKZ.js";import{i as n}from"./state-C4IzlkDq.js";import{t as r}from"./jsx-runtime-CqqR4vFp.js";import{n as i,t as a}from"./seo-CIV4jX_7.js";import{r as o}from"./meta-ByzlqKjN.js";import{n as s}from"./AuthNavLoading-CW-2RjJA.js";import{t as c}from"./NavHeader-CgiL6Rbi.js";import{i as l,o as u,t as d}from"./calculators-BUUmsBkR.js";var f=r(),p=`${i.baseUrl}/calculators`,m=`mx-auto w-full max-w-[1280px] px-5 sm:px-6 lg:px-12`,h=`py-12 sm:py-16 lg:py-20`,g=`font-abc-favorit-trial text-base leading-relaxed text-lofty-purple-600/70 sm:text-lg`,_=`2026-05-15`,v=`Real estate calculators are free tools that estimate cash flow, ROI, cap rate, mortgage payments, and long-term returns for rental, Airbnb, and investment properties. Investors use them to screen deals quickly before doing full underwriting.`,y=[{question:`What is the most useful real estate calculator for new investors?`,answer:`For most new investors, a rental property calculator is the most useful starting point. It combines cash flow, cap rate, cash-on-cash return, and DSCR in one place, which covers the questions almost every buyer needs to answer before making an offer on a long-term rental.`},{question:`How accurate are real estate investment calculators?`,answer:`Calculators are only as accurate as their inputs. Use realistic rent comps, vacancy, taxes, insurance, repairs, and management fees. Stress-test by lowering rent and raising expenses by 10% to 20% to see if the deal still works in a softer market.`},{question:`What numbers do I need to use a rental property calculator?`,answer:`You need purchase price, monthly rent, monthly operating expenses, vacancy rate, property management fee, plus loan terms (down payment, interest rate, and loan term). The more accurate your inputs, the more accurate the cash flow, cap rate, and cash-on-cash return.`},{question:`How is an Airbnb calculator different from a rental property calculator?`,answer:`An Airbnb calculator works in revenue terms (average daily rate and occupancy) instead of monthly rent. It also has to account for cleaning, platform fees, and higher management fees. Long-term rental calculators assume a steady tenant and lower expense ratios.`},{question:`Are these calculators free?`,answer:`Yes. Every calculator on Lofty is free, requires no signup, and runs entirely in your browser. We do not save your inputs or send them anywhere. If you want to share a scenario, every page has a Share scenario button that copies a link with your numbers.`}],b=[{metric:`Cap rate`,formula:`Annual NOI / purchase price`,use:`Compare unleveraged property income across markets.`},{metric:`Cash-on-cash return`,formula:`Annual cash flow / cash invested`,use:`Measure annual yield on the cash you put into the deal.`},{metric:`NOI`,formula:`Effective rent â operating expenses`,use:`Calculate income before debt service.`},{metric:`DSCR`,formula:`Annual NOI / annual debt service`,use:`Show whether NOI covers mortgage payments with cushion.`},{metric:`1% rule`,formula:`Monthly rent / purchase price`,use:`Quick screen on whether rent is high enough versus price.`},{metric:`50% rule`,formula:`50% of gross rent â operating expenses`,use:`Rule of thumb for expenses before you have actuals.`},{metric:`70% rule (flips)`,formula:`70% Ã ARV â rehab cost`,use:`Maximum offer on a fix-and-flip given after-repair value.`},{metric:`RevPAN`,formula:`ADR Ã occupancy`,use:`Core revenue-per-available-night metric for short-term rentals.`},{metric:`Equity multiple`,formula:`(Cash invested + total profit) / cash invested`,use:`Total dollars returned per dollar invested over a hold.`},{metric:`Annualized ROI`,formula:`((1 + total ROI)^(1/years)) â 1`,use:`Yearly equivalent of a multi-year hold-period return.`}],x=[{"@context":`https://schema.org`,"@type":`CollectionPage`,name:`Real Estate Calculators`,description:v,url:p,dateModified:_,isPartOf:{"@type":`WebSite`,url:i.baseUrl,name:`Lofty`}},{"@context":`https://schema.org`,"@type":`ItemList`,name:`Real Estate Calculators`,itemListElement:d.map((e,t)=>
1({"@type":`ListItem`,position:t+1,name:e.title,description:e.description,url:l(e.slug)}))},{"@context":`https://schema.org`,"@type":`FAQPage`,mainEntity:y.map(e=>({"@type":`Question`,name:e.question,acceptedAnswer:{"@type":`Answer`,text:e.answer}}))},{"@context":`https://schema.org`,"@type":`BreadcrumbList`,itemListElement:[{"@type":`ListItem`,position:1,name:`Home`,item:i.baseUrl},{"@type":`ListItem`,position:2,name:`Calculators`,item:p}]}];function S(){let{authState:{isAuth:e}}=n();return(0,f.jsxs)(`div`,{className:`app-container overflow-x-hidden bg-white text-lofty-purple-700`,children:[(0,f.jsx)(`script`,{type:`application/ld+json`,dangerouslySetInnerHTML:{__html:JSON.stringify(x)}}),(0,f.jsx)(c,{}),(0,f.jsxs)(`main`,{children:[(0,f.jsx)(`section`,{className:`relative border-b border-lofty-gray-300/60 bg-gradient-to-b from-[#eef0fb] via-[#f5f6fd] to-white`,children:(0,f.jsxs)(`div`,{className:`${m} pb-10 pt-10 text-center sm:pb-14 sm:pt-14 lg:pb-20 lg:pt-20`,children:[(0,f.jsx)(`p`,{className:`font-abc-favorit-tr
1ial text-[11px] font-semibold uppercase tracking-[0.16em] text-lofty`,children:`Real Estate Calculators`}),(0,f.jsxs)(`h1`,{className:`mx-auto mt-4 max-w-4xl font-abc-favorit-trial text-[32px] font-bold leading-[1.1] tracking-tight text-lofty-purple-700 sm:text-5xl lg:text-6xl`,children:[`Free real estate calculators for`,` `,(0,f.jsx)(`em`,{className:`not-italic text-transparent bg-clip-text bg-[linear-gradient(90deg,#4D3FED_0%,#7461FF_55%,#9383FF_100%)]`,children:`cash flow, ROI, and mortgage analysis`}),`.`]}),(0,f.jsxs)(`div`,{className:`mt-7 flex flex-col items-center justify-center gap-3 sm:mt-8 sm:flex-row`,children:[(0,f.jsx)(t,{to:u(`rental-property-calculator`),className:`inline-flex w-full items-center justify-center rounded-full bg-lofty px-6 py-3 text-sm font-semibold !text-white no-underline transition-colors hover:bg-lofty-purple-500 sm:w-auto sm:px-7 sm:py-3.5`,children:`Start with rental ROI`}),(0,f.jsx)(t,{to:`/marketplace`,className:`inline-flex w-full items-center justify-center rounded-full border border-lofty-purple-700/20 px-6 py-3 text-sm font-semibold text-lofty-purple-700 no-underline transition-colors hover:border-lofty hover:text-lofty sm:w-auto sm:px-7 sm:py-3.5`,children:`Browse Lofty properties`})]})]})}),(0,f.jsx)(`section`,{className:`border-b border-lofty-gray-300/60 bg-white`,"aria-labelledby":`hub-snippet`,children:(0,f.jsxs)(`div`,{className:`${m} py-10 lg:py-12`,children:[(0,f.jsx)(`h2`,{id:`hub-snippet`,className:`sr-only`,children:`What is a real estate calculator?`}),(0,f.jsx)(`p`,{className:`${g} max-w-3xl`,children:v})]})}),(0,f.jsx)(`section`,{className:`${h} bg-white border-b border-lofty-gray-300/60`,"aria-labelledby":`calculator-list-heading`,children:(0,f.jsxs)(`div`,{className:m,children:[(0,f.jsx)(`h2`,{id:`calculator-list-heading`,className:`font-abc-favorit-trial text-3xl font-bold text-lofty-purple-700 sm:text-4xl`,children:`Pick a calculator`}),(0,f.jsx)(`div`,{className:`mt-8 grid gap-4 md:grid-cols-2`,children:d.map(e=>(0,f.jsxs)(t,{to:u(e.slug),className:`group rounded-2xl border border-lofty-gray-300/60 bg-lofty-gray p-5 no-underline transition-colors hover:border-lofty/40 hover:bg-lofty/5 sm:p-6`,children:[(0,f.jsx)(`p`,{className:`font-abc-favorit-trial text-xs font-semibold uppercase tracking-[0.16em] text-lofty`,children:e.eyebrow}),(0,f.jsx)(`h3`,{className:`font-abc-favorit-trial mt-2 text-xl font-bold text-lofty-purple-700 transition-colors group-hover:text-lofty sm:text-2xl`,children:e.title}),(0,f.jsx)(`p`,{className:`font-abc-favorit-trial mt-3 text-sm leading-relaxed text-lofty-purple-600/75 md:min-h-[72px]`,children:e.description}),(0,f.jsx)(`ul`,{className:`font-abc-favorit-trial mt-4 flex flex-wrap gap-x-4 gap-y-1 text-xs text-lofty-purple-600/60`,children:e.snapshotKeys.slice(0,4).map(e=>(0,f.jsxs)(`li`,{className:`inline-flex items-center gap-1`,children:[(0,f.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-lofty/70`,"aria-hidden":!0}),T(e)]},e))}),(0,f.jsxs)(`span`,{className:`font-abc-favorit-trial mt-5 inline-flex items-center gap-2 text-sm font-semibold text-lofty`,children:[e.primaryCta,(0,f.jsx)(`span`,{"aria-hidden":`true`,children:`â`})]})]},e.slug))})]})}),(0,f.jsx)(`section`,{className:`${h} bg-[#eef0fb]`,"aria-labelledby":`quick-ref-heading`,children:(0,f.jsxs)(`div`,{className:m,children:[(0,f.jsx)(`h2`,{id:`quick-ref-heading`,className:`font-abc-favorit-trial text-3xl font-bold text-lofty-purple-700 sm:text-4xl`,children:`Real estate metrics and formulas at a glance`}),(0,f.jsx)(`div`,{className:`mt-8 overflow-x-auto rounded-2xl border border-lofty-gray-300/60 bg-white`,children:(0,f.jsxs)(`table`,{className:`w-full min-w-[680px] border-collapse text-left font-abc-favorit-trial text-sm`,children:[(0,f.jsx)(`thead`,{className:`bg-lofty-gray text-xs uppercase tracking-[0.14em] text-lofty-purple-600/60`,children:(0,f.jsxs)(`tr`,{children:[(0,f.jsx)(`th`,{className:`px-5 py-4 font-semibold`,children:`Metric`}),(0,f.jsx)(`th`,{className:`px-5 py-4 font-semibold`,children:`Formula`}),(0,f.jsx)(`th`,{className:`px-5 py-4 font-semibold`,children:`When to use it`})]})}
1),(0,f.jsx)(`tbody`,{className:`divide-y divide-lofty-gray-300/60 text-lofty-purple-700`,children:b.map(e=>(0,f.jsxs)(`tr`,{className:`align-top`,children:[(0,f.jsx)(`th`,{scope:`row`,className:`px-5 py-4 font-bold text-lofty-purple-700`,children:e.metric}),(0,f.jsx)(`td`,{className:`px-5 py-4 font-semibold text-lofty`,children:e.formula}),(0,f.jsx)(`td`,{className:`px-5 py-4 leading-relaxed text-lofty-purple-600/75`,children:e.use})]},e.metric))})]})})]})}),(0,f.jsx)(`section`,{className:`${h} bg-white border-b border-lofty-gray-300/60`,"aria-labelledby":`how-to-pick-heading`,children:(0,f.jsxs)(`div`,{className:`${m} grid gap-8 lg:grid-cols-[320px_1fr] lg:gap-12`,children:[(0,f.jsx)(`h2`,{id:`how-to-pick-heading`,className:`font-abc-favorit-trial text-3xl font-bold text-lofty-purple-700`,children:`Which real estate calculator should you use?`}),(0,f.jsxs)(`ul`,{className:`space-y-4`,children:[(0,f.jsx)(C,{eyebrow:`Long-term rental`,title:`If you are screening a buy-and-hold deal`,body:`Start with the Rental Property Calculator. It covers monthly cash flow, cap rate, cash-on-cash return, DSCR, the 1% rule, and 30-year projections.`,to:u(`rental-property-calculator`)}),(0,f.jsx)(C,{eyebrow:`Short-term rental`,title:`If you are underwriting an Airbnb or vacation rental`,body:`Use the Airbnb Calculator to model ADR, occupancy, RevPAN, cleaning costs, platform fees, management fees, break-even occupancy, and cash-on-cash return.`,to:u(`airbnb-calculator`)}),(0,f.jsx)(C,{eyebrow:`Long-hold investment`,title:`If you want total profit and annualized ROI`,body:`The Real Estate Investment Calculator projects total profit, annualized ROI, equity multiple, and sale proceeds across a multi-year hold.`,to:u(`real-estate-investment-calculator`)}),(0,f.jsx)(C,{eyebrow:`Financing only`,title:`If you only need a monthly mortgage payment`,body:`The Mortgage Calculator estimates principal, interest, taxes, insurance, HOA, PMI, total interest, and a year-by-year amortization schedule.`,to:u(`mortgage-calculator`)}),(0,f.jsx)(C,{eyebrow:`Selling a rental`,title:`If you are weighing a 1031 exchange`,body:`The 1031 Exchange Calculator estimates federal capital gains, depreciation recapture, NIIT, state tax, and the cash difference between selling and exchanging.`,to:u(`1031-exchange-calculator`)})]})]})}),(0,f.jsx)(`section`,{className:`${h} bg-white`,"aria-labelledby":`hub-faq-heading`,children:(0,f.jsxs)(`div`,{className:`${m} grid gap-8 lg:grid-cols-[320px_1fr] lg:gap-12`,children:[(0,f.jsx)(`h2`,{id:`hub-faq-heading`,className:`font-abc-favorit-trial text-3xl font-bold text-lofty-purple-700`,children:`Real estate calculator FAQs`}),(0,f.jsx)(`dl`,{className:`space-y-6`,children:y.map(e=>(0,f.jsxs)(`div`,{className:`border-b border-lofty-gray-300/60 pb-6 last:border-0 last:pb-0`,children:[(0,f.jsx)(`dt`,{className:`font-abc-favorit-trial text-lg font-bold text-lofty-purple-700`,children:e.question}),(0,f.jsx)(`dd`,{className:`font-abc-favorit-trial mt-2 text-sm leading-relaxed text-lofty-purple-600/75`,children:e.answer})]},e.question))})]})}),(0,f.jsx)(`section`,{className:`${h} border-y border-lofty-gray-300/60 bg-lofty-purple-700 text-white`,children:(0,f.jsxs)(`div`,{className:`${m} grid gap-8 lg:grid-cols-[1fr_0.8fr] lg:items-center`,children:[(0,f.jsxs)(`div`,{children:[(0,f.jsx)(`p`,{className:`font-abc-favorit-trial text-sm font-semibold uppercase tracking-[0.16em] text-white/60`,children:`Skip the analysis paralysis`}),(0,f.jsx)(`h2`,{className:`mt-2 font-abc-favorit-trial text-2xl font-bold sm:text-3xl`,children:`Don't want to buy a whole property?`}),(0,f.jsx)(`p`,{className:`font-abc-favorit-trial mt-3 max-w-2xl text-sm leading-relaxed text-white/70`,children:`Lofty lets investors browse fractional U.S. rental properties with listed cash flow, rent history, and projected returns. Buy in for as little as $50 instead of a full down payment.`})]}),(0,f.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row lg:justify-end`,children:[(0,f.jsx)(t,{to:`/marketplace`,className:`inline-flex w-full items-center justify-center rounded-full bg-white px-6 py-3 text-sm font-semibold text-lofty-purple-700 no-underline transition-colors hover:bg-lofty-purple-50 sm:w-auto
1sm:px-7 sm:py-3.5`,children:`Browse marketplace`}),e===!1&&(0,f.jsx)(t,{to:`/signup`,className:`inline-flex w-full items-center justify-center rounded-full border border-white/25 px-6 py-3 text-sm font-semibold !text-white no-underline transition-colors hover:border-white sm:w-auto sm:px-7 sm:py-3.5`,children:`Create free account`})]})]})})]}),(0,f.jsx)(s,{})]})}function C({eyebrow:e,title:n,body:r,to:i}){return(0,f.jsx)(`li`,{children:(0,f.jsxs)(t,{to:i,className:`block rounded-2xl border border-lofty-gray-300/60 bg-lofty-gray p-5 no-underline transition-colors hover:border-lofty/40 hover:bg-lofty/5`,children:[(0,f.jsx)(`p`,{className:`font-abc-favorit-trial text-xs font-semibold uppercase tracking-[0.16em] text-lofty`,children:e}),(0,f.jsx)(`h3`,{className:`font-abc-favorit-trial mt-2 text-lg font-bold text-lofty-purple-700`,children:n}),(0,f.jsx)(`p`,{className:`font-abc-favorit-trial mt-2 text-sm leading-relaxed text-lofty-purple-600/75`,children:r})]})})}var w={monthlyCashFlow:`Monthly cash flow`,cashOnCash:`Cash-on-cash return`,capRate:`Cap rate`,dscr:`DSCR`,revPan:`RevPAN`,breakEvenOccupancy:`Break-even occupancy`,totalProfit:`Total profit`,annualizedRoi:`Annualized ROI`,equityMultiple:`Equity multiple`,totalCashFlow:`Cumulative cash flow`,totalMonthlyPayment:`Monthly PITI`,principalAndInterest:`Principal & interest`,loanToValue:`Loan-to-value`,totalInterest:`Total interest`,taxSavings1031:`Tax savings via 1031`,cashAfterTax:`Cash after tax`,cashToReinvest1031:`1031 reinvestment cash`,effectiveTaxRate:`Tax as % of gain`,noi:`NOI`,expenseRatio:`Expense ratio`,grossYield:`Gross rental yield`,breakEvenYear:`Break-even year`,netAdvantage:`Net advantage`,monthlyOwnershipCost:`Monthly cost of owning`,monthlyRentCost:`Monthly cost of renting`,cashLeftInDeal:`Cash left in deal`,capitalRecoveredPercent:`Capital recovered`,postRefiCashFlow:`Post-refi cash flow`,postRefiDscr:`Post-refi DSCR`,netProfit:`Net profit`,roiOnCash:`ROI on cash`,seventyRuleMaxOffer:`70% rule max offer`,estimatedRentMid:`Estimated rent`,estimatedRentLow:`Low end`,estimatedRentHigh:`High end`,grm:`Gross rent multiplier`,annualCashFlow:`Annual cash flow`,totalCashInvested:`Cash invested`,annualDepreciation:`Annual deduction`,firstYearDepreciation:`First-year deduction`,annualTaxSavings:`Annual tax savings`,depreciableBasis:`Depreciable basis`,annualNoi:`Annual NOI`,maxLoanAtTarget:`Max loan at 1.25x`,cashFlowAfterDebt:`Cash flow after debt`,estimatedTaxOwed:`Estimated tax owed`,taxableGain:`Taxable gain`,exclusionApplied:`Exclusion applied`,netProceedsAfterTax:`Net proceeds after tax`};function T(e){return w[e]??e.replace(/([A-Z])/g,` $1`).replace(/^./,e=>e.toUpperCase())}var E=()=>o(a.calculators),D=e(S);export{D as default,E as meta};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.