Charlotte NPA boundaries vs neighborhood names
Realtors say South End; GIS says NPA IDs. NPAs back our choropleths and QoL indicators but rarely match one marketing brand. This guide covers how we union NPAs into named pages and what to check before comparing to MLS or Zillow boundaries.
What an NPA is
Neighborhood Profile Areas are Mecklenburg GIS polygons used by the Quality of Life Explorer. Each has a numeric ID. They are statistical units for planning indicators, not HOAs, ZIPs, school attendance zones, or realtor marketing brands.
Choropleths and map clicks use NPA-level data because that is how QoL and many local layers publish. When you hear "Dilworth" in conversation, you are usually talking about a brand that spans several of those polygons. When you hear "NPA 123," you are talking about one planning cell with a published indicator set.
City Council districts, police response areas, and CMS attendance zones use different polygons again. An NPA income figure does not equal a school score, and a school boundary does not equal our SEO page. Keep those systems separate when you argue about "the neighborhood."
Why brands differ
South End, NoDa, and Uptown span multiple NPAs. One NPA can cover only part of a familiar name. Our crosswalk unions NPAs per slug and notes disputed edges (Uptown wards, Steele Creek corridor extent, where South End meets Dilworth and Wilmore).
MLS subdivision names may not match either. A listing can say "South End" while the tax parcel sits in an NPA we roll into a different named page, or into a primary region that is broader than the SEO URL. Verify school assignment and services on county GIS at the parcel before you treat a brand name as a guarantee.
Retailers and delivery apps draw yet another circle. A coffee shop that lists South End as its neighborhood may sit outside the NPA union we use for QoL sales. That does not make either map "wrong"; it means you asked two different questions.
Crosswalk rules we follow
A named page gets an explicit npa_ids[] list in the catalog. Membership is a product decision, not an automatic dissolve of every marketing tweet. When an NPA is disputed between two brands, we document the call in methodology rather than silently double-counting population into both rollups.
Aliases redirect colloquial slugs (misspellings, older names) to the canonical URL. Primary map regions at low zoom are a separate dissolve for readability; they never redefine the SEO catalog. If a crosswalk change would move a high-traffic page's median sales by a lot, we treat that as a content release, not a silent overnight edit.
How /n pages are built
Each named page loads npa_ids[], unions geometry for the boundary preview, and population-weights metrics across member NPAs. That is why a Dilworth figure can look different from the flashiest block inside Dilworth: the rollup is a blend, not the peak listing.
Crosswalk edits change figures; we keep membership in the catalog and methodology. Alias 301s send colloquial or misspelled slugs to canonical names so crawlers and bookmarks land on one URL. If two NPAs share a border street, both named pages may claim adjacency; that is expected, not a bug.
Metrics with missing values on a member NPA do not invent fillers. Population weights only use members that have the indicator. Small member sets swing harder when one NPA updates; that is another reason to read the member list, not only the headline number.
Worked examples: South End and Dilworth
South End grew along the former rail corridor. Marketing maps often stretch north toward Uptown and south toward older industrial parcels. Our South End page unions the NPAs we treat as that brand for QoL and ACS rollups. Open the member NPA list on the profile if a sales figure looks off relative to a single listing.
Dilworth is older streetcar fabric east of South Boulevard. Dilworth and South End sit close enough that shoppers cross-shop constantly. Use South End vs Dilworth for side-by-side metrics, then the map to see where the NPA colors actually change. A house marketed as "Dilworth-adjacent" may live in Wilmore or an edge NPA that is not in the Dilworth union.
NoDa and Plaza Midwood show the same pattern on the northeast corridor: nightlife brands bleed across NPA lines while housing stock and sales indicators can diverge block by block. When in doubt, open both named pages and the choropleth before you treat either brand as a single price band.
Steele Creek and Ballantyne edges
South and southwest corridors stretch for miles of arterial frontage. Steele Creek and Ballantyne marketing often claim more geography than a tight NPA union. Corporate parks, golf communities, and I-485 interchanges pull names farther than walkable village cores.
If a listing sits west of a familiar Ballantyne retail node but east of the airport corridor, check the parcel's NPA against both named pages. Commute time to Ballantyne Corporate Park can look identical while school assignment, HOA rules, and flood screens differ. Brand stretch is a research risk, not a reason to skip the map.
Common mistakes
Do not compare one NPA to a Zillow neighborhood polygon. Do not assume a Yelp or Google circle labeled South End matches our union. Do not use NPA crime or income stats to steer people away from protected classes. Do not treat a primary map label at low zoom as an SEO page boundary.
Tour blocks on both sides of an NPA border on the same street when you can. Price cliffs and housing stock often sit on those edges. If a broker shows you a map that disagrees with ours, ask which source they used and compare the same metric vintage.
Do not average two named-page medians to invent a "between Dilworth and South End" score. Open the compare page or the individual NPAs instead. Invented midpoints hide which planning cells actually contain the parcel.
Map overview vs SEO pages
Low-zoom primary regions dissolve groups for city scanning so the map stays readable. They do not merge SEO URLs. Dilworth stays its own /n page even when the overview paints a wider primary. Clicking a primary may zoom into many NPAs; the named page you want for research is still the marketing slug with an explicit NPA list.
When you share a link, prefer /n/slug or a layer deep link with a guide ref over a vague "look at the south side of the map" instruction. Colleagues and brokers will otherwise reopen a different zoom level and argue about different polygons.
How to check a street address
1. Find the parcel on Mecklenburg GIS or the listing tax ID. 2. Note which NPA ID contains the parcel. 3. See which Know Charlotte named page lists that ID. 4. Open the named page for rollup metrics and the map for the choropleth. 5. Confirm CMS school assignment separately if you have kids. That five-step check prevents most boundary arguments.
If the parcel sits on a boundary line, county GIS usually assigns one NPA; do not hand-average two named pages. If no named page claims the NPA yet, use the NPA choropleth and citywide layers until we publish a brand page, and say so explicitly in your notes.
Further reading
Mecklenburg GIS publishes NPA shapefiles. /sources links portals. Crosswalk questions: /contact. For mover workflow that depends on these boundaries, return to moving to Charlotte. Methodology for rollups: /methodology. Neighborhood name context without the GIS deep dive: Charlotte neighborhoods explained.