Methodology
Produced by JL Scoring Engine v2.3Last updated · June 30, 2026
The JL Scoring Engine analyzes residential property tax assessments in the markets Jasmine Lane serves. It produces a per-parcel estimate of whether a property is overassessed, how much, and with what confidence — or, where the data won't support a trustworthy estimate, it sets the parcel aside rather than guess. The engine's findings inform our targeting, our customer evidence packages, and the research we publish at jasminelane.app/research.
This page documents how the engine works: the homes it covers, the data it leaves out, what it measures, and the homes it sets aside as un-valuable. It is the citation anchor for everything the JL Scoring Engine produces.
What we analyze
The engine scores residential parcels in counties where we operate. As of June 2026, that universe is Fulton County, Georgia: 262,877 residential parcels — the Fulton County 2025 tax-digest parcels in the four residential land-use codes the engine prices (single-family and closely related residential categories). This is a scoped residential subset, not Fulton's full parcel roll. Of these 262,877, the engine could confidently value 190,178; the remaining 72,699 were set aside, for reasons described in §5 below.
Each parcel is scored against the most recent tax year for which the county has published a digest. For Fulton, that is tax year 2025 (the digest used in the 2026 assessment cycle). The engine re-runs against each new digest as it becomes available.
Among the 262,877 residential parcels examined — 11.9% are overassessed.
What we exclude
Two kinds of exclusion happen before any parcel is scored. Together they define the residential universe this site reports on, and the pool of sales the engine is allowed to learn from.
Non-residential and special-purpose parcels
Fulton's full tax roll contains far more than the homes we price. The engine works only within the four residential land-use codes it is built for — single-family and closely related residential categories — which is how Fulton's full roll narrows to the 262,877 residential parcels described above. Commercial, industrial, and special-purpose parcels are out of scope; the engine prices residential homes only.
Non-arms-length sales
Foreclosures, transfers between family members, distress sales, and other non-market transactions are removed from the comparable-sales pool, identified using the county's own validity codes. A sale has to reflect an actual market price before it can inform another home's value.
These exclusions are upstream of scoring: they shape the universe and the evidence. They are distinct from the homes we set aside, which do enter scoring but can't be confidently valued — see §5.
What we measure
The core finding is the gap between two values: what the county says a home is worth, and what recent comparable sales say it's worth. The engine computes this in two steps.
A positive gap means the county's value sits above ours — the direction that signals overassessment; a negative gap means the county's value sits below ours. We treat a home as fairly assessed when that gap stays within ±5% of the county's value, in either direction. We flag a home as overassessed only when the gap rises above +5% and the comparison is strong enough to trust. Where our estimate sits well above the county's, the home is recorded as under-assessed (a wider threshold; it never enters the overassessment count).
This is the same comparable-sales framework counties use when evaluating filed appeals. The engine is not in tension with the county's framework; it applies the framework consistently across the whole roll, where the county applies it case-by-case in response to homeowner-filed appeals.
How we identify comparable sales
For each parcel, the engine ranks candidate comparable sales using a weighted score across seven dimensions, then values the home from its five strongest. Proximity and recency carry the heaviest weight. Square footage and bed/bath similarity sit in a middle tier, alongside the assessor's own age and grade/condition classifications. Property type serves as the tiebreaker.
Sale prices are time-adjusted to the assessment year using the Federal Housing Finance Agency House Price Index for Atlanta. Where a parcel has a recent qualifying sale of its own, that sale anchors the estimate: a sale within the past year replaces the comp-based estimate outright, while a sale roughly one to two years old is blended with it. The comp set used to value a home is required to bracket the subject on square footage — at least one comparable larger and one smaller — which is the discipline appraisal practice expects and which Boards of Equalization recognize at hearing. That bracketing requirement is waived only for a home anchored on its own recent sale.
What we set aside
A defining discipline of the engine is that it only publishes a value when the comparable evidence is strong enough to stand behind. When it isn't, the engine sets the parcel aside rather than report a low-confidence guess. In Fulton, that applies to a bit under a third of the residential parcels we examine — roughly 73,000 of 262,877.
A home we set aside is not a home we found to be fairly assessed. Those are different conclusions. A fairly-assessed home is one we did confidently value, and whose county value landed within 5% of our estimate; it sits inside the 190,178. A set-aside home is one where the comparable sales couldn't support any conclusion at all — we can't say it's overpaying, but we equally can't say it's fairly assessed. The honest statement for these homes is not “you're fine”; it is “the available evidence isn't strong enough to prove you're overpaying.”
This is why the overassessment rates we publish are reported among the 190,178 homes we could confidently value — just over seven in ten of the roll. Of those, 31,216 are overassessed: 16.4% of the homes we could value, or 11.9% of the residential parcels we examine. The rest of the valued pool stays in that denominator, which is what keeps the rate honest. Setting aside this un-valuable portion is a feature, not a gap: it is how we avoid claiming precision we don't have, particularly for unusual or sparsely-sold segments such as the very top.
Confidence
Every valued parcel carries a confidence score from 0 to 100, calculated from the strength of its comp set: the number of comparable sales, the price-per-square-foot spread among the five strongest, how closely those comps match the subject, how recent they are, and how complete the subject home's own record is. Bracketing is treated as a prerequisite rather than a scored factor — a home whose comps don't bracket it is set aside, not merely given a lower score. The numeric score rolls up into tiers:
| Tier | Range | What it means |
|---|---|---|
| High | 70–100 | Five tight comps, bracketed, low price-per-square-foot spread. |
| Medium | 60–69 | Adequate comps with some weakness on one dimension. |
| Low | 40–59 | Thin comp coverage or wide spread. Held back from main targeting. |
| Below 40 | 0–39 | Too weak to support an overassessment finding. Never flagged as overpaying; recorded as fairly/under-assessed if comps clearly place it at or below the county's value, otherwise set aside. |
What we are not
Three things the engine deliberately does not claim to be.
A regression-derived market value model+
The engine uses heuristic adjustments for size, beds, baths, grade, and condition; it does not derive dollar-per-bedroom or dollar-per-grade-tier coefficients from the sales data. That refinement is on the engineering roadmap.
An appeal outcomes predictor+
The engine measures the gap between county appraised value and comp-derived market value at a point in time. It does not predict how a Board of Equalization panel will rule, which depends on hearing-day evidence presentation, comp packet quality, and panel judgment.
A property tax estimator for buyers, sellers, or refinance+
The engine measures one thing — whether a parcel is over-appraised relative to recent comparable sales — and that is what its outputs should be used for.
Citation
JL Scoring Engine, “[Title of finding],” Jasmine Lane (June 2026). Georgia Methodology v1.0, produced by Engine v2.3: jasminelane.app/methodology.
For methodology questions, data corrections, or research collaborations: hello@jasminelane.app