Measuring Price Discrimination and Steering on E-commerce Web Sites

Want a brief overview of the project and a summary of results? Check out the press page:View Press Page

Interested in reading the paper? Well, the paper can be found here.

You are welcome to use any of the code or data we collected, but if you do we just ask that you cite us with [BibTex]

Our code can be found here.

Included are a few different things. Below are examples of how to run each script so that you can replicate our experiments.

  • Run python run_stores.py to start collecting data. This script sets up the SSH tunnels and executes all of the experimental treatments by running PhantomJS instances. run_spenders.py is the same, but tailored specifically for the purchase history treatments.
  • Run python compare_*.py to compare two pages of results. An example usage is python compare_cars.py expedia nyc_1.html nyc_2.html
  • Run python analyze_*.py to go through html files and extract the prices on the pages and get metrics about them. ndcg_*.py does the same thing, but outputs the nDCG numbers instead.
  • Run gnuplot.py to collect all of the analysis output and generate plots.
  • bucket_table.py and clear_cookies.py are scripts related to identifying A/B test buckets for Expedia and Hotels.com