Build Status codecov Build status

See for notes on changes from the official 'acs' version 2.0, date 2016-03-18.

Provides a general toolkit for downloading, managing, analyzing, and presenting data from the U.S. Census, including SF1 (Decennial short-form), SF3 (Decennial long-form), and the American Community Survey (ACS). Confidence intervals provided with ACS data are converted to standard errors to be bundled with estimates in complex acs objects. Package provides new methods to conduct standard operations on acs objects and present/plot data in statistically appropriate ways.


Ezra Haber Glenn [email protected]

Current version

In March, 2016, acs version 2.0 was released, considered a substantial update over the previous version 1.2 due to (1) a major expansion in the number of datasets available and (2) a modification to the acs.fetch and acs.look options, which now require a user to explicitly specify "endyear=" for all calls.

The package now provides full support for all ACS, SF1, and SF3 data currently available via the Census API, including ACS data from 2005-2014 and Decennial data from 1990, 2000, and 2010.

You can track development of the acs package at



To install the updated version, simply fire up an R session and type:

install.packages("acs", clean=TRUE)


If you've previously installed the package, you can upgrade with:

update.packages("acs", clean=TRUE)

api.keys migration

To use the package to download data via the American Community Survey application program interface (API), users need to request an API key from the Census. See

The package includes a function, api.key.install, to allow users to save their key in the package data directory, where it can be found and used automatically for future sessions:

> # do this once, you never need to do it again
> api.key.install(key="592bc14cnotarealkey686552b17fda3c89dd389")

If a user has previously installed a key, it may be lost during the update process. If the "clean" option has been set as part of the update, the package configure scripts will attempt to migrate the key to a new location. Failing this, the install script will suggest that users run api.key.migrate() after installation, which might resolve the issue.

> api.key.migrate()

At worst, if both migration methods fail, you can simply re-run api.key.install() with your original key and be good to go.


The package includes a number of functions with advanced options, to allow users to work with data from the Census in any number of different ways. That said, the general workflow is fairly simple:

To learn more, consult the following:

Changes since previous version

See for more info, including guidance about which geographies are provided for each dataset.

Additional notes, details, issues

nealrichardson/acs documentation built on May 23, 2017, 11:37 a.m.