How a holiday shopping story led to an investigation of equal access to retail services based on race

For those of us who aren’t retail executives or addicted to Amazon’s Prime service, Bloomberg’s story on last-minute holiday shopping in November probably didn’t register.

The story basically laid out the number of people the retailer could reach with its new Prime Free Same-Day Delivery service and how it might impact brick and mortar retailers like Target and Wal-Mart during the holiday season.

But to the reporters who wrote it, that story provided the kernel that this week resulted in Amazon’s promises to expand service for residents in predominantly black neighborhoods in Chicago, Boston, and New York following outcry from residents, city officials, and members of congress.

'Something stuck out,' Ingold said. 'We were able to quickly look at the South Side and say, Amazon doesn’t go there. That’s interesting.'

The goal, back in November, was pretty simple: add some specific numbers to a story that otherwise would have relied on the generalities of Amazon’s talking points.

“Instead of saying ‘Amazon rolls out to X-number of cities,’ we could say ‘it’s rolling out to 75 million people,’” said Bloomberg graphics artist David Ingold who worked on the story with e-commerce reporter Spencer Soper.

But in the process of reporting it, the two began to notice patterns in the data.

“Something stuck out,” Ingold said. “We were able to quickly look at the South Side (of Chicago) and say, (Amazon doesn’t) go there. That’s interesting.” Ingold, who’d been a reporter in Chicago, D.C. and New York, knew neighborhood demographics in the various cities and “quickly saw that there was a potential story.”

They ran the shopping story, then set out to collect and analyze more data.

Collecting data

At first glance, Amazon doesn’t appear to publish the zip codes in which same-day delivery is available. Instead it asks customers to search for their zip code online, and then returns a result that lets the shopper know whether or not the service is available.

