I am trying to calculate the length of a street.

I have a census database (https://www.census.gov/geo/maps-data/data/tiger-line.html) of streets that I am viewing in ArcGIS, but the actual length of the streets is missing, although it must be somewhere if it is being displayed on the map.

Does anyone know of any API or tool that will take a street address (state and county included) and output the how long the road is?

  • Partial answer (does not include anything about API): You mention you are using ArcGIS; how many layers are you working with? Probably the fastest method I can think of is to import the layer(s) into a geodatabase because the Shape_Length is automatically included. Census TIGER files are unprojected (NAD83) so you could project it into a distance-preserving projection. You can add a new field and use the Calculate Geometry option to calculate the length in a different unit (e.g. US miles).
    – SMiller
    Feb 25, 2018 at 23:50
  • Your question's title and the body present two different questions: calculating the length of a street (easy) and getting the mile marker of a point along a street (more difficult). It sounds like your question is really the second part, if so, can you edit the question to clarify that?
    – Dan C
    Feb 26, 2018 at 15:53
  • Sorry, I edited to make clearer - I am trying to calculate the length of a street, not getting the mile marker.
    – cgp25
    Feb 26, 2018 at 17:21

2 Answers 2


Smilller is correct, the way to do this is: 1. In the Table view, Add a field 2. Right click the header for your new field and select Calculate Geometry. On the Calculate Geometry dialog, pick the Length property. Select the coordinate system and units you want to use, and click OK.

More info available here: http://desktop.arcgis.com/en/arcmap/10.3/manage-data/tables/calculating-area-length-and-other-geometric-properties.htm

If you then want to find out where an address is along the road, I suggest you geocode your address data. Then you can make a copy of your roads file, split the roads at the address points, and recalculate the geometry, and see the distances between each address.

  • Thank you! I had been viewing the data on the ArcGIS online viewer, not the Desktop (I realize I should have clarified), but when I view the data on the Desktop and check out the attribute table, I see there's a new column called Shape_length for each street, which I believe is length in meters. I will also try your suggestion! Thank you.
    – cgp25
    Feb 26, 2018 at 17:17
  • @cgp25 FYI the Shape_length field is in whatever units are used in the coordinate system of the layer. So if your layer is in UTM, meters, the length is in meters. If your layer is in US State Plane, feet, the length is in feet.
    – Dan C
    Feb 26, 2018 at 17:26
  • One more question, sorry to bother again - does anyone have any advice on how to find street WIDTH now? Thanks in advance!!!
    – cgp25
    Feb 28, 2018 at 2:25
  • Unless the street layer has properties for width (likely to be close to exact) or number of lanes (which can be used with an average lane width to calculate for an approximation) I think you're out of luck. A line in GIS has no inherent width property. And most road layers I have worked with do not have it in an attribute either. If you have some time to kill you could add an attribute for width on the layer, open Google Earth, and start using the measure tool... I really only recommend that if you don't have a deadline or are working with a very small area.
    – Colin Lang
    Mar 1, 2018 at 17:07
  • thank you again, @ColinLang! i will make an approximation based on road type and typical amount of lanes for those roads.
    – cgp25
    Mar 6, 2018 at 23:26

for mileage along the roads, it is possible to use the M (measure) value of your road. There are some extra steps to prepare your road so that they include M values, but then the extraction of mileage is quite straightforward: use "Locate Feature Along Route" tool (part of the linear referencing toolbox).

In your case, the roads could already be M-aware. Check the geometry field to see if MPolyline are mentioned,which would be a good news for you. Otherwise, you must create M-aware feature class, import the road census geometry into it and use the "calibrate Routes" tools to update the M-Values.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.