Jennifer Connelly była brana pod uwagę do roli Beth Emhoff, którą ostatecznie otrzymała Gwyneth Paltrow.
Film kręcono w Atlancie (Georgia, USA), Chicago, Downers Grove, Elgin, Glencoe, Glenview, Naperville, Skokie, Waukegan, Western Springs i Wilmette (Illinois, USA), Los Angeles i San Francisco (Kalifornia, USA), Casablance (Maroko), Hong Kongu (Chiny), Genewie (Szwajcaria) oraz w Londynie (Anglia, Wielka Brytania).
Jest to pierwszy film Stevena Soderbergha wydany w formacie IMAX.
Zdjęcia do filmu rozpoczęły się 27 września 2010 roku, a zakończyły 16 lutego 2011 roku.