CT Home Affordability Calculator

A real-time home cost calculator that accounts for what most tools ignore: property taxes and insurance.

THE METHODOLOGY

Meta-Prompting: Right Model, Right Job

The Problem
Most mortgage calculators give you principal and interest and stop there. Property taxes and homeowner’s insurance—two costs that can add $400–$800/month in Connecticut—are typically omitted. I wanted a tool that showed real, all-in monthly cost for any CT town.

The Approach
Rather than prompt a top-tier model with rough requirements and iterate blind, I used meta-prompting: a two-model workflow where a smaller, cheaper model handles prompt engineering before the primary model sees any instruction.

I gave Claude Haiku my initial requirements and had it produce a production-ready build specification. Haiku’s role was precision—not execution: structured layout rules, amortization formulas, edge case handling, design token references, and explicit data sourcing, all front-loaded before the execution model was involved.

The Result
The refined spec—along with a design system markdown and a CT mill rate data file—was fed into Gemini Pro in Google AI Studio. With the prompt fully specified, the primary model required only two small follow-up prompts to produce a fully deployed, interactive application. One session, start to finish.

THE PROMPTS

From Concept to Build Spec

The two prompts below show the meta-prompting workflow in practice. The original captures the raw concept; the refined version is the Claude Haiku-produced build specification that drove execution in Google AI Studio.

Original Prompt▼
I want an app that lets me calculate the monthly payment for a house. It will include the mortgage payment, insurance, and taxes.
On the left nav bar:
The interest rates should have a slider that adjusts in increments of .25, starts at 3% and ends at 9%.
I want a drop-down menu to select the town that will set the mill rate to calculate property tax. Add a search and a sorting option to sort by alpha, mill (ascending), or median (ascending)
Text entry field for the house price, then under that downpayment. Under that a button to auto populate that with 20%.
A toggle for a 15 or 30 year mortgage.
Center screen:
Large text - monthly payment. Small text under it, a breakdown of mortgage payment, taxes, and insurance.
Under that, medium text - the median home price in the town.
Design System:
Use the attached markdown file for typography, colors, and design style.
Data:
Mill rates and median home prices are in the excel document.
Because insurance is so variable, we're going to use a placeholder that's a decent median. Start at a base of $140 per month for anything up to 200,000. For every $50,000 of additional value, add $20 to the monthly payment.
In CT houses assess for 70% less than market value for property tax - so if a house costs $100,000, it would only be taxed on $70,000. One "mill" equals $1 of tax for every $1,000 of assessed property value. So the $100,000 house would have $70,000 assessed value, and a tax of $70 per mill unit. So, a mill rate of 20 would be $1400 in taxes. You would then divide that number by 12 for the monthly payment.
When calculating the mortgage payment use this formula, make sure to subtract the downpayment field from the house price to get the principal loan amount.
M = P * ( r * (1 + r)^n ) / ( (1 + r)^n - 1 )
Variable Definitions:
M = Total monthly payment (Principal and Interest)
P = Principal loan amount (The purchase price minus your down payment)
r = Monthly interest rate (Annual interest rate divided by 12, then divided by 100 to get a decimal)
n = Total number of monthly payments (Loan term in years multiplied by 12 months)
Claude-Refined Prompt (Build Spec)▼
Connecticut Home Affordability Calculator -- Build Spec
Build a Connecticut Home Affordability Calculator app. Use the attached design system markdown for all typography, color, spacing, and component style. Use the attached mill rates markdown for all town data. Do not deviate from the design system.
LAYOUT
Two-column layout:
* Left column (~30% width): All inputs
* Right column (~70% width): All outputs, centered
LEFT COLUMN -- INPUTS
1. Interest Rate Slider
   Label: Interest Rate | Range: 3.00%-9.00% | Step: 0.25 | Default: 6.00%
   Display current rate as percentage, updating live
2. Sort Control (above Town selector)
   Sort by: Alphabetical (default) | Mill Rate (asc) | Median Home Value (asc)
3. Town Selector
   Label: Town | Type: dropdown
   Each option: [Town Name] + mill rate (name dominant, rate secondary)
   Sets mill rate and median home value for all calculations
4. House Price
   Label: House Price | Type: currency text entry | Prefix: $
   All calculations use this value (not the median)
5. Down Payment
   Label: Down Payment | Type: currency text entry | Prefix: $
   20% Down button auto-populates with 20% of House Price; remains editable
6. Loan Term Toggle
   Pill toggle: 15 Years | 30 Years | Default: 30 Years
RIGHT COLUMN -- OUTPUTS (all update in real time)
Primary:   Est. Monthly Payment -- $X,XXX.XX (large/display type)
Secondary: Mortgage (P&I) / Property Tax / Homeowner Insurance breakdown
Tertiary:  Median Home Price in [Town] (reference only, does not drive calculations)
CALCULATIONS
Mortgage: M = P x (r x (1+r)^n) / ((1+r)^n - 1)
  P = House Price minus Down Payment (blank = $0)
  r = (annual rate / 12) / 100
  n = loan term x 12 | If P <= 0, display $0.00
Property Tax: assessed = price x 0.70; annual = assessed x (mill/1000); monthly = annual/12
Insurance: $140/mo base for homes up to $200K; add $20/mo per additional $50K (or partial)
Total = Mortgage + Monthly Tax + Monthly Insurance
EDGE CASES
* Blank House Price: show $0.00 for all outputs
* Blank Down Payment: treat as $0
* Down Payment >= House Price: mortgage = $0.00
* All currency: commas + two decimal places
DESIGN
Apply the attached design system markdown for all visual decisions.
Do not use generic or default styling.