IND variable: Crosswalk between census and NAICS code

So I am looking to match the CPS data with data from the EPA’s Envirofacts data. The CPS data has an industry variable with census codes while the EPA data has an industry variable with NAICS codes. I am using CPS data from 1990 to 2016.

The CPS Ind variable is 3 digit from 1990 until 2003 after which it becomes 4 digit. I am struggling to find a crosswalk between the census and NAICS codes that can encompass this change.

Can anyone tell me which version of the census codes the IND variable is based on between 1990 and 2016? I don’t know if the census codes are of the 2000 version or the 1990 version.

Also, does anyone have a crosswalk between census code and NAICS that could be used in this situation?


I have had to deal with this problem myself. You could create a crosswalk using IPUMS USA and then apply it to whatever CPS dataset you want. IPUMS USA has the NAICS codes as well as the standard CPS IND, CPS IND50, and CPS IND90 codes if I remember correctly. I would recommend creating the crosswalk using the ind90 codes, as these are comparable across time and are available for all IPUMS CPS data sets. Hopefully this is clear?


Hi Braymond,

I have not seen the NAICS codes available in the IPUMS dataset. Can you tell me which variable it is?

Here is the link. If you go to IPUMS USA its called INDNAICS. Yu should be able to make a crosswalk with IND. This table is also helpful:…

with this table, you should be able to make whatever cross walk you would like to a point.