Privacy Policy

What this site stores, and what it doesn't.

NYC Affordability runs entirely in your browser. This page explains exactly what's saved, where, and how the ads on this site work.

Last updated: October 4, 2026

Overview

NYC Affordability has no server-side backend, no user accounts, and no login. There is nothing to sign up for and nothing we can look up about you, because nothing you enter is ever transmitted to a server we control. The calculators are static pages; all math runs client-side in JavaScript in your own browser.

The only data this site stores is what your browser's local storage holds on your own device, described below, plus whatever Google AdSense's advertising system does independently to serve ads (also described below).

Local storage (stays on your device)

If you use the "Save inputs" or "Save profile" toggle on a calculator, your entries are written to your browser's localStorage, a storage mechanism built into every browser that is scoped to this site and never sent anywhere automatically. It exists purely so your numbers are still there the next time you open the same calculator in the same browser. If you don't enable saving, nothing is written and your session resets when you close the tab.

KeyUsed byPurpose
nyc_shared_profileShared profileIncome, other debts, and account balances shared across every tool so you don't re-enter them
nyc_shared_assumptions_rentRent assumptionsRent calculator assumptions (income multiplier, insurance, reserve buffer)
nyc_shared_assumptions_coopCo-op assumptionsCo-op assumptions (mortgage rate, down payment %, maintenance, DTI limit, reserve months)
nyc_shared_assumptions_condoCondo assumptionsCondo assumptions (mortgage rate, down payment %, common charges, taxes, DTI limit)
nyc_coop_inputsCo-op calculatorFull set of co-op calculator inputs
nyc_condo_inputsCondo calculatorFull set of condo calculator inputs
nyc_rent_inputsRent calculatorFull set of rent calculator inputs
nyc_affordable_inputsAffordable Housing FinderHousehold size, income, and unit-size inputs for AMI eligibility
nyc_reality_check_inputsHousing Reality CheckLiquid savings and household size for the Reality Check, kept apart from the shared profile so its one-number simplification never overwrites a fuller account breakdown
nyc_required_salary_inputsRequired SalaryMonthly expenses, savings goal, filing status, and benefit elections
nyc_afford_more_inputsHow Do I Afford More?Income, debts, cash and investments, and the target price
nyc_savings_planner_inputsSavings plannerTarget price, current savings, monthly contribution, and income
nyc_rent_vs_buy_inputsRent vs buyPrice, rent, and the growth and return assumptions
nyc_rate_sensitivity_inputsRate sensitivityIncome, debts, cash, and the rate and charges being tested
nyc_cost_to_move_inputsCost to moveRent or price, moving costs, and overlap days
nyc_scenariosSaved scenariosNamed snapshots of the keys above, saved from Your Saved Data

These values persist until you clear your browser's site data or storage for www.nyc-affordability.com, turn off saving, or delete them on the Your Saved Data page. That page shows which of these keys hold anything, lets you save named scenarios (the nyc_scenarios key), and exports or imports everything as a JSON file. The export is a file your browser downloads, and an import reads a file you pick. Neither one is sent to a server. The NYC Sale Net Proceeds calculator (/sell/) stores nothing. It doesn't have a Save toggle and resets when you close the tab.

The legacy co-op domain forwards to this site. If that browser has co-op inputs saved there, only the calculator settings (rate, term, down payment percentage, reserve months, DTI limit, maintenance, and closing-cost settings) come along, in a URL fragment that your browser reads once and removes from the address bar. Fragments are never sent to a server. Income, debts, and account balances are not carried over: if any are saved there, the old address stops on a short page that lists them and offers them as a file to download, which you can import on Your Saved Data.

Sharing your result

Calculator pages and the Reality Check tool have a "Share your result" button. Clicking it builds a short text summary of your calculated result (e.g. a max purchase price and which limit it hit) and hands that text to your device's native share sheet, or (on browsers/devices without one) copies it to your clipboard instead. Only that computed summary is included: no account balances, account names, debts, or other raw inputs are ever part of the shared text, and nothing is sent to any server we control in the process. Where you share it from there is up to you and subject to that app's own privacy practices, not ours.

Third-party advertising (Google AdSense)

Ads are turned off right now. When they're on, this site shows ads served by Google AdSense (Google's AdSense program). Google and its advertising partners use cookies (including the DoubleClick cookie) to serve ads based on your visits to this site and other sites on the internet. This lets Google show ads that may be more relevant to you (personalized ads) rather than generic ones (non-personalized ads).

When they're on, ads appear on every page, including the calculators. Our own code never sends the numbers you type to Google or anyone else, and nothing on this site passes them to the ad script. The ad script does run on the same page, though, and any script on a page can technically read what's on it. If that matters to you, an ad blocker removes the ad script entirely and every calculator still works without it.

We do not control what data Google or its partners collect through these cookies, and this policy doesn't cover their practices. For details on how Google uses information from sites that use its services, see Google's "How Google uses information from sites or apps that use our services". This site publishes an ads.txt file, which is a standard transparency mechanism that lets ad exchanges verify who is authorized to sell ad inventory on this domain.

Your ad choices

You can control or opt out of personalized advertising through:

Opting out of personalized ads doesn't remove ads from this site; it means the ads you see are no longer based on your browsing history.

Analytics

This site uses Cloudflare Web Analytics to measure aggregate page-load performance and traffic. It's cookieless and doesn't track you across other sites. It doesn't use any client-side state (cookies, local storage, or fingerprinting) to identify individual visitors. We don't run Google Analytics or any similar tool of our own, and have no other visibility into visitor behavior beyond this and what Google AdSense's own ad-serving reports may show in aggregate.

Children's privacy

This site is not directed at children under 13 and does not knowingly collect information from anyone, regardless of age. See the Overview above.

Changes to this policy

If this policy changes, the "last updated" date at the top of this page will change to reflect it. Material changes will be reflected here directly; there is no separate mailing list or account to notify since the site collects no contact information.

Contact

Questions about this policy or how the site works can be raised via the Contact page. See the About page for more on who maintains this project, and the Terms of Service for the full legal terms of using this site.