In the page’s source code, however, the Bloomberg graphics team could see which zip codes were served by same-day service, which made obtaining the list of serviced areas as simple as copying and pasting the list into a file (though they'd later set up a script to regularly check for updates).

Figuring out the population and racial make-up of each neighborhood was another matter. Ingold looked to data from the American Community Survey 5-year estimate’s table B03002, which provides race information.

American Community Survey block areas for Chicago. Highlighted area explained below. Credit: David Ingold.

In the highlighted area above, for example, ACS data provides the following:

  • Total population: 3,315 (margin of error 569)
  • White alone: 1,252 (margin of error 317)
  • Black alone: 687 (margin of error 389)
  • Hispanic: 583 (margin of error 218)
  • Asian alone: 660 (margin of error 192)

Once they had a the ACS data, the Bloomberg graphics team used U.S. Census Bureau shape files and various mapping software to compare demographic data with same-day delivery zip codes.

Here’s Ingold:

“We joined the demographic data to shapefiles provided by the U.S. Census Bureau, and generated a dot density map for each city. These dot density maps were exported to Adobe Illustrator and combined with base maps created in QGIS. The maps were styled in Illustrator and exported for use on the web and in the print edition of Businessweek.

“Throughout the story, we say things like, 96% of white people in Atlanta have access to same-day delivery. These calculations were done in QGIS and R. The geoprocessing tools in QGIS allowed us to calculate the intersect areas between Amazon's delivery boundaries and the block-groups in each city. Data was exported from QGIS into R to calculate the specific totals used in the story and charts.”

Building the web graphic

The PNGs that provided the core visualization were developed for an internal audience, but the story so effectively that they were eventually published online and in Businessweek magazine.

With data and initial visualizations in hand, Ingold began passing static images around the Bloomberg office, showing editors the core of the story and how it had been visualized. Though they were meant to be an internal tool, those images told the story so effectively that they eventually became the core of the published story.

In addition to telling the story well, they had the extra benefit of not requiring readers to click through an interactive. “If someone didn’t click around,” Ingold said, “we wanted them to walk away with the same narrative as someone who did.”

They also solved the problem of easily presenting cumbersome data sets on mobile, since an image file loads easily and quickly. “Really big explorative graphics on mobile are really, really difficult,” Ingold said. “You can only put so much interactivity on a mobile device.”

The PNGs were also shareable. The map of Boston in which all neighborhoods are serviced except for the majority black neighborhood of Roxbury came to define the project and was shared more than other data visualization, Ingold said.

Adding context and framing the issue

Though the data analysis in many ways formed the core of the story, it ultimately succeeded because of the skills that both the beat reporter and graphics team brought to the table.

“We knew we had an interesting story, but there’s this enormous question of the context around this,” Ingold said. “We knew from the graphics perspective that we needed the reporters who really knew this company to make this story happen.”

While Ingold crunched data and worked on visualizations, Soper set to work finding and interviewing people in affected neighborhoods and data scientists who could bring perspective to the story.

“Once the data was crunched, the key was to attempt to answer why,” Soper said, “and it was a tremendous challenge.”

'The main takeaway and a-ha moment was that there can be bias in data,' Soper said.

Amazon is a public company, but notoriously secretive. The two asked Amazon for data on where its Prime customers and fulfillment centers are but were rebuffed. They were left to follow the thread they discovered in November and to turn to experts to help frame the story.

“The main takeaway and a-ha moment was that there can be bias in data,” Soper said. “The data that (companies are) relying on can have biases in it.”

If companies aren’t mindful of biased data they’re likely to build biased products, he said.

Put another way, “you can’t allow big data to make you a big dummy,” as Boston city councilman Tito Jackson told Bloomberg.


Amazon says it didn’t use race in determining service area boundaries. Instead it relied on "the concentration of Prime members in each area, proximity to warehouses where goods are stored and the company’s ability to find delivery partners to serve an area,” as Soper wrote.

Nevertheless Soper’s and Ingold’s work lead to a number of follow-up stories from other news organizations, outcry from residents and public officials, and, eventually, promises from Amazon to expand service. To date, the company has said it will begin offering same-day delivery to Boston’s Roxbury neighborhood, Chicago’s South Side, and New York’s Bronx Borough.

Bloomberg is keeping watch. The NodeJS script they built pulls the list of zip codes from Amazon’s site and compares it to a previous version multiple times a day. An email notification lets them know when updates occur, Ingold said.

About the author

Ryan Graff

Communications and Outreach Manager, 2011-2016

Journalism, revenue, whitewater, former carny. Recently loving some quality time @KelloggSchool.

Latest Posts

  • Prototyping Augmented Reality

    Something that really frustrates me is that, while I’m excited about the potential AR has for storytelling, I don’t feel like I have really great AR experiences that I can point people to. We know that AR is great for taking a selfie with a Pikachu and it’s pretty good at measuring spaces (as long as your room is really well lit and your phone is fully charged) but beyond that, we’re really still figuring...

    Continue Reading

  • Capturing the Soundfield: Recording Ambisonics for VR

    When building experiences in virtual reality we’re confronted with the challenge of mimicking how sounds hit us in the real world from all directions. One useful tool for us to attempt this mimicry is called a soundfield microphone. We tested one of these microphones to explore how audio plays into building immersive experiences for virtual reality. Approaching ambisonics with the soundfield microphone has become popular in development for VR particularly for 360 videos. With it,...

    Continue Reading

  • How to translate live-spoken human words into computer “truth”

    Our Knight Lab team spent three months in Winter 2018 exploring how to combine various technologies to capture, interpret, and fact check live broadcasts from television news stations, using Amazon’s Alexa personal assistant device as a low-friction way to initiate the process. The ultimate goal was to build an Alexa skill that could be its own form of live, automated fact-checking: cross-referencing a statement from a politician or otherwise newsworthy figure against previously fact-checked statements......

    Continue Reading

  • Northwestern is hiring a CS + Journalism professor

    Work with us at the intersection of media, technology and design.

    Are you interested in working with journalism and computer science students to build innovative media tools, products and apps? Would you like to teach the next generation of media innovators? Do you have a track record building technologies for journalists, publishers, storytellers or media consumers? Northwestern University is recruiting for an assistant or associate professor for computer science AND journalism, who will share an appointment in the Medill School of Journalism and the McCormick School...

    Continue Reading

  • Introducing StorylineJS

    Today we're excited to release a new tool for storytellers.

    StorylineJS makes it easy to tell the story behind a dataset, without the need for programming or data visualization expertise. Just upload your data to Google Sheets, add two columns, and fill in the story on the rows you want to highlight. Set a few configuration options and you have an annotated chart, ready to embed on your website. (And did we mention, it looks great on phones?) As with all of our tools, simplicity...

    Continue Reading

  • Join us in October: NU hosts the Computation + Journalism 2017 symposium

    An exciting lineup of researchers, technologists and journalists will convene in October for Computation + Journalism Symposium 2017 at Northwestern University. Register now and book your hotel rooms for the event, which will take place on Friday, Oct. 13, and Saturday, Oct. 14 in Evanston, IL. Hotel room blocks near campus are filling up fast! Speakers will include: Ashwin Ram, who heads research and development for Amazon’s Alexa artificial intelligence (AI) agent, which powers the...

    Continue Reading

Storytelling Tools

We build easy-to-use tools that can help you tell better stories.

View More