How does OCCSOC get coded?

Hello,

I’m trying to perform an analysis where I take microdata level OCCSOC responses from ACS and pair them with the typical education needed for entry (from the BLS standards http://www.bls.gov/emp/ep_table_112.htm). I’m coming up with a lot of N/As, either because the OCCSOC response is coded with a 0 at the end (11-2020 for example) where it doesn’t appear in the education file or because it is coded with a number of X’s at the end (ex. 11-10XX).

I’m wondering what the reasons for these atypical SOC codes are, and if there’s anything I can do about them?

Thank you so much.

The ACS does not originally code Occupation responses into SOC categories, but rather codes them into a specific Census Occupation coding structure. While this Census Occupation coding structure is based on the SOC framework, the two coding structures do not perfectly map onto one another. Codes including XX (and sometimes YY) represent combinations of SOC categories that translate to a single Census Occupation code. IPUMS-USA includes a table that lists which categories are included in these combined codes here.

The codes that end in 0, such as 11-2020, appear to also represent combinations (11-2020=Marketing and sales managers, while 11-2021=Marketing managers and 11-2022=Sales managers according to the BLS page you linked to). The 2012 ACS Occupation code list states “101 aggregated categories were combined for confidentiality reasons, including because the category contained fewer than 10,000 people nationwide.”

I hope this helps.

Hello there,

Can you share the two websites again, please? I cannot open them and have the same question here.

Thanks a lot!

Crosswalks between OCC and OCCSOC are available on this new page.

You can download the 2012 ACS occupation code list from the Census Bureau, which includes the note shared by Joe, from the 2012 ACS PUMS documentation page.

1 Like

Thank you so much again! Sorry, but I have a further question: Is there a crosswalk between complete occsoc (full 6-digit) and incomplete occsoc (end with XX, YY, etc…)?
For example, the BLS is using complete occsoc, and if I want to merge their data with the ACS occsoc, do you have any suggestions for dealing with the incomplete occsoc?

Thanks for your time!

The SOC to ACS Crosswalk on this BLS page maps more specific SOC codes into general ACS codes without using the XX and YY notation. Note that this will not allow you to map from ACS to SOC codes since a single ACS code may map to multiple SOC codes (to do this, you would need a crosswalk with employment data on the SOC level). I hope this helps you work around the issue of incomplete codes.

Hello, IPUMS!

I’m attempting to create a crosswalk that maps Standard Occupation Classification (SOC) codes at the 6-digit (i.e., detailed occupation) level to OCCSOC codes in the IPUMS ACS samples for 2003-2020. My strategy is to use the occupation code lists in PUMS documentation to map OCCSOC codes ending in ‘X’ or ‘Y’ to SOC codes from the appropriate SOC classification system (i.e., 2018, 2010, or 2000) and then map any SOC codes ending in ‘0’ (i.e., broad occupation codes) or ‘000’ (i.e., minor group codes) to the SOC detailed occupation codes they contain. Thus, I will end up with a list of SOC detailed occupation codes and the OCCSOC code that contains each detailed occupation code in each year.

I have two questions to help with this process:

  1. In the occupation code lists from the PUMS documentation, it appears that the “SOC Code” column contains occupation codes that are equivalent to the OCCSOC codes in the IPUMS ACS samples, i.e., the IPUMS OCCSOC codes are populated with occupation codes from the PUMS documentation, and I should be able to map IPUMS OCCSOC codes to occupation codes (and the SOC codes they combine) from the PUMS occupation code lists. Is that correct?

  2. The code lists from the PUMS documentation appear to use the 2018 SOC system for the 2018 and onward ACS samples, the 2010 SOC system for the 2010 to 2017 ACS samples, and the SOC 2000 system for 2009 and earlier ACS samples. If that’s correct, then why are IPUMS OCCSOC codes in this table split into five sets of years rather than three? Will the IPUMS OCCSOC codes in the (1) 2000-2004 ACS samples and (2) 2005-2009 ACS samples map to SOC codes in the pre-2010 PUMS occupation code lists; will the IPUMS OCCSOC codes in the (3) 2010-2012 ACS samples and (4) 2013-2017 ACS samples map to SOC codes in the 2010-2017 PUMS occupation code lists; and will the IPUMS OCCSOC codes in the (5) 2018 and onward ACS samples map to SOC codes in the 2018 and onward PUMS occupation code lists?

(For context, this is a step in creating a panel of occupations at the Census code level. I may choose to aggregate up SOC detailed occupation data by taking simple averages or weighting by employment counts from the BLS OEWS survey.)

Thanks in advance!

OCCSOC codes in the IPUMS ACS samples are integrated into IPUMS USA from data using the original Census variable SOCP (see the 2022 PUMS data dictionary). You can add SOCP to your data extract on IPUMS by finding the year-specific variables in the Source variables tab for OCCSOC. The codes are already aggregated in the PUMS file that is released by Census in order to preserve confidentiality. As a result, the OCCSOC to SOC code relationship is the same as the SOCP in the original PUMS file to SOC codes

I am not exactly sure why the codes for 2000-2004 differ from those of 2005-2009 and why 2010-2012 differs from those of 2013-2017 in the crosswalk. I suspect that this is the result of an unanticipated need to preserve confidentiality by aggregating certain codes together. While they are based on the same SOC system, the different groupings reflect what is available in the PUMS data. This adjustment is done by Census in the PUMS file that IPUMS processes. You can find these aggregations and their codes in the PUMS data dictionaries. Thus, the IPUMS OCCSOC codes for each of the five periods map onto the SOCP codes released in the PUMS for each of the five periods.

I hope this answers your questions. You may find additionally this IPUMS crosswalk between OCC and OCCSOC in the PUMS helpful.