Log in links for this page

MassGIS Data: Municipalities

April 2022

This layer is the most accurate representation of Massachusetts' municipal (city and town) boundaries; this representation is based on the legislatively approved record of municipal boundaries. Authoritative determination of municipal boundary locations can only be provided by a licensed land surveyor. MassGIS regularly makes corrections or refinements to this data layer as information becomes available; the list of those changes is at the bottom of this web page.

Table of Contents



This political boundary datalayer has been created from latitude and longitude coordinates found in the 68-volume Harbor and Lands Commission Town Boundary Atlas. This Atlas series, and updates since it was published, describes the legal boundary for each of the 351 municipalities in Massachusetts. These coordinates were recorded from surveys of the location of each boundary marker around the periphery of each community. Each survey was tied into higher order monumented survey control points. The Atlases also include detailed descriptions of each community's boundary and location maps for each of the original boundary marker locations. The original surveys were conducted in the 1890s. The Atlas series was published in the early 1900s and has since been updated by the Survey Section of the Massachusetts Highway Department (now The Massachusetts Department of Transportation (MassDOT) - Highway Division) with changes as they are approved by the legislature.

This layer comprises four separate feature classes:

  • TOWNSSURVEY_POLY - Polygons representing inland and offshore areas
  • TOWNSSURVEY_POLYM - Multi-part polygons representing inland and offshore areas, with one feature for each of the state's 351 municipalities.
  • TOWNSSURVEY_ARC - Lines representing municipal boundaries and coastline
  • TOWNSSURVEY_PT - Points representing survey points

When stored in geodatabase format, these four feature classes are organized in a feature dataset named TOWNSSURVEY, which includes the TOWNSSURVEY_Topology; rules have been created to enforce spatial relationships among the POLY, ARC and PT layers.

Two other feature classes are available that use the inland survey-based linework but have a generalized coastline for faster display. They are named TOWNSSURVEY_ARC_GENCOAST and TOWNSSURVEY_POLYM_GENCOAST.

MassGIS staff collaborated closely with staff from the Survey Section during the development of this data layer. MassGIS staff keyed the coordinates into a database; that data entry was double-checked by staff from the Survey Section. Staff from the Survey Section then converted the latitude/longitude coordinates to the NAD83 datum and also created a version of the coordinates in state plane coordinates with units of meters. MassGIS used the state plane coordinates to "generate" points in ArcGIS.  Boundary arcs from the existing USGS-derived municipal boundary data layer were then snapped to the survey-derived points. The differences between the municipal boundary arcs digitized from those on the USGS quads and those created by snapping to the survey-derived coordinates are typically plus or minus 12 feet, although these differences are sometimes less and sometimes more. Some municipal boundary arcs (about 15% of the total) follow the edge of a road or rail right-of-way or a stream or river channel. In these cases, the new boundary arcs were "heads up" digitized based on features visible on the statewide 2001 Aerial Imagery. How each boundary arc was developed is identified in the arc attributes, as described below. MassGIS first published these survey-based boundaries in June 2004.

According to staff from the Survey Section, based on their knowledge of historical surveying methods, of changes to the North American Datum at its various versions, and of the algorithms used to convert coordinates from one datum to another, the individual boundary marker coordinates are on average approximately plus/minus three feet. Some points may be more accurate than this and some points are definitely less. The information available in this data layer CANNOT be used to determine the definitive locations of either individual boundary markers or of a specific municipal boundary. Such determinations can only be made by a professional land surveyor. Note that as part of its assistance to surveyors, MassDOT makes available the coordinate information for the individual town boundary survey points that were the basis for this data layer on its Town Corners Map.

Explore the Historic Massachusetts Board of Harbor and Land Commissioners Atlases
Going back to the early 1900's, these atlases illustrate the official boundaries of MA cities and towns. From the State Library special collections.

For communities with a coastal boundary, MassGIS collaborated with the Massachusetts Water Resources Authority and the Department of Environmental Protection to complete a 1:12,000 scale coastline.

Note that the 351 communities are the official municipal names, not including "villages" or other sections of towns. The Secretary of State's office has prepared a web page listing the Unincorporated and Unofficial Names of Massachusetts Communities. Also see the List of Town Numbers and Names and Towns Index Map.

