METHOD AND APPARATUS FOR DETERMINING MEDIA IMPRESSIONS USING DISTRIBUTED DEMOGRAPHIC INFORMATION

By partnering with database owners to map and associate demographic data with media impressions, the method addresses the limitations of traditional monitoring techniques, providing accurate and comprehensive audience measurement across various platforms.

JP7620655B2Active Publication Date: 2025-01-23THE NIELSEN CO (US) LLC
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2023064082
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2010-12-20
Filing Date
2023-04-11
Publication Date
2025-01-23
Estimated Expiration
2031-12-19

AI Technical Summary

Technical Problem

Existing methods for monitoring Internet content access, such as server logs, are prone to errors due to tampering and caching, and traditional audience measurement techniques rely on small panels with limited demographic data, lacking accuracy and coverage.

Method used

Collaborate with database owners like Facebook and Google to leverage their user registration data, using cookie mapping techniques to associate demographic information with media impressions, expanding the panel size and improving accuracy by tracking impressions across multiple platforms.

Benefits of technology

Enhances the accuracy and coverage of audience measurement by integrating demographic data from a broader user base, ensuring privacy protection and reliable media exposure metrics.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007620655000001
    Figure 0007620655000001
  • Figure 0007620655000002
    Figure 0007620655000002
  • Figure 0007620655000003
    Figure 0007620655000003
Patent Text Reader

Abstract

To provide a method and apparatus for determining media impressions using distributed demographic information.SOLUTION: A method includes: determining media impressions using distributed demographic information; sending a request to an impression monitor system in response to detecting a login event at a client device, the login event being associated with an Internet-based service of a first Internet domain different from a second internet domain of the impression monitor system; and sending a login reporting message to a database proprietor that provides the Internet-based service, the login reporting message including first and second cookie identifiers, the first cookie identifier being associated with the first Internet domain of the Internet-based service, and the second cookie identifier being associated with the second Internet domain of the impression monitor system.SELECTED DRAWING: Figure 10
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001]

[0002] The present disclosure relates generally to media monitoring, and more particularly, to a method and apparatus for determining media impressions using distributed demographic information.

[0002]

[0001] This patent claims priority to U.S. Provisional Patent Application No. 61 / 424,952, filed December 20, 2010, which is incorporated herein by reference in its entirety. [Background technology]

[0003]

[0003] Traditionally, audience measurement entities determine audience engagement levels for media programming based on registered panel members. That is, the audience measurement entity enrolls people who agree to be monitored into a panel. The audience measurement entity then monitors the registered panel members to determine the media programming (e.g., television or radio programs, movies, DVDs, etc.) that exposed the registered panel members. In this manner, the audience measurement entity can determine exposure measurements for different media content based on the collected media measurement data.

[0004]

[0004] Techniques for monitoring user access to Internet resources, such as web pages, advertisements, and / or other content, have evolved significantly over the years. Some known systems perform such monitoring primarily through server logs. In particular, an entity serving content on the Internet may use known techniques to log the number of requests received for the entity's content at the entity's server. Summary of the Invention [Problem to be solved by the invention]

[0005]

[0021] Techniques for monitoring user access to Internet resources, such as web pages, advertisements, and / or other content, have evolved significantly over the years. At one time in the past, such monitoring was done primarily through server logs. In particular, entities serving content on the Internet often logged the number of requests received for that content at their servers. Basing Internet usage research on server logs is problematic for several reasons. For example, server logs can be tampered with, either directly or through zombie programs that repeatedly request content from the server to increment server log counts. Second, content may be retrieved once, cached locally, and then viewed repeatedly from the local cache without involving the server in the repeated viewing. Server logs cannot track such viewing of cached content. Thus, server logs are prone to both overcounting and undercounting errors.

[0006]

[0022] The invention disclosed in U.S. Patent No. 6,108,637 to Blumenau fundamentally changed the way Internet monitoring is performed, overcoming the limitations of the server-side log monitoring techniques described above. For example, Blumenau disclosed a technique in which tracked Internet content is tagged with beacon instructions (e.g., tag instructions). In particular, the monitoring instructions are associated with the HTML of the tracked content (e.g., advertisements or other Internet content). When a client requests the content, both the content and the beacon or tag instructions are downloaded to the client either simultaneously (e.g., with the tag instructions present in the HTML) or via a subsequent request (e.g., via execution of a request to retrieve the monitoring instructions embedded within the HTML of the content). The tag instructions are thus executed whenever the content is accessed, whether from the server or from a cache.

[0007]

[0023] The tag instructions cause monitoring data reflecting information about access to the content to be sent from a client that downloaded the content to a monitoring entity. The monitoring entity may be an audience measurement entity (e.g., The Nielsen Company, LLC) that does not provide the content to the client and is a trusted third party for providing accurate usage statistics. Advantageously, because the tag instructions are associated with the content (e.g., embedded or otherwise linked to a portion of the content) and executed by the client browser whenever the content is accessed, monitoring information is provided to the audience measurement company regardless of whether the client is a panelist with the audience measurement company.

[0008]

[0024] In some cases, it is important to link demographics to monitoring information. To address this issue, audience measurement companies establish panels of users who agree to provide their demographic information and to have their Internet browsing activity monitored. When an individual joins a panel, they provide detailed information about their identity and demographics (e.g., gender, race, income, home location, occupation, etc.) to the audience measurement company. The audience measurement entity sets cookies (e.g., panelist cookies) on panelist computers that allow the audience measurement entity to identify the panelist whenever the panelist accesses tagged content (e.g., content associated with a beacon instruction or tag instruction) and thus transmits monitoring information to the audience measurement entity.

[0009]

[0025] Because the majority of clients who provide monitoring information from tagged pages are not panelists and therefore unknown to audience measurement entities, it has heretofore been necessary to use statistical methods to attribute demographic information based on data collected about panelists to the larger population of users who provide data about tagged content. However, the size of the audience measurement entity's panel remains small compared to the general user population. Thus, a problem arises as to how to increase the size of the panel while ensuring that the panel's demographic data is accurate.

[0010]

[0026] There are many database owners operating on the Internet. These database owners offer services to a large number of subscribers or registered users. In exchange for the provision of the service, the subscriber registers with the owner. As part of this registration, the subscriber provides detailed demographic information. Examples of such database owners include social network providers such as Facebook®, Myspace, etc. These database owners set cookies on their subscribers' computing devices (e.g., computers, mobile phones, etc.) to enable the database owner to recognize the user when the user visits the database owner's website.

[0011]

[0027] Internet protocols make cookies inaccessible outside the domain in which they are set (e.g., Internet domain, domain name, etc.). Thus, a cookie set within the HFZlaw.com domain is accessible to servers within the HFZlaw.com domain, but not to servers outside that domain. Thus, audience measurement entities may find it advantageous to access cookies set by database owners, but are unable to do so.

[0012]

[0028] In view of the above, it would be advantageous to leverage the existing databases of database owners to collect broader internet usage and demographic data. However, achieving this goal presents several problems. For example, the question arises of how to access the database owner's data without compromising the privacy of the subscribers, panelists, and / or owners of the tracked content. Another problem is how to access this data given the technical limitations imposed by Internet protocols that prevent audience measurement entities from accessing cookies set by the database owners. The example methods, apparatus, and articles of manufacture disclosed herein solve these problems by extending the beaconing process to include partnered database owners and by using such partners as a source of distributed demographic information. [Means for solving the problem]

[0013]

[0029] Examples of methods, apparatus, systems and / or articles of manufacture disclosed herein work with one or more database owners (also referred to herein as partners). The database owners provide internet services to the database owners' registered users (e.g., their database owners' users) and store demographic information about those registered users (e.g., in user account records). As part of this work, the database owners agree to provide demographic information of the database owners' registered users to audience measurement entities for purposes of measuring demographic-based exposure to media, such as content and / or advertisements. To prevent violation of privacy agreements with the database owners' registered users, examples disclosed herein employ a cookie mapping technique. That is, the database owners can maintain a mapping of their registered user cookies (i.e., partner cookies assigned to their registered users by the database owners) to cookies assigned to the same registered users by the audience measurement entities (i.e., audience measurement entity (AME) cookies). In this way, the audience measurement entities can log impressions of registered users based on the AME cookies and send full or partial AME cookie-based impression logs to the database owners. The database owner can then match the database owner's registered users to AME cookie-based impressions based on its partner-AME cookie map. The database owner can then use the match to associate demographic information about the matching registered users with the corresponding impression logs. The database owner can then remove any identifying data (i.e., partner cookie data) from the demographic-based impression logs and provide the demographic-based impression logs to audience measurement entities without revealing the identities of the database owner's registered users to the audience measurement entities.Thus, examples of the techniques disclosed herein may be implemented without compromising the privacy of registered users of database owners who partner with audience measurement entities to track impressions based on audience demographics.

[0014]

[0030] The database owner (e.g., Facebook) can access cookies set on client devices (e.g., computers) and thereby identify clients based on the database owner's internal records (e.g., user account records). Because client device identification is done with reference to a very large database of registered users, far exceeding the amount of people present in a typical audience measurement panel, this process can be used to develop data that is extremely accurate, reliable, and detailed.

[0015]

[0031] Because the audience measurement entity remains at the first leg of the data collection process (i.e., receiving the tag request generated by the tag instruction from the client device to log an impression), the audience measurement entity can obscure from the database owner the source of the logged content access, as well as the identity of the content (e.g., advertisements and / or other types of media) itself (thereby protecting the privacy of the content source) without compromising the database owner's ability to provide demographic information corresponding to those of the database owner's subscribers for whom the audience measurement entity has logged impressions.

[0016]

[0032] Using the example methods, apparatus, and / or articles of manufacture disclosed herein, demographic information can be used to determine impressions or exposures to advertisements and / or other types of media, such as content, where the demographic information is distributed across different databases on the Internet (e.g., different website owners, different service providers, etc.). The example methods, apparatus, and articles of manufacture disclosed herein not only allow for more accurate correlation of demographics with media impressions, but also effectively expand the size and composition of the panel beyond those who participate (and / or willingly participate) in the viewership entity's panel to those registered in other Internet databases, such as those in social media sites such as Facebook, Twitter, Google, etc. This expansion leverages the content tagging capabilities of the audience viewership entity as well as the use of databases of non-viewership entities such as social media and other websites to create very large, demographically accurate panels, resulting in accurate and reliable measurements of exposure to Internet content, such as advertisements and / or programming.

[0017]

[0033] Traditionally, audience measurement entities (also referred to herein as "viewership entities") determine demographic reach for advertising and media programming based on registered panel members. That is, the audience measurement entity enrolls people who agree to be monitored into a panel. During enrollment, the audience measurement entity receives demographic information from the enrolled people so that later correlations can be made between the audience measurement entity's advertising / media exposure to panelists and different demographic markets. Unlike conventional techniques in which the audience measurement entity relies solely on its own panel member data to collect demographic-based audience measurements, the example methods, apparatuses and / or articles of manufacture disclosed herein enable the audience measurement entity to obtain demographic information from other entities that operate based on a user enrollment model. As used herein, a user enrollment model is a model in which a user subscribes to the services of those entities by creating a user account and providing demographic-related information about themselves. Obtaining such demographic information associated with the database owner's registered users enables the audience measurement entity to augment or supplement its panel data with substantially reliable demographic information from an external source (e.g., the database owner), thus expanding the coverage, accuracy, and / or completeness of the audience measurement entity's demographic-based audience measurements. Such access also enables the audience measurement entity to monitor people who would not otherwise join its audience measurement panel.

