Returns a duckplyr-backed lazy data frame connected to the PLUTO GeoParquet file bundled with this package: one row for each of the 858,284 tax lots in New York City in PLUTO release 26v2 (August 2026), with 97 attribute fields and the lot polygon from MapPLUTO.
Source
NYC Department of City Planning, PLUTO and MapPLUTO 26v2, https://www.nyc.gov/content/planning/pages/resources/datasets/mappluto-pluto-change; NYC Open Data, https://data.cityofnewyork.us/d/64uk-42ks.
Details
Use dplyr verbs to filter, select, and summarise, then call
dplyr::collect() to bring results into R memory. Collect only the
rows and columns you need: the polygons for all lots take over 1 GB in
memory. Use nyc_pluto_to_sf() to turn collected rows into an sf
object.
Sources. Attributes and polygons are from MapPLUTO 26v2, clipped to
the shoreline. The 1,597 lots that are in PLUTO but not in the clipped
MapPLUTO (plutomapid 2, 4, or 5: 1,378 lots not on the tax map and 219
lots wholly under water) come from the PLUTO CSV on NYC Open Data, with
fields that the CSV export reformats (leading zeros, Y/N flags) restored
to DCP's formats. Their geometry is NA.
Condominiums. A condominium appears as one record for its billing lot (lot 7501–7599), with unit, area, and value fields summed over its unit lots. Individual unit lots (1001–6999) are not in PLUTO.
Changes. DCP corrects some source values. dcpedited == "1" marks
lots with a corrected value; nyc_pluto_changes_df lists each change.
Not included. The deprecated sanborn field, the empty notes
field, the source-data date fields (empty in the CSV export), and the
ESRI shape measures.
Columns
Column names are PLUTO's field names in lower case. Codes are as published by DCP. Zero is the usual value for "not available" in area, dimension, and year fields; see each field. The data frame has 98 columns:
- borough
Borough:
"MN","BX","BK","QN", or"SI"(character). Marble Hill is"MN"and Rikers Island is"BX", the boroughs they are legally in.- block
Tax block (integer).
- lot
Tax lot (integer). Condominiums use the billing lot, 7501–7599.
- cd
Community district (integer): borough code followed by the district number, e.g.
101,412. Joint interest areas (large parks and airports outside any district) are164Central Park,226Van Cortlandt Park,227Bronx Park,228Pelham Bay Park,355Prospect Park,356,484, and595Gateway National Recreation Area,480LaGuardia Airport,481Flushing Meadows Corona Park,482Forest Park, and483JFK Airport. Marble Hill is in districts207/208and Rikers Island in401, the districts that serve them.- bct2020
2020 census tract: borough code and six-digit tract, e.g.
"4062600"(character).- bctcb2020
2020 census block: borough code, six-digit tract, and four-digit block (character).
- ct2010
2010 census tract, e.g.
"203.01","23"(character).- cb2010
2010 census block, four digits with an optional letter suffix (character).
- schooldist
School district, two digits (character).
- council
City council district, 1–51 (integer).
- zipcode
A ZIP code valid for one of the lot's addresses (character).
NAif the lot has no house number.- firecomp
Fire company:
E(engine),L(ladder), orQ(squad) and a three-digit number, e.g."E005"(character).- policeprct
Police precinct (integer).
- healthcenterdistrict
Health center district (integer).
- healtharea
Health area, with an implied decimal point after the first two digits (integer).
- sanitboro
Borough code of the sanitation district (character).
- sanitdistrict
Sanitation district, two digits (character).
- sanitsub
Sanitation district subsection (character).
- address
Address of the lot from DOF; the low house number when there is a range (character).
- zonedist1
Zoning district covering the largest share of the lot, e.g.
"R6","C4-4A","M1-1","PARK"(character).- zonedist2,zonedist3,zonedist4
Further zoning districts covering at least 10% of the lot, in order of share (character).
- overlay1,overlay2
Commercial overlays (C1 or C2 districts within residential districts), in order of share (character).
- spdist1,spdist2,spdist3
Special purpose districts covering at least 10% of the lot, in order of share, e.g.
"MiD"(Midtown),"DB"(Downtown Brooklyn) (character). See appendix A of the PLUTO data dictionary.- ltdheight
Limited height district, e.g.
"LH-1"(character).- splitzone
"Y"if the lot is split between zoning districts, commercial overlays, or special districts, otherwise"N"(character).- bldgclass
Building class (character). See nyc_pluto_bldg_class_df.
- landuse
Land use category,
"01"–"11"(character). See nyc_pluto_land_use_df.- easements
Number of easements on the lot (integer).
- ownertype
Type of ownership:
"C"city,"M"mixed city and private,"O"other public (authority, state, or federal),"P"private,"X"fully tax-exempt;NAunknown, usually private (character).- ownername
Owner name; names of public owners are normalized (character).
- lotarea
Lot area in square feet (integer).
- bldgarea
Total building floor area in square feet, gross except for condominiums, whose areas are net (integer). Zero means not available when
numbldgs > 0, and not applicable otherwise.- comarea,resarea,officearea,retailarea,garagearea,strgearea,factryarea,otherarea
Floor area in square feet allocated to commercial, residential, office, retail, garage, storage, factory, and other uses (integer). Zero can mean not available or not applicable. Office through other areas are not available for one- to three-family buildings. The parts do not always sum to
bldgarea.- areasource
Source of
bldgarea:"0"not available,"2"DOF Property Tax System,"4"vacant lot with no buildings (area 0),"5"calculated from building dimensions and floors (primary building only),"7"DOF Mass Appraisal System (character).- numbldgs
Number of buildings on the lot (integer).
- numfloors
Number of floors of the tallest building, including partial floors (double).
NAwithnumbldgs > 0means not available.- unitsres
Number of residential units (integer).
- unitstotal
Number of residential and non-residential units (integer).
- lotfront,lotdepth
Lot frontage and depth in feet (double).
- bldgfront,bldgdepth
Building frontage and depth in feet (double).
- ext
Extension:
"E"extension,"G"garage,"EG"both,"N"none;NAunknown (character).- proxcode
Proximity to neighbouring buildings:
"0"not available,"1"detached,"2"semi-attached,"3"attached (character).- irrlotcode
"Y"if the lot is irregularly shaped, otherwise"N"(character).- lottype
Lot type:
"0"unknown,"1"block assemblage,"2"waterfront,"3"corner,"4"through,"5"inside,"6"interior (no frontage),"7"island,"8"alley,"9"submerged (character).- bsmtcode
Basement:
"0"none,"1"above-grade full,"2"below-grade full,"3"above-grade partial,"4"below-grade partial,"5"unknown (character).- assessland
Assessed land value in dollars (double).
- assesstot
Assessed total value in dollars (double).
- exempttot
Exempt total value in dollars (double).
- yearbuilt
Year the building was completed (integer). Accurate to the decade, not always the year. Zero means unknown.
- yearalter1,yearalter2
Years of the second most recent and most recent alterations (integer). Zero if none.
- histdist
Name of the historic district the lot is in (character).
- landmark
"INDIVIDUAL LANDMARK","INTERIOR LANDMARK", or"INDIVIDUAL AND INTERIOR LANDMARK"(character).- builtfar
Built floor area ratio:
bldgarea / lotarea(double).- residfar,commfar,facilfar
Maximum allowable residential, commercial, and community facility floor area ratios under the lot's zoning (double).
- borocode
Borough code: 1 Manhattan, 2 Bronx, 3 Brooklyn, 4 Queens, 5 Staten Island (integer).
- bbl
Borough-block-lot, 10 digits (character). Unique.
- condono
Condominium number, unique within a borough (integer).
- tract2010
2010 census tract as four digits plus a two-digit suffix if any, e.g.
"020301","0023"(character).- xcoord,ycoord
Approximate lot location in feet, EPSG:2263 (integer).
- zonemap
DCP zoning map number (character).
- zmcode
"Y"if the lot is on the border of two or more zoning maps (character).- taxmap
DOF paper tax map volume (character). No longer updated.
- edesignum
(E) designation number for environmental requirements (character).
- appbbl
Apportionment BBL: the lot's BBL before a merger, split, or condominium conversion since 1984 (character).
- appdate
Date of the apportionment (Date).
- plutomapid
DCP's file indicator (character):
"1"in PLUTO and both MapPLUTO versions;"2"in PLUTO only;"3"in both MapPLUTO versions but not PLUTO;"4"in PLUTO and the water-included MapPLUTO but not the clipped version (entirely under water);"5"in the water-included MapPLUTO only (under water). All five values occur in this release; lots with"2","4", or"5"have no polygon.- firm07_flag
"1"if part of the lot is in the 1% annual chance floodplain in FEMA's 2007 Flood Insurance Rate Map (character).- pfirm15_flag
"1"if part of the lot is in the 1% annual chance floodplain in FEMA's 2015 Preliminary Flood Insurance Rate Map (character).- version
PLUTO release,
"26v2"(character).- dcpedited
"1"if DCP changed any field value for the lot (character). See nyc_pluto_changes_df.- latitude,longitude
Approximate lot location in decimal degrees, WGS84 (double).
- mihoption1,mihoption2,mihoption3,mihoption4
"1"if Mandatory Inclusionary Housing option 1, 2, 3 (deep affordability), or 4 (workforce) applies to the lot (character).- trnstzone
Transit zone, which governs residential parking requirements, e.g.
"Manhattan Core","Inner Transit Zone","Beyond the Greater Transit Zone"(character).- affresfar
Maximum allowable residential floor area ratio for affordable housing (double).
- manufar
Maximum allowable manufacturing floor area ratio (double).
- geometry
Lot polygon, MultiPolygon in EPSG:2263, as WKB (raw vector, list column after collecting).
NAfor lots not in the clipped MapPLUTO.