I'm using Python and am looking to get the Census Tract of a location given either a latitude and longitude or a census block. I can get the census block given latitude/longitude from here: https://geo.fcc.gov/api/census/#!/block/get_block_find but I don't know how to go from census block to census tract.

I need census tract data because I'm working with the Social Vulnerability Index data which is census-tract level.

  • 3
    What is returned by the API? If it is the FIPS code for the block, then you can use that to get the tract, as blocks are nested within block groups (12 digit FIPS) and then nested within tracts (11 digit FIPS).
    – SMiller
    Commented Mar 17, 2021 at 0:12
  • Welcome to Geographic Information Systems! Welcome to GIS SE! We're a little different from other sites; this isn't a discussion forum but a Q&A site. Your questions should as much as possible describe not just what you want to do, but precisely what you have tried and where you are stuck trying that. Please check out our short tour for more about how the site works
    – Ian Turton
    Commented Mar 17, 2021 at 8:46

1 Answer 1


Following @smiller suggestion in the comments above, I plugged the example coordinates and year (38:15:36N and 77:30:36W for Census 2010) into the linked FCC API and got Block FIPS code 511770203042000, where state=51, county=117, tract=020304, block group=2, and block=000. See the Census documentation for more detail.

Make sure you are querying the right year, or you may get the wrong codes.

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.