[0018]

[0034] Any entity having a database that identifies the demographics of a collection of individuals may collaborate with an audience measurement entity. Such entities are referred to herein as "database owners" and include entities such as Facebook, Google, Yahoo!, MSN, Twitter, Apple iTunes, Experian, and others. Such database owners may be, for example, online web service providers. For example, a database owner may be a social networking site (e.g., Facebook, Twitter, MySpace, and others), a multi-service site (e.g., Yahoo!, Google, Experian, and others), an online retailer site (e.g., Amazon.com, Buy.com, and others), and / or any other web service site that maintains user registration records, regardless of whether the site fits into none, one, or more of the above categories.

[0019]

[0035] Example methods, apparatus and / or articles of manufacture disclosed herein may be implemented by an audience measurement entity, a ratings entity, or any other entity interested in measuring or tracking audience exposure to advertising and / or any other media.

[0020]

[0036] To increase the likelihood that measured viewership numbers will be accurately attributed to the correct demographics, example methods, apparatus, and / or articles of manufacture disclosed herein use demographic information located in the records of the audience measurement entity as well as demographic information located in one or more database owners (e.g., web service providers) that maintain records or profiles of users with accounts. In this manner, example methods, apparatus, and / or articles of manufacture can be used to supplement demographic information maintained by an audience measurement entity (e.g., an audience measurement company such as The Nielsen Company of Schaumburg, Illinois, USA, which collects media exposure measurements and / or demographics) with demographic information from one or more different database owners (e.g., web service providers).

[0021]

[0037] The use of demographic information from disparate data sources (e.g., high-quality demographic information from audience measurement company panels and / or web service provider registered user data) results in improved reporting effectiveness of metrics for online and / or offline advertising campaigns. Examples disclosed herein use online registration data to identify user demographics. Such examples also use server impression counting, tagging (also referred to as beaconing), and / or other techniques to track the amount of advertising and / or content impressions attributed to their users. Online web service providers, such as social networking sites, and multi-service providers (collectively and individually referred to herein as online database owners) maintain detailed demographic information (e.g., age, gender, geographic location, race, income level, education level, religion, etc.) collected through user registration processes. An impression corresponds to a household or individual being exposed to the corresponding media content and / or advertisement. Thus, an impression represents a household or individual being exposed to an advertisement or content or a group of advertisements or content. In Internet advertising, impression volume or impression count is the total number of times an advertisement or advertising campaign is accessed by a web population (including, for example, access counts as reduced by, for example, pop-up blockers and / or as increased by, for example, retrieval from a local cache memory).

[0022]

[0038] Example impression reports generated using example methods, apparatus, and / or articles of manufacture disclosed herein can be used to report TV GRPs and online GRPs in a parallel manner. For example, advertisers can use impression reports to report the amount of unique people or users reached individually and / or collectively by TV and / or online ads.

[0023]

[0039] Although examples are disclosed herein in the context of advertisements, advertisement contacts, and / or advertisement impressions, such examples may additionally or alternatively be implemented in the context of other types of media in addition to or instead of advertisements. That is, the processes, apparatus, systems, operations, structures, data, and / or information disclosed herein in the context of advertisements may similarly be used and / or implemented for use with other types of media, such as content. "Media" refers to content and / or advertisements. Websites, movies, television, and / or other programming are generally referred to herein as content. Advertisements are typically distributed along with the content. Traditionally, content has been provided to viewers at little or no cost because the content is subsidized by advertisers who pay for advertisements to be distributed along with the content. [Brief description of the drawings]

[0024] [Figure 1] FIG. 1 illustrates an example system for determining advertisement and / or content impressions using distributed demographic information. [Diagram 2] FIG. 1 illustrates an example method for reporting cookies to an audience measurement entity and database owner(s) in response to a user logging into the database owner(s)' website(s). [Diagram 3] 2 illustrates an example manner in which a web browser may report impressions to an impression monitor of the example system of FIG. 1. [Figure 4] FIG. 1 is a diagram of an example apparatus that may be used to associate impressions with demographics of users registered with one or more database owners. [Diagram 5] FIG. 2 is a diagram of an example partner cookie map that may be used by an internet service database owner to map user identifiers associated with an audience measurement entity with user identifiers of users registered with the internet service database owner. [Figure 6]2 is an example impression table generated by the impression monitoring system of the example system of FIG. 1 to correlate impressions with user identifiers of monitored audience members. [Figure 7] FIG. 2 illustrates an example partner-based impressions table generated by an internet service database owner to correlate impressions with user identifiers of registered users of the internet service database owner. [Figure 8] FIG. 2 illustrates an example impressions table showing the amount of impressions associated with monitored users. [Figure 9] FIG. 13 illustrates an example campaign-level age / gender and impression composition table generated by a database owner. [Figure 10] FIG. 11 is a flow diagram representing example machine-readable instructions that may be executed to report login events and user cookies to a database owner. [Figure 11] FIG. 1 is a flow diagram representing example machine-readable instructions that may be executed to map an audience measurement entity (AME) cookie identifier to a user identifier for a user registered with a database owner. [Figure 12] FIG. 1 is a flow diagram representing example machine-readable instructions that may be executed to log impressions. [Figure 13] FIG. 1 is a flow diagram representing example machine-readable instructions that may be executed to generate a demographic-based impression report. [Figure 14] FIG. 14 illustrates an example processor system that can be used to execute the example instructions of FIGS. 10-13 to implement the example devices and systems of FIGS. 1, 2, 3, and / or 4. [Figure 15] FIG. 4 is a diagram of an example device that may be used to implement the impression monitor of FIGS. 1-3. [Figure 16] 3 is a diagram of an example device that may be used to implement the cookie reporter of FIG. 2. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0025]

[0040] Referring now to FIG. 1, an example system 100 is shown. In the illustrated example, the system 100 includes an impression monitor system 102, which may be owned and / or operated by an audience measurement entity 103. In the illustrated example, the impression monitor system 102 works collaboratively with one or more database owners, two of which are shown as Partner A Database Owner 104a and Partner B Database Owner 104b, to generate impression reports 106a and 106b using distributed demographic information collected by the database owners 104a and 104b. In the illustrated example, the impression reports 106a and 106b indicate demographic segments, populations, or groups that were exposed to identified advertisements or content. "Distributed demographic information" is used herein to refer to demographic information obtained from database owners, such as online web service providers. In the illustrated example, the impression monitor system 102 may be owned and / or operated by an audience measurement entity to collect and log impressions from client devices 108, e.g., using audience measurement entity (AME) cookies set on those client devices 108. In the illustrated example described herein, AME cookies (e.g., AME cookies 208 of FIG. 2 ) are set in the client devices 108 in response to contacting the audience measurement entity 103 after executing a monitoring or tagging instruction, regardless of whether all, some, or none of the client devices 108 are associated with the audience member panel of the audience measurement entity 103. That is, by setting an AME cookie in the client device 108, the audience measurement entity 103 can log ad and / or content impressions, regardless of whether the ad and / or content impressions are attributable to a panelist or a non-panelist.In the illustrated example of FIG. 1, client device 108 may be a fixed or portable computer, a handheld computing device, a smartphone, an Internet appliance, and / or any other type of device that can connect to the Internet and present media content.

[0026]

[0041] In the illustrated example, content providers and / or advertisers distribute advertisements 110 over the Internet to users accessing websites and / or online television services (e.g., web-based TV, Internet Protocol TV (IPTV), etc.). In the illustrated example, advertisements 110 may be individual standalone advertisements and / or may be part of one or more advertising campaigns. The advertisements in the illustrated example are encoded with an identification code (i.e., data) that identifies the associated advertising campaign (e.g., campaign ID, if any), a creative type ID (e.g., identifying a Flash-based advertisement, a banner advertisement, a rich type advertisement, etc.), a source ID (e.g., identifying the advertisement publisher), and / or a placement ID (e.g., identifying the physical placement of the advertisement on the screen). The advertisements 110 in the illustrated example are also tagged or encoded to include computer-executable supervisory instructions (e.g., Java, JavaScript, or any other computer language or script) that are executed, for example, by a web browser accessing advertisement 110 over the Internet. In the illustrated example of FIG. 1, advertisements 110 are presented to audience members via client devices 108. Computer-executable monitoring instructions may additionally or alternatively be associated with the content being monitored. Thus, while this disclosure often speaks of tracking advertisements, it is not limited to tracking any particular type of media. To the contrary, this disclosure may be used to track any type or form of media (e.g., content and / or advertisements) within a network. Regardless of the type of media being tracked, execution of the monitoring instructions causes the web browser to send an impression request 112 (e.g., referred to herein as a tag request 112) to a specified server (e.g., an audience measurement entity). The tag request 112 may be implemented using an HTTP request.However, whereas an HTTP request traditionally identifies a web page or other resource to be downloaded, the tag request 112 in the illustrated example includes audience measurement information (e.g., an advertising campaign identification, a content identifier, and / or a user identification information) as the payload of the tag request. The server to which the tag request 112 is directed (e.g., the impression monitor system 102) is programmed to log the audience measurement data resulting from the tag request 112 as impressions (e.g., advertising and / or content impressions, depending on the nature of the media tagged with the monitoring instructions). To collect and log the exposure measurements, the impression monitor system 102 includes an AME impression store 114. An example of an impression logging process is described in more detail below in conjunction with FIG. 3.

[0027]

[0042] In some examples, advertisements tagged with such tagging instructions are distributed along with Internet-based media content, such as, for example, web pages, streaming video, streaming audio, IPTV content, etc. As noted above, the methods, apparatus, systems, and / or articles of manufacture disclosed herein are not limited to advertisement monitoring, but may be configured for any type of content monitoring (e.g., web pages, movies, television programs, etc.). Examples of techniques that may be used to implement such monitoring, tagging, and / or beaconing instructions are described in U.S. Patent No. 6,108,637 to Blumenau, which is incorporated herein by reference in its entirety.

[0028]

[0043] In the illustrated example of FIG. 1, the impression monitor system 102 tracks users associated with impressions using AME cookies (e.g., universally unique identifier (UUID) name-value pairs) when a client device 108 presents an advertisement (e.g., advertisement 110) and / or other content. Due to Internet security protocols, the impression monitor system 102 is only able to collect cookies (e.g., AME cookies) that are set within its domain. Thus, for example, if the impression monitor system 102 operates within the "Nielsen.com" domain, it is only able to collect cookies that are set within the Nielsen.com domain. Thus, when the impression monitor system 102 receives a tag request 112 from a client device 108, it can only access AME cookies that are set on that client device for the Nielsen.com domain, and cannot access cookies that are set outside of its domain (e.g., outside the Nielsen.com domain).

[0029]