MassGIS considers this the first release of this layer. Future work will consist of (1) improving the accuracy of boundaries identified as following a road right of way (see "Attributes" section below for description of BND_QUAL where attribute value = 2) and (2) adding offshore boundaries to the existing arc and polygon layers. The offshore boundaries are currently being reviewed by the legal counsels of the Massachusetts Highway Department and  NOAA as well as the Federal Baseline Committee. This data will not be distributed until the termination points of the offshore boundaries are approved by the Federal Baseline Committee and the Massachusetts Legislature.


This datalayer, except the coastline, was created by MassGIS. Boundaries for each community were created by adjusting the older USGS topo map town boundaries to connect the survey points (TOWNSSURVEY_PT) of a community. In many areas, the boundary creation was simply a matter of "connecting the dots" from one boundary point to the next. Where boundaries follow a stream/river or road right-of-way (ROW) the boundary was approximately delineated using the 2001 Aerial Imagery as a base. All boundaries that follow a water body or a ROW are coded in the attribute table in the BND_QUAL field.

A complex boundary situation occurs when a survey point is a "witness mark", denoted by the letters WM in the coordinate name. A witness mark point is an "on-land" representation of the next point along the boundary when that next point is in a river, wetland, or pond. A line drawn between the point before a witness mark and a witness mark point gives you the direction of the town boundary as it proceeds to the next point in the river, wetland, or pond. Witness marks are often but not always on the town boundary. The Harbor and Land Commission Town Boundary Atlases included large-scale maps of individual boundary point locations. Digital images of these maps taken by MassGIS were also used as a guide in creating the town boundaries layer.

The source for the coastal boundary was the MassDEP Wetlands (1:12,000) data layer, with the boundary being the upland-side boundaries of tidal flats and rocky inter-tidal zones. The coastline boundary was then appended to the town boundary (TOWNSSURVEY_ARC). The polygon layer (TOWNSSURVEY_POLY) was generated from TOWNSSURVEY_ARC and label points using ArcGIS software.

The TOWNSSURVEY_POLYM layer was created by dissolving the TOWNSSURVEY_POLY feature class; a subset of the attribute table was retained, and the AREA and SQUARE_MILES fields were calculated for the entirety of each town.



Field Name Width Type Contents
TOWN 21 C City or town name
TOWN-ID 3 I MassGIS Town-ID Code (1-351)
POP1980 6 I US Census Town Population: 1980
POP1990 6 I US Census Town Population: 1990
POP2000 6 I US Census Town Population: 2000
POP2010 6 I US Census Town Population: 2010
POPCH80_90 5 I Population change, 1980-1990
POPCH80_90 5 I Population change, 1980-1990
POPCH00_10 5 I Population change, 2000-2010
TYPE 2 C C = City; T = Town; TC = Town with City form of government, or (for AMESBURY and EASTHAMPTON) a City without wards or precincts. Source: https://www.sec.state.ma.us/divisions/cis/download/maps/City_Town_Map.pdf
ISLAND 1 I Polygon is (1) / is NOT (0) an island - many towns are composed of many polygons
COASTAL_POLY 3 C YES = Ocean or water polygon, within municipal limits
NO = Land polygon
FOURCOLOR 1 I Codes (1,2,3,4) allowing shading of all towns using 4 symbols (based on four-color theorem, where no adjacent polygons have the same symbol)
FIPS_STCO 5 I Federal Information Processing Standard (FIPS) State/County Code
CCD_MCD 3 C US Census Town Code
FIPS_PLACE 5 C Federal Information Processing Standard (FIPS) Town Code
FIPS_MCD 8 I FIPS State & County & Census Town Code concatenated
FIPS_COUNTY 3 I FIPS County only code
ACRES 10,3 F Area in Acres
SQUARE_MILES 8,3 F Area in Square Miles

The ArcGIS-added SHAPE_AREA field stores the polygon area in square meters; SHAPE_LEN is the polygon perimeter in meters.


