A computer-implemented method of determining supplemental content to be displayed with requested content, comprising: under control of one or more computer systems configured with executable instructions, receiving a request for content from a client device (202; 502) at a content provider; and providing a response to the client device including a first file relating to the requested content, the first file including code for including a first interface element in a page rendered on the client device, the response including an address for a second file to be rendered in the first interface element, the response further including targeting data and an identity of a supplemental content selection provider, wherein the second file includes code for determining the targeting data and submitting a request to the supplemental content selection provider using the targeting data, the second file further including code for including a second interface element within the first interface element and rendering a third file in the second interface element from a shadow domain (508; 608), the second interface element being restricted from cross-domain communication with the domain of the content provider, the second file further including code for receiving identification of a supplemental content provider (208; 510; 610) and supplemental content parameters from the supplemental content selection provider, the second file further including code for submitting a request for supplemental content including the supplemental content parameters to the supplemental content provider, the supplemental content to be rendered in the second interface element, wherein the targeting data cannot be determined from the second interface element in the shadow domain, and wherein the supplemental content parameters are obtained by analyzing the targeting data, and wherein the supplemental content parameters specify supplemental content or a type of supplemental content to be displayed, but do not include the targeting data. under control of one or more computer systems configured with executable instructions, receiving a request for content from a client device (202; 502) at a content provider; and providing a response to the client device including a first file relating to the requested content, the first file including code for including a first interface element in a page rendered on the client device, the response including an address for a second file to be rendered in the first interface element, the response further including targeting data and an identity of a supplemental content selection provider, wherein the second file includes code for determining the targeting data and submitting a request to the supplemental content selection provider using the targeting data, the second file further including code for including a second interface element within the first interface element and rendering a third file in the second interface element from a shadow domain (508; 608), the second interface element being restricted from cross-domain communication with the domain of the content provider, the second file further including code for receiving identification of a supplemental content provider (208; 510; 610) and supplemental content parameters from the supplemental content selection provider, the second file further including code for submitting a request for supplemental content including the supplemental content parameters to the supplemental content provider, the supplemental content to be rendered in the second interface element, wherein the targeting data cannot be determined from the second interface element in the shadow domain, and wherein the supplemental content parameters are obtained by analyzing the targeting data, and wherein the supplemental content parameters specify supplemental content or a type of supplemental content to be displayed, but do not include the targeting data.