[0044] To overcome domain limitations associated with collecting cookie information, the impression monitoring system 102 monitors impressions of users of client devices 108 who are registered users of one or both of the Partner A database owner 104a and the Partner B database owner 104b. When a user of one of the client devices 108 logs into the service of one of the database owners 104a or 104b, the client device 108 performs an initialization (INIT) AME cookie message exchange 116 with the impression monitoring system 102 and sends a login report message 118 to the database owner providing the service. For example, as described in more detail below in connection with FIG. 2, when a user logs into the service of the Partner A database owner 104a, the INIT AME cookie message exchange 116 sets an AME cookie in the client device 108 based on the domain of the impression monitoring system 102 for the user who logged into the service of the Partner A database owner 104a. In addition, the login report message 118 sent to the Partner A database owner 104a includes the same AME cookie for the client device 108 and the Partner A cookie set by the Partner A database owner 104a for the same client device 108. In the illustrated example, the Partner A database owner 104a sets a Partner A cookie in the client device 108 when the client device 108 visits the Partner A database owner's 104a web page and / or when a user logs into the Partner A database owner's 104a service via the Partner A database owner's 104a login page (e.g., login web page 204 in FIG. 2). In the illustrated example, the AME cookie is outside the Partner A cookie's domain (e.g., the root domain). The login report message 118 enables the Partner A database owner 104a to map its Partner A cookie to an AME cookie for the user of the client device 108.The INIT AME cookie message exchange 116 includes a login timestamp indicating when the user associated with the specified AME cookie logged into Partner A Database Owner 104a. If an AME cookie was previously set for the client, a new AME cookie is not set unless the previous AME cookie has been removed from the client, is no longer present on the client, and / or has expired. These processes are described in more detail below in conjunction with FIG. 2.

[0030]

[0045] 3, the impression monitor system 102 receives tag requests 112 based on the ads and / or content presented via the client devices 108 and logs impressions based on the presented ads and / or content in association with the respective AME cookies of the client devices 108. In the illustrated example of FIG. 1, the impression monitor system 102 stores the logged impressions in an AME impression store 114 and then transmits an AME impression log 122 including some or all of the logged impressions from the AME impression store 114 to the partner database owners 104a and 104b.

[0031]

[0046] Each of the partner database owners 104a and 104b can then use their respective AME cookie to partner cookie mappings to match demographics of users of client devices 108 identified based on the partner cookies with impressions logged based on the AME cookies in the AME impression log 122. Examples of demographic matching and reporting are described in more detail below in connection with FIG. 4. Because the audience measurement entity 103 sets an AME cookie on any client (i.e., including non-panelists) that sends a tag request to the audience measurement entity 103, the mapping of AME cookies to partner cookies is not limited to panelists, but instead extends to any client that accesses the tagged media. As a result, the audience measurement entity 103 can leverage the partner's data as if non-panelists with AME cookies were panelists of the audience measurement entity 103, thereby effectively increasing the size of the panel. In some examples, the audience measurement entity's panel is excluded.

[0032]

[0047] Figure 2 illustrates an example method for setting a cookie by the impression monitor system 102 and reporting the cookie to a database owner (e.g., Partner A database owner 104a and / or Partner B database owner 104b) in response to a user logging into the database owner's website. One of the client devices 108 of Figure 1 is shown in Figure 2 and includes a cookie reporter 202 configured to monitor login events on the client device 108 and to send cookies to the impression monitor system 102 and the database owners 104a and 104b. In the illustrated example of Figure 2, the cookie reporter 202 is shown engaging in an INIT AME cookie message exchange 116 with the impression monitor system 102 and sending a login report message 118 to the Partner A database owner 104a.

[0033]

[0048] In the illustrated example of FIG. 2, the cookie reporter 202 is implemented using computer-executable instructions (e.g., Java, JavaScript, or any other computer language or script) executed by a web browser. Also in the illustrated example of FIG. 2, the cookie reporter 202 is provided to the client directly or indirectly by the audience measurement entity that owns and / or operates the impression monitor system 102. For example, the cookie reporter 202 may be provided to the database owner by the AME 103 and then downloaded to the client device 108 from a server serving the Partner A database owner 104a's (or Partner B database owner 104b's, or any other partner database owner's) login web page 204 in response to the client device 108 requesting the login web page.

[0034]

[0049] The web browser of the client device 108 can run a cookie reporter 202 to monitor login events associated with a login page 204. When a user logs into the Partner A database owner 104a's service via the login page 204, the cookie reporter 202 initiates an INIT AME message exchange 116 by sending a request 206 to the impression monitor system 102. In the illustrated example of FIG. 2, the request 206 is a dummy request because the purpose of the request is not to actually retrieve a web page, but instead to have the impression monitor system 102 generate an AME cookie 208 for the client device 108 (assuming that an AME cookie is not already set for the client and / or does not exist on the client). The AME cookie 208 uniquely identifies the client device 108. However, because the client device 108 may not be associated with a panelist of the AME 103, the identity and / or characteristics of the user may not be known. The impression monitor system 102 then tracks or logs impressions associated with the client device 108 using the AME cookie 208, regardless of whether the client device 108 is a panelist on the AME 103, as described below in connection with FIGURE 3. Because the disclosed examples monitor clients as panelists even though they may not be registered (i.e., have not consented to being a panelist on the AME 103), such clients may be referred to herein as pseudo-panelists.

[0035]

[0050] The request 206 in the illustrated example is implemented using an HTTP request, including a header field 210, a cookie field 212, and a payload field 214. The header field 210 stores standard protocol information associated with the HTTP request. When the client device 108 has not yet set an AME cookie, the cookie field 212 is empty, indicating to the impression monitor system 102 that an AME cookie 208 should be created and set in the client device 108. In response to receiving a request 206 that does not include an AME cookie 208, the impression monitor system 102 generates an AME cookie 208 and sends the AME cookie 208 to the client device 108 in a cookie field 218 of a response message 216 as part of the INIT AME cookie message exchange 116 of FIG. 1, thereby setting the AME cookie 208 in the client device 108.

[0036]

[0051] In the illustrated example of FIG. 2, the impression monitor system 102 also generates a login timestamp 220 indicating the time the user logged in to the login page 204 and sends the login timestamp 220 to the client device 208 in a payload field 222 of the response 216. In the illustrated example, the login timestamp 220 is generated by the impression monitor system 102 (e.g., not the client device 108) so that all login events from all client devices 108 are time-stamped based on the same clock (e.g., the clock of the impression monitor system 102). In this way, the login time is not skewed or offset based on the clocks of each client device 108, which may have a time difference between each other. In some examples, the timestamp 220 may be omitted from the payload 222 of the response 216, and the impression monitor system 102 may instead indicate the login time based on a timestamp in the header field 224 of the response 216. In some examples, the response 216 is an HTTP 302 redirect response that includes the URL 226 of the Partner A database owner 104a to which the cookie reporter 202 should send the AME cookie 208. The impression monitor system 102 populates the redirect response with the URL.

[0037]

[0052] In the illustrated example of FIG. 2, after receiving the response 216, the cookie reporter 202 generates and sends a login report message 118 to the Partner A database owner 104a. For example, the cookie reporter 202 in the illustrated example sends the login report message 118 to the URL indicated by the login page 204. Alternatively, if the response 216 is an HTTP 302 redirect and includes a URL 226, the cookie reporter 202 uses the URL 226 to send the login report message 118 to the Partner A database owner 104a. In the illustrated example of FIG. 2, the login report message 118 includes a Partner A cookie 228 in a cookie field 230. The Partner A cookie 228 uniquely identifies the client device 108 for the Partner A database owner 104a. Also, in the illustrated example, the cookie reporter 202 sends the AME cookie 208 and the login timestamp 220 in a payload field 232 of the login report message 118. Thus, in the illustrated example of FIG. 2, the AME cookie 208 is sent to the Partner A database owner 104a as regular data (e.g., data parameter) or payload in the login report message 118 to overcome the fact that the AME cookie 208 was not set in the domain of the Partner A database owner 104a. In the illustrated example, the AME cookie 208 corresponds to another domain (e.g., Nielsen.com root domain) outside of the domain of the Partner A cookie 228 (e.g., Facebook.com root domain). Using the example process illustrated in FIG. 2 is advantageous because it allows for sending cookie data across different domains, which would not otherwise be possible using known cookie communication techniques. The database owner 104 receives the AME cookie 208 in association with the Partner A cookie 228, thereby creating an entry in an AME cookie-to-partner cookie map (e.g., Partner cookie map 236).

[0038]

[0053] 2 as including the Partner A cookie 228, the cookie field 230 is empty in the login report message 118 if the Partner A database owner 104a has not yet set the Partner A cookie 228 in the client device 108. In this manner, the empty cookie field 230 prompts the Partner A database owner 104a to set the Partner A cookie 228 in the client device 108. In such a case, the Partner A database owner 104a sends a response message (not shown) to the client device 108 that includes the Partner A cookie 228 and records the Partner A cookie 228 in association with the AME cookie 208.

[0039]

[0054] In some examples, the Partner A database owner 104a uses the Partner A cookies 228 to track the online activities of registered users of the Partner A database owner 104a. For example, the Partner A database owner 104a may track users' visits to web pages hosted by the Partner A database owner 104a, display those web pages according to the user's preferences, and so on. The Partner A cookies 228 may also be used to collect "domain-specific" user activity. As used herein, "domain-specific" user activity is user Internet activity associated within a single entity's domain(s). Domain-specific user activity may also be referred to as "intra-domain activity." In some examples, the Partner A database owner 104a collects intra-domain activity, such as the number of web pages visited by each registered user (e.g., web pages of social network domains, such as other social network member pages, or pages within other domains) and / or the type of device, such as a mobile device (e.g., a smartphone) or a fixed device (e.g., a desktop computer), used for access. The Partner A database owner 104a may also track account characteristics, such as the amount of social connections (e.g., friends) maintained by each registered user, the amount of images posted by each registered user, the amount of messages sent or received by each registered user, and / or any other characteristics of the user accounts.

[0040]

[0055] In some examples, the cookie reporter 202 is configured to send the request 206 to the impression monitor system 102 and the login report message 118 to the Partner A database owner 104a only after the Partner A database owner 104a indicates that the user login via the login page 204 was successful. In this way, the request 206 and the login report message 118 are not made unnecessarily in the event of an unsuccessful login. In the illustrated example of FIG. 2, a successful login ensures that the Partner A database owner 104a will associate the correct demographics of the logged in registered user with the Partner A cookie 228 and the AME cookie 208.

[0041]

[0056] In the depicted example of Figure 2, Partner A database owner 104a includes a server 234, a partner cookie map 236, and a user accounts database 238. Although not shown, other database owners that partner with audience measurement entity 103 (Figure 1) (e.g., Partner B database owner 104b of Figure 1) also include respective partner cookie maps similar to partner cookie map 236 and user accounts databases similar to user accounts database 238, but of course for their own users. Server 234 in the depicted example communicates with client device 108, e.g., to receive login information, receive cookies from client device 108, set cookies in client device 108, etc.

[0042]