Field Name Width Type Contents
BND_QUAL 1 I Boundary Quality:
1 = Straight connect from one boundary point to another
2 = Boundary line follows a right of way (ROW) which was digitized from the apparent edge of ROW visible on the 2001 color orthophotos
3 = boundary line follows a river or stream center
4 = boundary line falls within the Quabbin Reservoir
5 = boundary line falls within the coastline
6 = boundary line follows a property parcel
7 = Boundary line follows a right of way (ROW) or a stream channel which was derived from a survey plan or data provided by a municipality or survey/engineering firm
FINISHED 3 C YES = the boundary line has been adjusted from the 1:25,000 scale boundary layer
NO = the boundary line has not been adjusted from the 1:25,000 scale boundary layer
BND_UNCLAS 1 I Unclassified (Unfinished) Boundaries:
0 = boundary line is either part of the new imported coastline or was updated
1 = boundary line was not updated because a ROW map is needed
2 = boundary line was not updated because the river/stream is not visible in imagery
3 = boundary line was not updated due to some other reason
REASON 30 C Not Applicable = boundary line is either part of the new imported coastline or was updated
ROW map needed = boundary line was not updated because a ROW map is needed
River/stream not visible = boundary line was not updated because the river/stream is not visible in imagery
Other problem = boundary line was not updated due to some other reason
OUTLINE 2 I 1 = State Boundary
4 = Coastline
17 = In-state Municipal Boundary

The ArcGIS-added field SHAPE_LEN is the line's length in meters.


Field Name Width Type Contents
CORNER 100 C Survey point corner name
ID1 4 I Sequential unique whole numbers that are automatically generated while the data was in Microsoft Access
NORTH83 10,3 F Northing coordinate in NAD83 Mass. State Plane meters
EAST83 10,3 F Easting coordinate in NAD83 Mass. State Plane meters
USE 3 C YES = survey coordinate should be used in boundary delineation
NO = survey coordinate should not be used in boundary delineation

Related Database Files

This table may be joined to the Municipalities polygon layers on the TOWN_ID field:

TOWNS_POLY_AREACODE [download dBASE file as self-extracting .exe] stores telephone area codes for each municipality and reflects the addition of four new "overlay" codes in Massachusetts which took effect on April 2, 2001. For more information on the Commonwealth's area codes, see Verizon's Area Codes Lookup Web page.

TOWN_ID Town ID - Relates to TOWN_ID in TOWNSSURVEY_POLY attribute tables
AREACODE Town Area Code (413, 508/774, 617/857, 781/339, 978/351)


Displaying the Data

To display just the "land area" of each town, use the definition query of COASTAL_POLY = 'NO' for the TOWNSSURVEY_POLY layer (this query is used in the themes in the MassGIS Data Viewer). For the TOWNSSURVEY_ARC layer, symbolizing on the OUTLINE field will allow for the display of coastline as well as inter-municipal boundaries in the water, where available. See the second image above for an example.