[0057] Partner cookie map 236 stores partner cookies (e.g., Partner A cookie 228) in association with their respective AME cookie (e.g., AME cookie 208) and respective timestamps (e.g., timestamp 220). In the illustrated example of FIG. 2, partner cookie map 236 stores the unique user ID (UUID) found in the name-value pair (i.e., a parameter name such as "user_ID" and a value such as UUID) of Partner A cookie 228 in association with the unique user ID found in the name-value pair of AME cookie 208. In addition, partner cookie map 236 stores login timestamp 220 in association with the UUID to indicate the time when the corresponding user login occurred. Briefly referring to FIG. 5, an example implementation of the Partner Cookie Map 236 is shown, where an AME User ID column 502 stores a UUID from an AME cookie (e.g., AME Cookie 208 of FIG. 2), a Partner User ID column 504 stores a UUID from a partner cookie (e.g., Partner A Cookie 228 of FIG. 2), and a Login Timestamp column 506 stores a login timestamp (e.g., Login Timestamp 220 of FIG. 2). In the illustrated example disclosed herein, the Partner A database owner 104a uses the Partner Cookie Map 236 to match impressions received from the impression monitor system 102 based on an AME cookie (e.g., AME Cookie 208) to registered users of the Partner A database owner 104a identified by their respective Partner A cookies (e.g., Partner A Cookie 228). In this manner, the Partner A database owner 104a can determine which of its registered users is associated with a particular impression logged by the impression monitor system 102.

[0043]

[0058] Returning to FIG. 2, the Partner A Database Owner 104a uses the User Account Database 238 to store, among other things, demographic information about registered users of the Partner A Database Owner 104a. In the illustrated example of FIG. 2, such demographic information is received from registered users during the enrollment and / or registration process or during a subsequent personal information update process. The demographic information stored in the User Account Database 238 may include, for example, age, gender, interests (e.g., music interests, movie interests, product interests, or any other topic-related interests), number of friends or social connections maintained by each registered user through the Partner A Database Owner 104a, personal annual income, household income, geographic location of residence, geographic location of work, year(s) of graduation, amount of group associations, or any other demographic information. After the Partner A Database Owner 104a determines which registered users of the Partner A Database Owner 104a correspond to which logged impressions based on the Partner Cookie Map 236, the Partner A Database Owner 104a uses the User Account Database 238 to associate demographic information with the particular impressions logged by the impression monitoring system 102.

[0044]

[0059] FIG. 3 illustrates an example system 300 that may be used to log impressions in the impression monitor system 102 of the example system 100 of FIG. 1. The example system 300 enables the impression monitor system 102 of FIG. 1 and FIG. 2 to log impressions in association with corresponding AME cookies (e.g., AME cookie 208 of FIG. 2) based on tag requests (e.g., tag requests 112 of FIG. 1) received from a web browser 302 executed by a client device (e.g., any client device 108 of FIG. 1 and FIG. 2). In the illustrated example of FIG. 3, the impression monitor system 102 logs impressions from any client device (e.g., client device 108 of FIG. 1) from which the impression monitor system 102 receives tag requests 112, as described below. The impression monitor system 102 compiles the received impression data in an AME impression data store 114.

[0045]

[0060] With particular reference to FIG. 3, the client device may be any one of the client devices 108 of FIG. 1 and FIG. 2, or another device not shown in FIG. 1 or FIG. 2. However, for ease of explanation and without loss of generality, the client device will be referred to as the client device 108. As shown, the client device 108 sends a communication to the impression monitor system 102. In the illustrated example, the client device 108 runs a web browser 302 that is directed to a host website (e.g., www.acme.com) that displays one of the advertisement(s) 110 received from an advertisement publisher 303. The advertisement 110 in the illustrated example is tagged with identifier information (e.g., campaign ID, creative type ID, placement ID, publisher source URL, etc.) and tag instructions 304. When the tag instructions 304 are executed by the client device 108, the tag instructions 304 cause the client device 108 to send a tag request 112 to the URL address of the impression monitor system 102 as specified in the tag instructions 304. Alternatively, the URL address specified in the tag instructions 304 can direct the tag request 112 to any other server owned, operated, and / or accessible by the audience measurement entity 103 (FIG. 1) or another entity. The tag instructions 304 may be implemented using JavaScript or any other type(s) of executable instruction(s), including, for example, Java, HTML, etc. It should be noted that tagged content, such as web pages and / or any other media, is processed similarly to tagged advertisements 110. That is, for any tagged media, a corresponding tag instruction is received in association with the download of the tagged content, causing a tag request to be sent from the client device that downloaded the tagged content to the impression monitor system 102 (or any other server indicated by the instruction).

[0046]

[0061] In the illustrated example of FIG. 3, the tag request 112 is implemented using an HTTP request and is detailed to include a header field 310, a cookie field 312, and a payload field 314. In the illustrated example of FIG. 3, the web browser 302 stores the AME cookie 208 of FIG. 2 in the cookie field 312 and stores ad campaign information 316 and a publisher site ID 318 in the payload field 314. In the illustrated example, the ad campaign information 316 may include information identifying one or more of the associated ad campaigns (e.g., an ad campaign ID), a creative type ID (e.g., identifying a Flash-based ad, a banner ad, a rich type ad, etc.), and / or a placement ID (e.g., identifying the physical placement of the ad on the screen). In some examples, to log content impressions, the ad campaign information 316 is replaced with content information identifying the content (e.g., a content identifier), a creative ID, and / or a placement ID. In the illustrated example, the publisher site ID 318 identifies the source of the advertisement 110 and / or content (eg, a source ID identifying the advertisement publisher 303 and / or content publisher).

[0047]

[0062] In the illustrated example, in response to receiving the tag request 112, the impression monitor system 102 logs the impression associated with the client device 108 in the AME impression store 114 by storing the AME cookie 208 in association with the content identifier (e.g., ad campaign information 316 and / or publisher site ID 318). In addition, the impression monitor system 102 generates a timestamp indicating the time / date when the impression occurred and stores the timestamp in association with the logged impression. An example implementation of an example AME impression store 114 is shown in FIG. 6. Briefly referring to FIG. 6, the AME impression store 114 includes an AME user ID column 602 for storing an AME cookie (e.g., AME cookie 208 of FIGs. 2 and 3), a timestamp column 604 for storing an impression timestamp indicating when the impression occurred on a client device (e.g., client device 108 of FIGs. 1-3), a campaign ID column 606 for storing campaign information 316 of FIG. 3, and a site ID column 608 for storing publisher site ID 318 of FIG. 3.

[0048]

[0063] FIG. 4 is an example apparatus 400 that may be used to associate impressions with demographics of users (e.g., users of client devices 108 of FIGS. 1-3) registered with one or more database owners (e.g., partner database owners 104a and 104b of FIGS. 1-3). In some examples, apparatus 400 is implemented at one or more database owners (e.g., partner database owners 104a and 104b of FIGS. 1-3). Alternatively, apparatus 400 may be implemented at other sites. In some examples, apparatus 400 may be developed by audience measurement entity 103 (FIG. 1) and provided to database owners to enable the database owners to combine demographic information owned by the database owners with impression logs provided by audience measurement entity 103. To ensure the privacy of the database owner's registered users, the audience measurement entity 103 may install or deploy the example device 400 at the database owner so that the database owner does not have to provide the identities of the database owner's registered users to the audience measurement entity 103 in order to associate demographic information with logged impressions. Instead, the audience measurement entity 103 can provide its logged impressions (e.g., AME impression log 122) to the database owner, who can associate respective demographics with the logged impressions while concealing the identities (e.g., names and content information) of its registered users.

[0049]

[0064] In the depicted example, the apparatus 400 includes an example cookie matcher 402, an example demographic associator 404, an example demographic analyzer 406, an example demographic modifier 408, an example user ID modifier 410, an example report generator 412, an example data parser 414, an example mapper 416, and an example command interface 418. Although an example manner of implementing the apparatus 400 is illustrated in Figure 4, one or more of the elements, processes and / or devices illustrated in Figure 4 may be combined, divided, rearranged, omitted, excluded, and / or implemented in any other manner. Furthermore, the cookie matcher 402, the demographic association unit 404, the demographic analysis unit 406, the demographic modification unit 408, the user ID modification unit 410, the report generator 412, the data analyzer 414, the mapping unit 416, the command interface 418, and / or, more generally, the example device 400 of FIG. 4 may be implemented by hardware, software, firmware, and / or any combination of hardware, software, and / or firmware. Thus, for example, the cookie matcher 402, the demographic association unit 404, the demographic analysis unit 406, the demographic modification unit 408, the user ID modification unit 410, the report generator 412, the data analyzer 414, the mapping unit 416, the instruction interface 418, and / or, more generally, any of the example apparatus 400 may be implemented by one or more circuit(s), programmable processor(s), application specific integrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)), and / or field programmable logic device(s) (FPLD(s)), etc.When any of the apparatus or system claims of this patent are read to encompass purely software and / or firmware implementations, at least one of the cookie matcher 402, demographic association unit 404, demographic analysis unit 406, demographic modification unit 408, user ID modification unit 410, report generator 412, data analyzer 414, mapping unit 416, and / or instruction interface 418 are expressly defined herein to include a tangible computer readable medium, such as a memory, DVD, CD, Blu-ray disc, etc., that stores the software and / or firmware. Further still, the example apparatus 400 of FIG. 4 may include one or more elements, processes and / or devices in addition to or instead of those shown in FIG. 4 and / or may include two or more of any or all of the illustrated elements, processes and devices.

[0050]

[0065] 4 in detail, in the illustrated example, the apparatus 400 is implemented at the Partner A database owner 104a (FIGS. 1 and 2). Other examples of the apparatus 400 can be similarly implemented at any other database owner (e.g., Partner B database owner 104b) participating with the AME 103. In the illustrated example of FIG. 4, the apparatus 400 receives the AME impression log 122 from the impression monitor system 102, enabling the apparatus 400 to associate user / audience member demographics from the user account database 238 with the logged impressions.

[0051]

[0066] In the illustrated example, the apparatus 400 includes a cookie matching unit 402 for matching AME user IDs from AME cookies (e.g., AME cookie 208 in FIGS. 2 and 3) from the AME impression log 122 to AME user IDs in the partner A cookie map 236. The apparatus 400 performs such cookie matching to identify registered users of the partner A database owner 104a to whom a logged impression is attributed (e.g., the registered users of the partner A for whom the impression monitoring system 102 set the AME cookie as described above in connection with FIG. 2 and tracked the impression as described above in connection with FIG. 3). For example, the partner cookie map 236 is shown in FIG. 5 as relating AME user IDs in the AME user ID column 502 to partner user IDs in the partner user ID column 504. The AME impression log 122 is structured similarly to the data in the AME impression store 114 as shown in FIG. 6, which logs impressions by AME user ID. Thus, the cookie matcher 402 matches AME user IDs from the AME user ID column 602 of the AME impression log 122 to AME user IDs in the AME user ID column 502 of the partner cookie map 236 to associate logged impressions from the AME impression log 122 with corresponding partner user IDs mapped in the partner cookie map 236 of Figure 5. In some examples, the AME 103 encrypts, obfuscates, modifies, or otherwise encrypts, obfuscates, or otherwise modifies campaign IDs in the AME impression log 122 before sending the AME impression log 122 to a partner database owner (e.g., partner database owners 104a and 104b of Figures 1 and 2) to prevent the partner database owner from recognizing the content to which the campaign ID corresponds, or to otherwise protect the identity of the content.In such an example, a lookup table of campaign ID information may be stored in the impression monitor system 102 so that impression reports received from partner database owners (e.g., impression reports 106a and 106b in FIG. 1) can be correlated with content.

[0052]

[0067] In some examples, the cookie matcher 402 uses the login timestamp stored in the login timestamp column 506 of Figure 5 (e.g., login timestamp 220 of Figure 2) and the impression timestamp stored in the timestamp column 604 of Figure 6 to distinguish between different users to which impressions logged by the impression monitor system 102 are attributed. That is, if two users with respective username / password login credentials for Partner A database owner 104a use the same client device 108, all impressions logged by the impression monitor system 102 will be based on the same AME cookie (e.g., AME cookie 208 of Figures 2 and 3) set in the client device 108, regardless of which user was using the client device 108 when the impression occurred. However, by comparing the logged impression timestamp (e.g., in timestamp column 604 of FIG. 6) with the login timestamp (e.g., in login timestamp column 506 of FIG. 5), the cookie matcher 402 can determine which user was logged into Partner A database owner 104a when the corresponding impression occurred. For example, if user "TOM" logged into Partner A database owner 104a at 12:57 AM on January 1, 2010, and user "MARY" logged into Partner A database owner 104a at 3:00 PM on January 1, 2010 using the same client device 108, these login events will be associated with the same AME cookie (e.g., AME cookie 208 of FIGS. 2 and 3).In such an example, the cookie matching unit 402 would associate any impressions logged by the impression monitoring system 102 for the same AME cookie between 12:57 AM and 3:00 PM on January 1, 2010 with the user "TOM" and any impressions logged by the impression monitoring system 102 for the same AME cookie after 3:00 PM on January 1, 2010 with the user "MARY." Such time-based associations are illustrated in the example data structure diagram of FIG. 7, described below.

[0053]

[0068] In the illustrated example, the cookie matcher 402 compiles the matched results into an example partner-based impression data structure 700, which is shown in detail in FIG. 7. Briefly referring to FIG. 7, the partner-based impression structure 700 includes an AME user ID column 702, an impression timestamp column 704, a campaign ID column 706, a site ID column 708, a user login timestamp 710, and a partner user ID column 712. In the AME user ID column 702, the cookie matcher 402 stores an AME cookie (e.g., AME cookie 208 of FIGS. 2 and 3). In the impression timestamp column 704, the cookie matcher 402 stores a timestamp generated by the impression monitor system 102 indicating when each impression was logged. In the campaign ID column 706, the cookie matcher 402 stores an ad campaign ID, for example, stored in the campaign information 316 of FIG. 3. In some examples, instead of or in addition to the campaign ID column 706, the partner-based impression data structure 700 includes a content ID column for storing identification information of content. In some examples, some content (e.g., advertisements and / or other media) is not associated with a campaign ID or content ID. In the illustrated example of FIG. 7, a blank in the campaign ID column 706 indicates content that is not associated with a campaign ID and / or content ID. In the site ID column 708, the cookie matching unit 402 stores the advertisement publisher site ID (e.g., publisher site ID 318 of FIG. 3). In the user login timestamp column 710, the cookie matching unit 402 stores a timestamp (e.g., timestamp 220 of FIG. 2) indicating when the respective user logged in via a partner login page (e.g., login page 204 of FIG. 2). In the partner user ID column 712, the cookie matching unit 402 stores a partner cookie (e.g., partner A cookie 228 of FIG. 2).

[0054]

[0069] 4, in the illustrated example, the apparatus 400 includes a demographics associator 404 for associating demographic information from the user account database 238 with corresponding partner-based impressions from the partner-based impressions structure 700. For example, the demographics associator 404 may retrieve demographic information for a partner user ID indicated in the partner user ID column 712 (FIG. 7) and associate the retrieved demographic information with a corresponding one of the records in the partner-based impressions structure 700.

[0055]

[0070] In the illustrated example of Figure 4, the device 400 includes a demographic analyzer 406 to analyze the demographic information for accuracy and / or completeness. Additionally, the device 400 includes a demographic corrector 408 to update, correct and / or input the demographic information in the inaccurate and / or incomplete record. In some examples, the demographic analyzer 406 and / or the demographic corrector 408 analyze and / or adjust the inaccurate demographic information using example methods, systems, apparatus and / or articles of manufacture disclosed in U.S. Patent Application No. 13 / 209,292, filed Aug. 12, 2011, entitled "Methods and Apparatus to Analyze and Adjust Demographic Information," which is incorporated herein by reference in its entirety.

[0056]

[0071] In the illustrated example, the apparatus 400 of the illustrated example includes a user ID modifier 410 to remove user IDs from the partner-based impression structure 700 after adding the demographic information and before providing the data to the AME 103. In the illustrated example, the user ID modifier 410 is configured to at least remove the partner user IDs (from the partner user ID column 712) to protect the privacy of registered users of the partner A database owner 104a. In some examples, the user ID modifier 410 may also remove the AME user IDs (e.g., from the AME user ID column 702) so that the impression report 106a generated by the apparatus 400 is a demographic-level impression report. "Removal" of user IDs (e.g., by the user ID modifier 410 and / or by the report generator 412) may be done by not providing copies of the data in the corresponding user ID fields, as opposed to deleting any data from those fields. If the AME user ID is stored in the impression data structure 700, the illustrated example device 400 can generate user-level impression reports.

[0057]

[0072] In the illustrated example of Figure 4, to generate the impression report 106a, the apparatus 400 includes a report generator 412. Examples of information that the report generator 412 may generate for the impression report 106a are described in more detail below in conjunction with Figures 8 and 9.

[0058]

[0073] In the illustrated example of FIG. 4, to parse the information, the apparatus 400 includes a data parser 414. In some examples, the data parser 414 receives messages from client devices and / or other systems and parses information from those received messages. For example, the apparatus 400 can use the data parser 414 to receive a login report message 118 from the cookie reporter 202 (FIG. 2) and parse the Partner A cookie 228, the AME cookie 208, and / or the login timestamp 220 from the login report message 118. In some examples, the apparatus 400 also uses the data parser 414 to parse information in the AME impression log 122 and / or parse information from any other data structures and / or messages.

[0059]

[0074] In the illustrated example of FIG. 4, to map information, the device 400 includes a mapping unit 416. In some examples, the mapping unit 416 maps cookie identifiers associated with the same user but corresponding to different Internet domains. For example, the device 400 can use the mapping unit 416 to map the Partner A cookie 228 to the AME cookie 208 (FIG. 2) in the partner cookie map 236 (FIGS. 2, 4, and 5). In some examples, the mapping unit 416 also maps the login timestamp with a corresponding cookie identifier. For example, the device 400 can use the mapping unit 416 to map the login timestamp 220 (FIG. 2) with a corresponding Partner A cookie 228 and AME cookie 208 in the partner cookie map 236.

[0060]

[0075] In the illustrated example of FIG. 4, the apparatus 400 includes an instruction interface 418 to send computer-executable instructions to the client device(s) 108 to monitor user logins via a login web page (e.g., login web page 204 of FIG. 2). For example, the apparatus 400 can use the instruction interface 418 to send computer-executable instructions (e.g., Java, JavaScript, or any other computer language or script) to the client device 108 to be executed by the web browser 302 (FIG. 3) to implement the cookie reporter 202 (FIG. 2). In some examples, the instruction interface 418 sends the computer-executable instructions to the client device 108 in response to receiving a request from the web browser 302 for a login web page (e.g., login web page 204) of an Internet-based service provided by the entity implementing the apparatus 400 (e.g., one of the database owner partners 104a and 104b). In this manner, the client device 108 can execute the computer-executable instructions to monitor login events on the login web page.

[0061]

[0076] FIG. 15 is an example device that may be used to implement the impression monitor 102 of FIGS. 1-3. In the illustrated example, the impression monitor system 102 includes a cookie status detector 1502 to detect whether an AME cookie (e.g., AME cookie 208 of FIG. 2) is set (e.g., stored) in a client device (e.g., any of the client devices 108 of FIGS. 1-3). For example, the cookie status detector 1502 may inspect or analyze a message from a client device (e.g., request 206 of FIG. 2) to determine whether an AME cookie is present in the message. In the illustrated example, the impression monitor system 102 includes a cookie generator 1504 to generate an AME cookie (e.g., AME cookie 208 of FIG. 2).

[0062]

[0077] In the illustrated example, to generate a login timestamp (e.g., login timestamp 220 of FIG. 2), the impression monitor system 102 includes a timestamp generator 1506. For example, the timestamp generator 1506 may be implemented using a real-time clock (RTC) or any other timing or clock device or interface to track time and generate the timestamp. In the illustrated example, to generate a message (e.g., response 216 of FIG. 2), the impression monitor system 102 includes a message generator 1508. In the illustrated example, to log impressions, the impression monitor system 102 includes an impression logger 1510. For example, the impression logger 1510 may log impressions to the AME impression store 114, as shown in FIG. 6.

[0063]

[0078] In the depicted example, the impression monitor system 102 includes a communications interface 1512 to receive messages and / or information from the client devices 108 and to send messages and / or information to the client devices 108 and / or the partner database owners 104a and 104b. For example, the communications interface 1512 can receive messages from the client devices 108, such as tag requests 112 (FIG. 1) and requests 206 (FIG. 2). In addition, the communications interface 1512 can send messages to the client devices 108 and send logged impressions (e.g., impressions logged in the AME impression store 114) to the partner database owners 104a and 104b.

[0064]

[0079] Figure 16 is an example device that may be used to implement the cookie reporter 202 of Figure 2. In the illustrated example, to detect log events, the cookie reporter 202 includes a login event detector 1602. For example, the login detector 1602 may be configured to monitor login events generated by a web browser (e.g., the web browser 302 of Figure 3) of a client device (e.g., the client device 108 of Figures 1-3). In the illustrated example, the login detector 1602 detects the login event when a user logs into the login web page 204 of Figure 2.

[0065]

[0080] In the illustrated example, the cookie reporter 202 includes a cookie status detector 1604 to detect whether an AME cookie (e.g., AME cookie 208 of FIG. 2) or a partner cookie (e.g., partner cookie 228 of FIG. 2) has been set (e.g., stored) in a client device (e.g., client device 108 of FIGS. 1-3). For example, the cookie status detector 1602 can inspect or analyze a cookie file or cookie entry in the client device to determine whether an AME cookie (e.g., AME cookie 208 of FIG. 2) or a partner cookie (e.g., partner cookie 228 of FIG. 2) has been previously set. In the illustrated example, the cookie status detector 1604 can also determine whether a cookie has expired. In the illustrated example, when a cookie expires, the cookie is treated as invalid or as if it is no longer present in the client device and must be set again by the corresponding server domain.

[0066]

[0081] In the illustrated example, to retrieve cookies from a storage location within a client device (e.g., client device 108 of FIGS. 1-3), cookie reporter 202 includes a cookie interface 1606. For example, cookie interface 1606 can retrieve AME cookies (e.g., AME cookies 208 of FIG. 2) or partner cookies (e.g., partner cookies 228 of FIG. 2) from their respective storage locations within the client device. In addition, cookie interface 1606 can also store cookies within the client device that are set and received from impression monitor system 102 and / or any partner database owners.