MassGIS maintains this datalayer. Future updates are described in the "Overview" section above. If you have questions or comments about these layers please contact MassGIS.


  • July 12, 2004: re-calculated SQUARE_MILES field.
  • July 7, 2005: moved boundaries to point ID1 = 307.
  • May 8, 2006: added the TOWNSSURVEY_POLYM layer. At the same time, the TOWNS_ID field was dropped. Joins to the table on town number should be based on TOWN_ID.
  • May 24, 2006: adjusted boundaries for moved points ID1 = 1629 (Needham-Wellesley) and 1933 (Winchendon-NH border).
  • October 12, 2006: BND_QUAL values changed along Brookline-Boston border.
  • December 4, 2007: boundaries were modified in November and December, 2007, in five locations in Norfolk County, adjusted to match surveyed right-of-way (ROW) plans provided by the Norfolk County Engineering department. Edits to the ARC, POLY and POLYM layers included:
     - Bay Road (Sharon-Stoughton);
     - Clapboardtree Street (Norwood-Westwood);
     - Old Post Road (Walpole-Sharon);
     - Canton Street (Norwood-Westwood and Canton-N-W);
     - County Street (Dover-Walpole between Medfield and Westwood).
  • September 2009: TYPE was changed to 'TC' for Braintree, Palmer, Randolph and Winthrop.
  • May 2011: the Boston/Brookline boundary was modified (topological edit based on ARC feature class line moved from point ID1 1071 to 798), affecting the two polygon and one arc layers.
  • June 2011: some pseudo nodes were removed along the Haverhill boundary, affecting the two polygon and one arc layers.
  • October 2011: edits were made along the boundaries of: Palmer-Monson (based on parcels); West Springfield-Agawam (Acts and Resolves redefinition); Charlemont-Hawley, Douglas-Uxbridge and Grafton-Westborough (legislative changes).
  • November 2012: Coastal polygons added to offshore areas of Boston and Medford.
  • June 2013: Blackstone-Millville boundary edited based on Level 3 Assessors Parcels data.
  • December 2013: Edits made to the boundaries of Eastham-Orleans and Groton-Shirley based on data from L3 Assessor Parcels. Edits made to the boundaries of Boxford-Topsfield and Berlin-Hudson as part of correcting miscoded coordinates of points in the TOWNSSURVEY_PT layer.
  • February 2014: Tinker's Island reassigned to Salem from Marblehead and Bumkin Island reassigned from Hingham to Hull, based on data from Level 3 Assessors Parcels. Recoded TYPE = 'TC' for BRIDGEWATER, based on latest data from the Secretary of State's office.
  • March 2015: Duxbury-Pembroke border along Pine Brook updated based on scanned survey plan approved by the Duxbury planning board in 1953.
  • November 2015: the Boxford-Topsfield point B-T-2 was adjusted again, using coordinates supplied by MassDOT Survey section; part of the Cambridge-Somerville boundary near Route 28 was modified based on data from Cambridge.
  • December 2016: Boundaries updated between Canton-Sharon-Norwood; Sharon-Walpole; Barnstable-Mashpee; Holland-Wales. These changes were based on Level 3 parcels data, newer imagery, scanned Harbor and Lands Atlas plans, and input from the affected towns. Most of these boundaries followed streams or rights-of-way that were either traced atop older imagery or not modified from the 1:25,000 mapping of community boundaries.
  • March 2017: MassGIS edited boundaries along the borders of: Berlin-Hudson (snap lines to the Berlin-Hudson 1 and Berlin-Hudson 2 corner points); Boxford-Topsfield (snap line to the Boxford-Topsfield 3 corner point); Duxbury-Pembroke (snap to Duxbury's Level 3 parcel data); Lynn-Lynnfield (based on new delivery of Level 3 parcels from Lynn, near the Lynn-Lynnfield 2 town corner point); Walpole-Westwood-Norwood (snap lines along water boundary to Level 3 parcel data from Dover-Walpole-Westwood corner point to Norwood-Walpole 1 corner point).
  • September 2019: Fitchburg-Leominster border along a small stretch of Crawford Street updated based on a 1964 scanned survey plan from the City of Fitchburg Dept. of Public Works. Aquinnah-Chilmark border near Menemsha based on parcel data and surveyed plans from the towns.
  • June 2020: Modified the Chelsea-Everett boundary by up to about 125 feet near Beacham Street, based on Standardized Parcels and plans submitted by the cities. Modified the Lynnfield-Wakefield boundary to match a stream channel as seen on a scanned plan submitted by Wakefield. Changed TYPE to 'C' for Greenfield and 'TC' for North Attleborough.
  • September 2020: Modified small sections of the Canton-Stoughton and Dartmouth-Westport boundaries based on further review from the affected towns of figures and descriptions found in the Harbor and Land Commission Atlas.
  • April 2022: Modified boundaries between:
     - Boston-Brookline 17 and 18 and Boston-Brookline 22 and 23 survey points to match Brookline's parcels.
     - Boston-Everett 4 and 5 survey points (straight line connection) to match survey plan.
     - Boston and Everett, through BE-2 survey points to match survey plan.
     - Hanover-Norwell along Third Herring Brook based on survey plan.
     - Medford-Somerville near the intersection of the Mystic Valley Parkway and Auburn Street based on assessors plan.

Help Us Improve Mass.gov with your feedback