[0067]

[0082] In the illustrated example, the cookie reporter 202 includes a message generator 1608 for generating messages (e.g., tag request 112 of FIGS. 1 and 3, log report message 118 of FIGS. 1 and 2, and request 206 of FIG. 2). In the illustrated example, the cookie reporter 202 includes a communication interface 1610 for sending messages and / or information to the impression monitor system 102 and / or partner database owners (e.g., partner database owners 104a and 104b of FIGS. 1 and 2) and / or receiving messages and / or information from the impression monitor system 102. For example, the communications interface 1610 can send tag requests 112 (FIGS. 1 and 3) and requests 206 of FIG. 2 to the impression monitor system 102, receive responses 216 (FIG. 2) from the impression monitor system 102, and send login report messages 118 (FIGS. 1 and 2) to the partner database owners 104a and 104b.

[0068]

[0083] Although examples of ways of implementing the apparatus 102 and 202 are illustrated in Figures 15 and 16, one or more of the elements, processes and / or devices illustrated in Figures 15 and 16 may be combined, divided, rearranged, omitted, excluded, and / or implemented in any other manner. Furthermore, the cookie status detector 1502, the cookie generator 1504, the timestamp generator 1506, the message generator 1508, the impression logger 1510, the communications interface 1512, and / or, more generally, the example apparatus 102 of Figure 15 may be implemented by hardware, software, firmware, and / or any combination of hardware, software and / or firmware. Additionally, the login event detector 1602, the cookie status detector 1604, the cookie interface 1606, the message generator 1608, the communications interface 1610, and / or, more generally, the example device 202 of FIG. 16 may be implemented by hardware, software, firmware, and / or any combination of hardware, software, and / or firmware. Thus, for example, the cookie status detector 1502, the cookie generator 1504, the timestamp generator 1506, the message generator 1508, the impression logger 1510, the communication interface 1512, and / or, more generally, any of the example device 102, and / or the login event detector 1602, the cookie status detector 1604, the cookie interface 1606, the message generator 1608, the communication interface 1610, and / or, more generally, any of the example device 202, may be implemented by one or more circuit(s), programmable processor(s), application specific integrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)), and / or field programmable logic device(s) (FPLD(s)), etc.When any of the apparatus or system claims of this patent are read to encompass purely software and / or firmware implementations, at least one of the cookie status detector 1502, cookie generator 1504, timestamp generator 1506, message generator 1508, impression logger 1510, communication interface 1512, login event detector 1602, cookie status detector 1604, cookie interface 1606, message generator 1608, and / or communication interface 1610 are expressly defined herein to include a tangible computer readable medium, such as a memory, DVD, CD, Blu-ray disc, etc., that stores the software and / or firmware. Further still, the example apparatuses 102 and 202 may include one or more elements, processes and / or devices in addition to or instead of those shown in Figures 15 and 16 and / or may include two or more of any or all of the illustrated elements, processes and devices.

[0069]

[0084] 8, an example impression totalization data structure 800 that may be generated by the report generator 412 of FIG. 4 stores impression totalizations based on impressions logged by the impression monitor system 102 (FIGS. 1-3). As shown in FIG. 8, the impression totalization structure 800 indicates the amount of impressions logged for a client device 108 (FIGS. 1-3). In the illustrated example, the impression totalization structure 800 is generated by the report generator 412 for an advertising campaign (e.g., one or more of the advertisements 110 of FIG. 1) to determine the frequency of impressions per day for each monitored user.

[0070]

[0085] To track the frequency of impressions per unique user per day, impression aggregation structure 800 includes a frequency column 802. A frequency of 1 indicates one exposure per day of an ad campaign to a unique user, while a frequency of 4 indicates four exposures per day of the same ad campaign to a unique user. To track the amount of unique users to which impressions are attributed, impression aggregation structure 800 includes a UUID column 804. A value of 100,000 in UUID column 804 indicates 100,000 unique users. Thus, the first entry in impression aggregation structure 800 indicates that 100,000 unique users (i.e., UUID=100,000) were exposed to a particular ad campaign once per day (i.e., frequency=1).

[0071]

[0086] To track impressions based on exposure frequency and UUID, impression aggregation structure 800 includes an impression column 806. Each impression count stored in impression column 806 is determined by multiplying the corresponding frequency value stored in frequency column 802 by the corresponding UUID value stored in UUID column 804. For example, in the second entry of impression aggregation structure 800, a frequency value of 2 is multiplied by 200,000 unique users to determine that 400,000 impressions are attributed to a particular advertising campaign.

[0072]

[0087] 9, an ad campaign level age / gender and impression composition data structure 900 is shown, which in the illustrated example may be generated by the report generator 412 of FIG. 4. The impression data in the ad campaign level age / gender and impression composition structure 900 of FIG. 9 corresponds to impressions attributable to registered users of a particular Partner Database (DB) owner (e.g., Partner A Database Owner 104a of FIGS. 1 and 2, or Partner B Database Owner 104b of FIG. 1). Similar tables may be generated for content and / or other media. Additionally or alternatively, other media in addition to advertisements may be added to the data structure 900.

[0073]

[0088] The ad campaign level age / gender and impression composition structure 900 includes an age / gender column 902, an impression column 904, a frequency column 906, and an impression composition column 908. The age / gender column 902 in the illustrated example indicates different age / gender demographic groups. The impressions column 904 in the illustrated example stores values ​​indicating the total impressions for a particular ad campaign for the corresponding age / gender demographic group. The frequency column 906 in the illustrated example stores values ​​indicating the frequency of exposure per user for the ad campaign that contributed to the impressions in the impressions column 904. The impression composition column 908 in the illustrated example stores the percentage of impressions for each of the age / gender demographic groups.

[0074]

[0089] In some examples, the demographic analyzer 406 and demographic corrector 408 of FIG. 4 perform demographic accuracy analysis and adjustment processing on the demographic information before tabulating the final results of the impression-based demographic information in the campaign-level age / gender and impression composition table 900. Performing the demographic accuracy analysis and adjustment processing can address a problem faced in online audience measurement processes where registered users are not always true (e.g., authentic and / or accurate) in the way they represent themselves to online database owners (e.g., partners 104a and 104b). In some cases, examples of techniques for online measurement that leverage account registrations at such online database owners to determine demographic attributes of viewers may lead to inaccurate demographic-contact results when relying on self-reporting of personal / demographic information by registered users during account registration at the database owner site. There may be a number of reasons why users report incorrect or inaccurate demographic information when registering for database owner services. The self-report registration process used to collect demographic information at database owner sites (e.g., social media sites) does not facilitate determining the veracity of the self-reported demographic information. In some examples, to analyze and / or adjust inaccurate demographic information, the demographic analysis unit 406 and / or the demographic correction unit 408 may use example methods, systems, apparatus and / or articles of manufacture disclosed in U.S. patent application Ser. No. 13 / 209,292, filed Aug. 12, 2011, entitled “Methods and Apparatus to Analyze and Adjust Demographic Information,” which is incorporated herein by reference in its entirety.

[0075]

[0090] Although the example ad campaign level age / gender and impression organization structure 900 shows impression statistics in relation to only age / gender demographic information, the report generator 412 of Figure 4 may generate the same or other data structures to additionally or alternatively include other types of demographic information. In this manner, the report generator 412 may generate impression reports 106a (Figures 1 and 4) to reflect impressions based on different types of demographics and / or different types of media.

[0076]

[0091] 10-13 are flow diagrams representing machine-readable instructions executable to implement the apparatus and system of FIG. 1, 2, 3, and / or 4. The example processes of FIG. 10-13 may be implemented using machine-readable instructions that, when executed, cause a device (e.g., a programmable controller or other programmable machine or integrated circuit) to perform the operations shown in FIG. 10-13. In this example, the machine-readable instructions comprise a program for execution by a processor, such as processor 1412 shown in example computer 1410 described below in connection with FIG. 14. The program may be embodied in software stored on a tangible computer-readable medium, such as a CD-ROM, floppy disk, hard drive, digital versatile disk (DVD), Blu-ray disk, flash memory, read-only memory (ROM), random access memory (RAM), or memory associated with processor 1412, although the entire program and / or portions of the program may alternatively be executable by a device other than processor 1412 and / or embodied in firmware or dedicated hardware.

[0077]

[0092] As used herein, the term tangible computer-readable medium is expressly defined to include any type of computer-readable medium and to exclude propagating signals. Additionally or alternatively, the process examples of Figures 10-13 may be implemented using coded instructions (e.g., computer-readable instructions) stored on a non-transitory computer-readable medium, such as flash memory, read-only memory (ROM), random access memory (RAM), cache, or any other storage medium in which information is stored for any duration (e.g., for an extended period of time, permanently, for short, temporary buffering, and / or for caching of information). As used herein, the term non-transitory computer-readable medium is expressly defined to include any type of computer-readable medium and to exclude propagating signals. As used herein, when the phrase "at least" is used as a transition term in the preamble of a claim, the phrase "at least" is open-ended in the same manner that the term "comprising" is open-ended. Thus, a claim using the transition term "at least" in its preamble may include elements in addition to those expressly recited in the claim.

[0078]

[0093] Alternatively, the example processes of Figures 10-13 may be implemented using any combination(s) of application specific integrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)), field programmable logic device(s) (FPLD(s)), discrete logic, hardware, firmware, etc. Also, the example processes of Figures 10-13 may be implemented as any combination(s) of any of the above techniques, e.g., any combination of firmware, software, discrete logic, and / or hardware.

[0079]

[0094] The example processes of Figures 10-13 are described with reference to the flow diagrams of Figures 10-13, although other ways of implementing the devices and systems of Figures 1, 2, 3, and / or 4 may be employed. For example, the order of execution of the blocks may be changed, and / or some of the blocks described may be changed, eliminated, sub-divided, or combined. In addition, one or both of the example processes of Figures 10-13 may be performed sequentially and / or in parallel, for example, by separate processing threads, processors, devices, discrete logic, circuits, etc.

[0080]

[0095] With particular reference to FIG. 10, the example process shown may be used to report login events and user cookies (e.g., AME cookies 208 and Partner A cookies 228 of FIGS. 2 and 3) to a database owner (e.g., Partner A database owner 104a of FIGS. 1 and 2). In the example shown, the flow diagram shows a client device process 1002 and an impression monitor system process 1004. In the example shown, the client device process 1002 may be performed by the cookie reporter 202 of FIGS. 2 and 16, and the impression monitor system process 1004 may be performed by the impression monitor system 102 of FIGS. 1-3 and 15. The example process of FIG. 10 will be described in conjunction with FIG. 2 as an interaction between the client device 108, the impression monitor system 102, and the Partner A database owner 104a. However, processing similar or equivalent to the example processing of FIG. 10 may occur at any time or simultaneously among other client devices, impression monitor systems 102 and / or other database owners to accomplish the same types of user login reporting events when users log into the login pages (e.g., login page 204 of FIG. 2) of their respective database owners (e.g., database owners 104a and 104b of FIGS. 1 and 2).

[0081]

[0096] Initially, as part of the client device processing 1002, the login event detector 1602 (FIG. 16) detects a login event (block 1006). The login event may be, for example, a user of the client device 108 logging in to the login page 204 of FIG. 2. The message generator 1608 (FIG. 16) generates a request 206 (FIG. 2) to indicate the login event (block 1008). The cookie status detector 1604 (FIG. 16) determines whether an AME cookie (e.g., the AME cookie 208 of FIG. 2) is already set on the client device 108 (block 1010). If an AME cookie 208 is already set, the cookie interface 1606 (FIG. 16) and / or the message generator 1608 stores the AME cookie 208 (e.g., a name-value pair identifying the user) in the request 206 (block 1012). After storing the AME cookie 208 in the request 206 (block 1012), or if the AME cookie 208 is not already set in the client device (block 1010), the communication interface 1610 (FIG. 16) sends the request 206 to the impression monitor system 102 (block 1014).

[0082]

[0097] As shown in the example impression monitor system process 1004, the communication interface 1512 (FIG. 15) receives the request 206 (block 1016), and the cookie status detector 1502 (FIG. 15) determines whether the AME cookie 208 is already set in the client device 108 (block 1018). For example, the cookie status detector 1502 can determine whether the AME cookie 208 is already set based on whether the request 206 includes the AME cookie 208. If the cookie status detector 1502 determines that the AME cookie 208 is not already set (block 1018), the cookie generator 1504 (FIG. 15) creates the AME cookie 208 (block 1020). For example, the cookie generator 1504 can generate the AME cookie 208 by generating a UUID for the client device 108. The message generator 1508 (FIG. 15) stores the AME cookie 208 in the response 216 (FIG. 2) (block 1022).

[0083]

[0098] After storing the AME cookie 208 in the response 216 (block 1022), or if the cookie status detector 1502 determines in block 1018 that the AME cookie 208 is already set in the client device 108, the timestamp generator 1506 generates a login timestamp (e.g., login timestamp 220 of FIG. 2) (block 1024) to indicate the login time for the detected login event. The message generator 1508 stores the login timestamp 220 in the response 216 (block 1026), and the communication interface 1512 sends the response 216 to the client device 108 (block 1028).

[0084]

[0099] Returning to the client device processing 1002, the communication interface 1610 (FIG. 16) receives the response 216 (block 1030), and the message generator 1608 (FIG. 16) generates a login report message 118 (FIGS. 1 and 2) (block 1032). If present, the cookie interface 1606 (FIG. 16) and / or the message generator 1608 stores the partner cookie (e.g., the partner A cookie 228) corresponding to the login event detected in block 1006 in the login report message 118 (block 1034). If the corresponding partner cookie does not exist in the client device 108, the partner cookie is not stored in the login report message 118, indicating to the corresponding partner that it should create a partner cookie for the client device 108. In addition, the cookie interface 1606 and / or the message generator 1608 stores the AME cookie 208 in the login report message 118 (e.g., in the payload 232) as a data parameter (block 1036). The message generator 1608 also stores the login timestamp 220 in the login report message 118 (e.g., in the payload 232) (block 1038). The communications interface 1610 sends the login report message 118 to the corresponding partner database owner (e.g., Partner A database owner 104a) (block 1040). In this manner, the cookie reporter 202 enables the Partner A database owner 104a to map the Partner A cookie 228 to the AME cookie 208 and the login timestamp 220 in the partner cookie map 236 of Figures 2 and 5. The example process of Figure 10 then ends.

[0085]

[0100] 11, the illustrated flow diagram represents an example process that may be performed by a partner database owner (e.g., partner database owner 104a and / or 104b of FIGS. 1 and 2) to map an AME cookie identifier (e.g., the UUID of AME cookie 208 of FIG. 2) with a user identifier (e.g., the UUID of Partner A cookie 228 of FIG. 2) of a user registered with the partner database owner. For simplicity, FIG. 11 refers to a process that receives a single login message, although multiple such processes may exist and execute in parallel (e.g., parallel threads). The example process of FIG. 11 is described with reference to the illustrated example of FIG. 2, device 400 of FIG. 4, and Partner A database owner 104a. However, processes similar or equivalent to the example process of FIG. 11 may be performed by other partner database owners and / or other devices at any time or simultaneously to accomplish the same type of cookie mapping process.

[0086]

[0101] Initially, the Partner A database owner 104a receives the login report message 118 (FIGS. 1 and 2) (block 1102). The data parser 414 (FIG. 4) extracts the Partner A cookie 228 from the login report message 118 (block 1104). In the illustrated example, the data parser 414 extracts the Partner A cookie 228 from the cookie field 230 of the login report message 118. The data parser 414 extracts the AME cookie 208 from the login report message 118 (block 1106). In the illustrated example, the data parser 414 extracts the AME cookie 208 from the payload 232 of the login report message 118 as a data parameter. In addition, the data parser 414 extracts the login timestamp 220 from the login report message 118 (block 1108). The mapping unit 416 (FIG. 4) maps the Partner A cookie 228 to the AME cookie 208 (e.g., maps the UUIDs of each cookie to each other) (block 1110), for example, in the partner cookie map 236 of FIGS. 2 and 5. In addition, the mapping unit 416 stores the login timestamp 220 in association with the mapped cookie in the partner cookie map 236 (block 1112). The example process of FIG. 11 then ends.

[0087]

[0102]

[0013] Referring now to Figure 12, an example process may be performed to log impressions. In the illustrated example, the example process of Figure 12 is described as being performed by the impression monitor system 102 based on a tag request received from a client device 108 in conjunction with Figures 3 and 15. However, a process similar or equivalent to the example process of Figure 12 may be performed at any time or simultaneously (e.g., multiple threads may be generated and executed in parallel) by the impression monitor system 102 in conjunction with other client devices (e.g., any of the client devices 108 of Figure 1 or any other client device) to log impressions attributable to those client devices.

[0088]

[0103] Initially, the communications interface 1512 (FIG. 15) receives a tag request (e.g., tag request 112 of FIGS. 1 and 3) (block 1202). The impression logger 1510 (FIG. 15) logs an impression for the AME UUID indicated by the AME cookie 208 (block 1204). In the illustrated example, the impression logger 1510 logs the impression in the AME impression store 114 of FIGS. 1, 3, and 6. The impression logger 1510 determines whether the AME impression log 122 (FIGS. 1 and 4) should be sent to one or more partner database owners (block 1206). For example, the impression logger 1510 may be configured to send the AME impression log 122 to one or more partner database owners (e.g., partner database owners 104a and 104b of FIGS. 1 and 2) periodically or aperiodically based on one or more of a schedule and / or logged impression thresholds.

[0089]

[0104] If the impression logger 1510 determines that the AME impression log 122 should be sent to one or more partner database owners (block 1206), the communication interface 1512 sends the AME impression log 122 to the one or more partner database owners (block 1208). In response, the communication interface 1512 receives one or more impression reports (e.g., impression reports 106a and 106b of FIGS. 1 and 4) from the one or more partner database owners (block 1210). In some examples, the impression monitor system 102 applies a weighting factor to the impression audience data in the impression reports from different database owners (e.g., partner database owners 104a and 104b). In some examples, the weighting factor is determined for each database owner based, for example, on demographic and / or impression distribution within the impression data and / or sample size (e.g., the amount of registered users of a particular database owner, the amount of registered users monitored for a particular database owner, and / or the amount of impressions logged by AME103 for registered users of a particular database owner).

[0090]

[0105] After receiving one or more impression reports (block 1210), or if the impression logger 1510 determines in block 1206 that the AME impression log 122 should not be sent to one or more partner database owners, the impression monitor system 102 determines whether to continue to monitor impressions (block 1212). For example, the impression monitor system 102 may be configured to monitor impressions until the system is turned off or disabled. If the impression monitor system 102 determines that it should continue to monitor impressions (block 1212), control returns to block 1202. Otherwise, the example process of FIG. 12 ends.

[0091]

[0106] Referring now to Figure 13, the example process shown may be used to generate demographic-based impression reports (e.g., impression reports 106a and 106b of Figures 1 and 4). The example process of Figure 13 is described in conjunction with Figure 4 as implemented by the example apparatus 400 via Partner A database owner 104a. However, a process similar or equivalent to the example process of Figure 13 may be performed at any time or simultaneously by any other partner database owner(s) to generate impression reports based on registered users of those partner database owner(s).

[0092]

[0107] Initially, the device 400 receives the AME impression log 122 (FIG. 4) (block 1302). The cookie matcher 402 (FIG. 4) matches the AME cookie to a partner database owner cookie (block 1304). For example, the cookie matcher 402 can match a UUID from an AME cookie (e.g., AME cookie 208 of FIGS. 2 and 3) indicated in the AME impression log 122 to a UUID from a partner database owner cookie (e.g., Partner A database owner cookie 228 of FIGS. 2 and 3) using the corresponding database owner's cookie map (e.g., Partner A cookie map 236 (FIG. 4)). The cookie matcher 402 then associates the impression (e.g., the impression indicated in the AME impression log 122) with the corresponding partner database owner UUID based on the match found in block 1304 (block 1306). For example, the cookie matcher 402 may generate the partner-based impression data structure 700 described above in connection with FIG.

[0093]

[0108] The demographics associator 404 (FIG. 4) associates demographics of registered users of the corresponding database owner (e.g., Partner A database owner 104a) with the impression (block 1308). For example, the demographics associator 404 may retrieve demographic information from the user accounts database 238 (FIGS. 2 and 4) for the partner user ID indicated in the partner user ID column 712 of the partner based impressions data structure 700.

[0094]

[0109] The user ID modifier 410 removes the user ID from the demographics-based impression data structure 700 (block 1310). For example, the user ID modifier 410 can remove the UUID from the AME user ID column 702 corresponding to the AME cookie (e.g., AME cookie 208 of FIG. 2 and FIG. 3) and the partner user ID column 712 corresponding to the partner cookie (e.g., Partner A cookie 228 of FIG. 2 and FIG. 3). In another example, the report generator 412 can copy selected portions from the demographics-based impression data structure 700 and store the selected portions in a report without copying over the user ID. In this way, the apparatus 400 can obfuscate the identity of registered users to protect the privacy of registered users when demographics-based impressions are shared with others (e.g., audience measurement entities).

[0095]

[0110] The demographic analysis unit 406 (FIG. 4) analyzes the demographic information associated with the impression in block 1308 (block 1312). The demographic analysis unit 406 determines whether any of the demographic information needs to be revised (block 1314). If any of the demographic information needs to be revised (e.g., the demographic information needs to be changed or added because it is incomplete and / or inaccurate), the demographic revision unit 408 (FIG. 4) revisions selected demographic data that requires revision (block 1316). In the illustrated example, the demographic analysis unit 406 and / or demographic correction unit 408 may perform the operations of blocks 1312, 1314, and 1316 to analyze and / or correct demographic information, for example, using one or more example techniques disclosed in U.S. patent application Ser. No. 13 / 209,292, filed Aug. 12, 2011, entitled “Methods and Apparatus to Analyze and Adjust Demographic Information,” which is incorporated by reference in its entirety herein.

[0096]

[0111] After modifying the demographic information at block 1316, or if the demographic analyzer 406 determines at block 1314 that none of the demographic information requires modification, the report generator 412 generates one or more impression reports (e.g., the impression report 106a of FIGS. 1 and 4) (block 1318). For example, the report generator 412 may generate one or more of the impression reports 106a using one or more example techniques described above in connection with FIGS. 8 and 9 and / or using any other suitable technique(s). The apparatus 400 then transmits the one or more impression reports 106a to the impression monitor system 102 (block 1320). In the illustrated example, impression report 106a indicates demographic segments, populations, or groups that were exposed to content (e.g., advertisements and / or other media) associated with different AME cookies 208 (and corresponding Partner A cookies 228) and identified by campaign IDs and / or other media content IDs. The example process of FIG. 13 then ends.

[0097]

[0112] 14 is a block diagram of an example processor system 1410 that may be used to implement example devices, methods, and systems disclosed herein. As shown in FIG. 14, the processor system 1410 includes a processor 1412 coupled to an interconnect bus 1414. The processor 1412 may be any suitable processor, processing unit, or microprocessor. Although not shown in FIG. 14, the system 1410 may be a multi-processor system and thus may include one or more additional processors equal to or similar to the processor 1412 and communicatively coupled to the interconnect bus 1414.

[0098]

[0113] 14 is coupled to a chipset 1418, which includes a memory controller 1420 and an input / output (I / O) controller 1422. The chipset provides I / O and memory management functions, as well as a number of general purpose and / or special purpose registers, timers, etc. that are accessible or used by one or more processors coupled to the chipset 1418. The memory controller 1420 performs functions that allow the processor 1412 (or the processors, if there are multiple processors) to access a system memory 1424, a mass storage memory 1425, and / or an optical medium 1427.

[0099]

[0114] In general, system memory 1424 may include any desired type of volatile and / or non-volatile memory, such as, for example, static random access memory (SRAM), dynamic random access memory (DRAM), flash memory, read only memory (ROM), etc. Mass storage memory 1425 may include any desired type of mass storage device, including hard disk drives, optical drives, tape storage, etc. Optical medium 1427 may include any desired type of optical medium, such as a digital versatile disc (DVD), compact disc (CD), or Blu-ray optical disc. The instructions of any of Figures 10-13 may be stored in any of the tangible media represented by system memory 1424, mass storage device 1425, optical medium 1427, and / or any other media.

[0100]

[0115] The I / O controller 1422 functions to enable the processor 1412 to communicate with peripheral input / output (I / O) devices 1426 and 1428 and a network interface 1430 via an I / O bus 1432. The I / O devices 1426 and 1428 may be any desired type of I / O device, such as, for example, a keyboard, a video display or monitor, a mouse, etc. The network interface 1430 may be, for example, an Ethernet device, an Asynchronous Transfer Mode (ATM) device, an 802.11 device, a Digital Subscriber Line (DSL) modem, a cable modem, a cellular modem, etc., that enables the processor system 1410 to communicate with another processor system.

[0101]

[0116] Although the memory controller 1420 and the I / O controller 1422 are shown in FIG. 14 as separate functional blocks within the chipset 1418, the functions performed by these blocks may be incorporated within a single semiconductor circuit or may be implemented using two or more separate integrated circuits.

[0102]

[0117] While the above discloses examples of methods, apparatus, systems and articles of manufacture that include, among other components, firmware and / or software executed on hardware, it should be noted that such methods, apparatus, systems and articles of manufacture are exemplary only and should not be considered limiting. Thus, while the above describes examples of methods, apparatus, systems and articles of manufacture, the examples provided are not the only ways to implement such methods, apparatus, systems and articles of manufacture.

[0103]

[0118] Although certain examples of methods, apparatus, and articles of manufacture have been described herein, the scope of coverage of this patent is not limited to these examples. On the contrary, this patent covers all methods, apparatus, and articles of manufacture that fairly fall within the scope of the claims of this patent.

Claims

1. Memory, A programmable circuit; and The instructions are written to the programmable circuitry at least: detecting a login event at a client device, the login event being associated with a first Internet domain, the first Internet domain being different from a second Internet domain of the impression monitor system; causing transmission of a communication to the impression monitor system after the login event; generating transmission of a login report message to a server associated with a subscriber-based service provider corresponding to the first Internet domain, the login report message including a first identifier of a partner cookie and a second identifier of an audience measurement entity cookie, the first identifier being associated with the first Internet domain and the second identifier being associated with the second Internet domain of the impression monitoring system; system.

2. the communication is a web page request that does not return a web page; the web page request causes the impression monitor system to determine whether the second identifier is already set on the client device. The system of claim 1 .

3. The programmable circuit comprises: receiving the second identifier from the impression monitor system after the web page request if the second identifier is not configured on the client device; The system of claim 2.

4. The programmable circuit comprises: sending a tag request to the impression monitor system occurs after presenting media having tag instructions that cause the sending of the tag request, the tag request including the second identifier and at least one of a content identifier and a publisher site identifier. The system of claim 1 .

5. The programmable circuit comprises: placing a login timestamp into the login report message indicating the time the login event occurred; The system of claim 1 further comprising:

6. The programmable circuit comprises: receiving second computer readable instructions from the server associated with the subscriber-based service provider, the second computer readable instructions causing transmission of the communication to the impression monitor system after the login event; The system of claim 1 .

7. The programmable circuit comprises: receiving the second computer readable instructions after requesting a login web page from the server associated with the subscriber-based service provider. The system of claim 6.

8. The programmable circuit comprises: adding the second identifier as a data parameter within the login report message; The system of claim 1 .

9. Memory, A programmable circuit; and The instructions are written to the programmable circuitry at least: accessing messages from a client device in a first Internet domain; accessing a first cookie identifier and a second cookie identifier in the message, the first cookie identifier being associated with the first Internet domain and the second cookie identifier being associated with a second Internet domain different from the first Internet domain; storing the first cookie identifier in association with the second cookie identifier; system.

10. The programmable circuit comprises: storing a login timestamp in association with the first cookie identifier and the second cookie identifier, the login timestamp indicating a time when a login event occurred on a web page associated with the first Internet domain; The system of claim 9.

11. The programmable circuit comprises: accessing the messages from the client device after a login event at the client device, the login event being associated with a subscriber-based service provider of the first Internet domain; The system of claim 9.

12. The programmable circuit comprises: generating transmission of second computer readable instructions to the client device, the second computer readable instructions for causing the client device to transmit the message after the login event; The system of claim 11.

13. The programmable circuit comprises: generating transmission of the second computer readable instructions following a request for a login web page of a subscriber-based service provider associated with the first Internet domain; The system of claim 12.

14. Memory, A programmable circuit; and The instructions are written to the programmable circuitry at least: accessing user demographic information corresponding to a first identifier maintained in a first domain and corresponding to a partner cookie; accessing a second identifier located within a data structure received from a second domain, the second identifier stored within the data structure in association with a media identifier stored within the data structure, the second identifier corresponding to an audience measurement entity cookie; and correlating the user demographic information with the second identifier based on the first identifier and the second identifier corresponding to the same person to indicate demographic-based impressions for which the media identifier identifies the media. system.

15. The programmable circuit comprises: associate the first identifier with the media identifier based on the first identifier and the second identifier corresponding to the same person; The system of claim 14.

16. The programmable circuit comprises: accessing the media identifier stored in the data structure after the media identifier has been encrypted in the second domain. The system of claim 14.

17. the first identifier and the second identifier identify the same client computer; The system of claim 14.

18. The programmable circuit comprises: generating an impression report based on the second identifier, the user demographic information, and the media identifier, the impression report indicating a demographic population that accessed the media identified by the media identifier; The system of claim 14.

19. The programmable circuit comprises: sending the impression report to the second domain without revealing the first identifier in the impression report; 20. The system of claim 18.

20. the media identifier identifies at least one of an advertisement, a television program, a website, or a movie; The system of claim 14.

21. Memory, A programmable circuit; and The instructions are written to the programmable circuitry at least: generating a response based on a login event at the client device after the communication is received at the impression monitor system, the login event being associated with a subscriber-based service provider of a first Internet domain, the first Internet domain being different from a second Internet domain of the impression monitor system; sending the response to the client device, the response causing the client device to include a first cookie identifier and a second cookie identifier in a login report message and sending the login report message to a computer of the subscriber-based service provider, the first cookie identifier being associated with the first Internet domain of the subscriber-based service provider and the second cookie identifier being associated with the second Internet domain of the impression monitor system. A system comprising a communication means.

22. The programmable circuit comprises: processing the communication as a web page request that does not result in a web page being returned to the client device in the impression monitor system, the web page request causing the programmable circuitry to determine whether the second cookie identifier is already set on the client device; 22. The system of claim 21.

23. The programmable circuit comprises: generating, at the impression monitor system, the second cookie identifier after receiving the web page request if the second cookie identifier has not been set on the client device; transmitting the second cookie identifier to the client device in response; 23. The system of claim 22.

24. The programmable circuit comprises: accessing a tag request received at the impression monitor system, the tag request including the second cookie identifier and at least one of a media identifier and a publisher site identifier corresponding to media accessed via the client device; 22. The system of claim 21.

25. The programmable circuit comprises: generating, in said impression monitoring system, a login timestamp indicating a time when said login event occurred; transmitting the login timestamp in response to the client device; 22. The system of claim 21.

26. The response further causes the client device to include the login timestamp in the login report message.

26. The system of claim 25.

27. The programmable circuit comprises: In response to the client device, transmitting a uniform resource locator (URL), the uniform resource locator being used by the client device to transmit the login report message to the computer of the subscriber-based service provider.

22. The system of claim 21.

28. The response further causes the client device to include the second cookie identifier in the login report message as a data parameter separate from an identifier field.

22. The system of claim 21.

29. Memory, A programmable circuit; and The instructions are written to the programmable circuitry at least: sending a communication to an impression monitor system in response to detecting a login event at a client device via a login webpage, the login event being associated with a first internet domain that is different from a second internet domain of the impression monitor system; sending a login report message to a database owner, the login report message including a first cookie identifier and a second cookie identifier, the first cookie identifier being associated with the first internet domain and the second cookie identifier being associated with the second internet domain of the impression monitoring system; system.

30. The programmable circuit comprises: sending the communication as a web page request that does not return a web page; 30. The system of claim 29.

31. The programmable circuit comprises: receiving the second cookie identifier from the impression monitor system in response to the web page request; 31. The system of claim 30.

32. The programmable circuit comprises: in response to displaying media having tag instructions that cause the sending of a tag request, sending the tag request to the impression monitor system, the tag request including the second cookie identifier and at least one of a media identifier and a publisher site identifier.

30. The system of claim 29.

33. The programmable circuit comprises: In response to detecting the login event, causing the impression monitor system to transmit the communication.

30. The system of claim 29.

34. The programmable circuit comprises: placing the second cookie identifier as a data parameter in the login report message; 30. The system of claim 29.

35. The programmable circuit comprises: placing a login timestamp in the login report message, the login timestamp indicating the time when the login event occurred; 30. The system of claim 29.

Citation Information

Patent Citations

  • Target inventory expansion method via browser / log-in mapping and its system

    JP2008234641A

  • Web access using cross-domain cookies

    JP2011515767A

  • User information coordination across multiple domains

    US20030037131A1

  • Apparatus and method for accessing user cookies between network domains

    US20090055908A1