US20160189237A1 - Web page viewership prediction - Google Patents
Web page viewership prediction Download PDFInfo
- Publication number
- US20160189237A1 US20160189237A1 US14/584,773 US201414584773A US2016189237A1 US 20160189237 A1 US20160189237 A1 US 20160189237A1 US 201414584773 A US201414584773 A US 201414584773A US 2016189237 A1 US2016189237 A1 US 2016189237A1
- Authority
- US
- United States
- Prior art keywords
- web page
- metric
- viewership
- statistical
- web
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 230000008859 change Effects 0.000 claims description 19
- 238000000034 method Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0269—Targeted advertisements based on user profile or attribute
- G06Q30/0271—Personalized advertisement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0269—Targeted advertisements based on user profile or attribute
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0254—Targeted advertisements based on statistics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Definitions
- the embodiments relate generally to online publishing and, in particular, to predicting future viewership of a web page, and to altering content presented in conjunction with the web page based on the prediction.
- the embodiments relate to mechanisms for dynamically integrating content, such as an advertisement (ad), with a web page in response to a prediction regarding future viewership of the web page based on current viewership data associated with the web page.
- content such as an advertisement (ad)
- a method for dynamically integrating an ad with a web page is provided.
- Statistical data that identifies a plurality of metrics associated with viewership of a web page of a plurality of web pages on a web server is received.
- the web page is predicted to meet a future viewership metric.
- the web page is identified as a web page predicted to meet the future viewership metric.
- a web page identifier that identifies the web page is received from a client device.
- the client device is provided with a high-viewership ad content descriptor from a plurality of ad content descriptors for use in conjunction with presenting the web page to a user.
- a high-viewership flag associated with the web page is set that identifies the web page as a web page predicted to meet the future viewership metric.
- the statistical data that identifies the plurality of metrics is requested from a statistics collection module to generate a plurality of statistical records associated with the web page.
- a rate of change of a statistical metric over time is determined based on the plurality of statistical records, and it is determined that the rate of change exceeds a rate-of-change threshold for the statistical metric.
- the statistical metric comprises page views.
- the plurality of metrics comprise at least two of a rate of change of a page view count metric, a referring URL metric, a geo-location metric, a unique visitor metric, and a client device platform metric.
- a system in another embodiment, includes a computing device that comprises a communications interface configured to communicate with a network and comprises a processor coupled to the communications interface.
- the processor is configured to receive statistical data that identifies a plurality of metrics associated with a viewership of a web page of a plurality of web pages on a web server.
- the processor is also configured to, based on the statistical data, predict that the web page will meet a future viewership metric.
- the processor is configured to, based on the prediction, identify the web page as a web page predicted to meet the future viewership metric.
- the processor is configured to set a high-viewership flag associated with the web page that identifies the web page as a web page predicted to meet the future viewership metric.
- the processor is configured to receive, from a client device, a web page identifier that identifies the web page, and, based on the web page being identified as a web page predicted to meet the future viewership metric, provide to the client device a high-viewership ad content descriptor for use in conjunction with presenting the web page to a user.
- FIG. 1 is a block diagram of a system in which embodiments may be practiced
- FIG. 2 is a block diagram of a statistics collection module according to one embodiment
- FIG. 3 is a message flow diagram that illustrates example messages communicated between various components of the system illustrated in FIG. 1 according to one embodiment
- FIG. 4 is a flowchart of a method for dynamically integrating an advertisement with a web page according to one embodiment
- FIG. 5 is a flowchart of a method for determining whether a web page will meet a future viewership metric according to one embodiment.
- FIG. 6 is a block diagram of a computing device suitable for implementing functionality described herein.
- the embodiments relate to mechanisms for dynamically integrating an advertisement (ad) with a web page in response to a prediction regarding future viewership of the web page based on current viewership data associated with the web page. While the embodiments are illustrated herein in the context of selecting ads to present in conjunction with a web page, the embodiments are not limited to advertising, and have applicability in any context where it is desirable to present additional content in conjunction with a web page based on predicted viewership of the web page.
- FIG. 1 is a block diagram of a system 10 in which embodiments may be practiced.
- the system 10 includes one or more client devices 12 , each of which is operated by a user 14 .
- a client device 12 may comprise any device capable of interpreting a web page, such as a smart phone, computer tablet, laptop computer, desktop computer, or the like.
- the client device 12 is communicatively coupled to one or more other devices via a network 16 .
- the network 16 may comprise any one or combination of private or public networks, including the Internet.
- the client device 12 may communicatively couple to the network 16 via any desired wired or wireless network technology, including, by way of non-limiting example, Ethernet, WiFiTM, ZigBee®, Bluetooth®, or a wireless cellular technology.
- the client device 12 sends a request to a web server 18 for a web page 20 - 1 .
- the request may include, by way of non-limiting example, a domain name, or an Internet Protocol (IP) address of the web page 20 - 1 and optionally a page identifier that identifies the specific web page 20 - 1 .
- IP Internet Protocol
- the web page 20 - 1 includes content 22 that comprises, or links to, substantive content associated with the web page 20 - 1 .
- the web server 18 may be owned by a publishing entity 24 that is in the news business, and the web page 20 - 1 may comprise a home page of a news web site associated with the publishing entity 24 .
- the content 22 may comprise a mixture of links, text, and/or images that relate to relevant news events.
- the web page 20 - 1 may also include one or more additional modules, functions, or instructions that provide certain functionality when executed on the client device 12 and that are described in greater detail below.
- the web page 20 - 1 may be written in any desired language or languages, or combination thereof, including, by way of non-limiting example, HyperText Markup Language (HTML), JavaScriptTM, or Cascading Style Sheets (CSS).
- HTML HyperText Markup Language
- JavaScriptTM JavaScriptTM
- CSS Cascading Style Sheets
- the web page 20 - 1 is sent by the web server 18 to the client device 12 over the network 16 .
- the client device 12 includes technology, such as a browser module 26 , that is capable of interpreting the language or languages in which the web page 20 - 1 has been coded.
- the browser module 26 interprets the web page 20 - 1 to provide the functionality, on the client device 12 , that is coded into the web page 20 - 1 .
- the browser module 26 formats and displays the content 22 on a display 28 of the client device 12 .
- the web page 20 - 1 includes, in one embodiment, a report statistics module 30 that collects or otherwise determines statistical data associated with the web page 20 - 1 while being viewed on the client device 12 by the user 14 .
- the report statistics module 30 sends the statistical data to a statistics collection module 32 .
- the statistics collection module 32 may be associated with the web server 18 , or associated with another entity, and may be coupled to the client device 12 via the network 16 .
- the statistical data can identify any desired metrics associated with viewership of the web page 20 - 1 , including, by way of non-limiting example, an amount of time that the user 14 has hovered a cursor over various parts of the web page 20 - 1 when presented on the display 28 , a total amount of time the user 14 has viewed the web page 20 - 1 , a geographic location of the client device 12 , the particular platform of the client device 12 , such as a mobile or desktop platform, the number of social shares performed by the user 14 , such as sharing the web page 20 - 1 via one or more predetermined social network interfaces, such as Facebook®, LinkedIn®, Twitter®, and the like.
- the report statistics module 30 may determine and provide such statistical data to the statistics collection module 32 without interruption of or direction from the user 14 , and the report statistics module 30 may operate concurrently while the user 14 views the web page 20 - 1 on the display 28 .
- the statistics collection module 32 collects the statistical data from the report statistics module 30 and maintains the statistical data, along with other statistical data, in one or more statistical data sets 34 .
- the client device 12 may be only one of hundreds, thousands, or more of client devices that request and receive the web page 20 - 1 from the web server 18 .
- Each of such client devices may similarly execute the report statistics module 30 and provide relevant statistical data that identifies metrics associated with viewership of the web page 20 - 1 when viewed by a respective user on a respective client device.
- the statistics collection module 32 may be continually receiving statistical data relating to the web page 20 - 1 , as well as to other web pages maintained by the web server 18 , such as web pages 20 - 2 - 20 -N, over time.
- the statistics collection module 32 may aggregate, summarize, or otherwise process the statistical data, and maintain such information in statistical data sets 34 - 1 - 34 -N (generally, statistical data sets 34 ), respectively, for the web pages 20 - 1 - 20 -N (generally, web pages 20 ). In some embodiments, the statistics collection module 32 may also obtain statistical data regarding the web pages 20 from the web server 18 , such as, by way of non-limiting example, statistical data associated with the number of client devices that request a respective web page 20 .
- the web page 20 - 1 also includes, in one embodiment, a check web page status module 36 .
- the check web page status module 36 sends a message that includes a web page identifier that identifies the web page 20 - 1 to a web page status module 38 .
- the web page status module 38 accesses a web page entry 40 - 1 which corresponds to the web page 20 - 1 .
- the web page entry 40 - 1 includes a high-viewership (HV) flag 42 - 1 that indicates whether the web page 20 - 1 has been designated by the web page status module 38 as a HV web page.
- HV high-viewership
- the web page status module 38 obtains a HV content descriptor 44 - 1 that is associated with the web page 20 - 1 .
- the HV content descriptor 44 - 1 may be stored in the web page entry 40 - 1 .
- the HV content descriptor 44 - 1 may comprise one or more words, an alphanumeric string, or other data.
- the web page status module 38 sends the HV content descriptor 44 - 1 to the client device 12 .
- the web page 20 - 1 also includes one or more get ad modules 46 that facilitate the placement of ads, such as an ad 48 , on the web page 20 - 1 when presented on the display 28 . While for purposes of illustration, the web page 20 - 1 has been illustrated with only a single get ad module 46 , a respective web page 20 may include any number of get ad modules 46 , each of which corresponds to a different ad positioned at a different location on the display 28 .
- the get ad module 46 sends an ad retrieval message to an ad server 50 requesting an ad for presentation on the display 28 .
- the web page 20 - 1 may have included one or more default content descriptors 52 for use by the ad server 50 in selecting a suitable ad.
- Such default content descriptors 52 may originate from any number of different mechanisms, including, by way of non-limiting example, default content descriptors provided by the author of the web page 20 - 1 , or inferred from the root URL path of the web page 20 - 1 .
- the ad retrieval message includes the default content descriptors 52 .
- the ad retrieval message may include the HV content descriptor 44 - 1 in addition to the default content descriptors 52 , or in lieu of the default content descriptors 52 .
- the ad server 50 operates to provide ads in response to ad retrieval messages based on the content descriptors contained in the ad retrieval messages.
- the ad server 50 contains ad information 54 that correlates content descriptors to ads. For example, each ad may have associated keywords that may be used to match certain default content descriptors 52 to certain ads.
- the ad server 50 may correlate a particular HV content descriptor 44 to a particular advertiser, such that only ads of that particular advertiser are sent when the particular HV content descriptor 44 is received.
- any ad retrieval calls associated with the web page 20 - 1 will be provided with an ad of the Acme Company.
- other advertisers such as the Beta Company and the Wiley Company, may be blocked from advertising on those web pages 20 that are designated as HV web pages.
- each ad may be from the Acme Company.
- a particular HV content descriptor 44 may be used to select an ad from a subset of advertisers who have each agreed to pay higher rates to advertise in conjunction with those web pages 20 that are designated as HV web pages.
- the ad server 50 selects the ad 48 of the Acme Company, based on the HV content descriptor 44 - 1 received from the client device 12 .
- the ad server 50 sends the ad 48 , or a reference to the ad 48 , to the client device 12 .
- the browser module 26 then displays the ad 48 on the display 28 in conjunction with the web page 20 - 1 .
- FIG. 2 is a block diagram of the statistics collection module 32 in greater detail according to one embodiment.
- the statistical data sets 34 may include any desired statistical data that may be utilized by the web page status module 38 to determine whether a web page 20 is a HV web page.
- the statistical data set 34 may include a page view field 56 - 1 that identifies the number of users who have requested the web page 20 from the web server 18 .
- the number of users who have requested the web page 20 may be obtained, for example, from the web server 18 , or may be tracked based on statistical data gathered by the report statistics modules 30 when executing on respective browser modules 26 of those client devices 12 that have requested the web page 20 - 1 .
- a time spent on page field 56 - 2 may track how long the user 14 viewed the web page 20 - 1 before requesting a different web page 20 .
- a referring uniform resource locator (URL) field 56 - 3 identifies a URL of the web page 20 that linked to the web page 20 - 1 and that resulted in the client device 12 requesting the web page 20 - 1 .
- a geo-location field 56 - 4 identifies a geographic location of the client device 12 , which may be obtained, for example, via an IP address of the client device 12 , or from data obtained from the client device 12 , such as GPS coordinates, or via triangulation techniques.
- a social shares field 56 - 5 identifies one or more social websites with which the user 14 has shared the web page 20 - 1 .
- a unique visitors field 56 - 6 identifies a number of unique visitors who have visited the web page 20 - 1 .
- a client device platform field 56 -N identifies the client device 12 as a type of client device 12 , such as a mobile device or a desktop device. While only a single statistical data set 34 - 1 is illustrated as corresponding to the web page 20 - 1 , the statistics collection module 32 may maintain any number of statistical data sets 34 - 1 in association with the web page 20 - 1 , such as one statistical data set 34 - 1 for each client device 12 that requests the web page 20 - 1 .
- FIG. 3 is a message flow diagram that illustrates example messages communicated between various components of the system 10 illustrated in FIG. 1 , and example processing performed by such various components associated with the web page 20 - 1 as discussed above with regard to FIG. 1 .
- the statistics collection module 32 collects statistical data from the web server 18 regarding the web pages 20 ( FIG. 3 , steps 1000 - 1002 ).
- the information provided by the web server 18 may include, for example, web page identifiers that identify each web page 20 offered by the web server 18 , and statistical data associated with such web pages 20 .
- Such information may be requested periodically by the statistics collection module 32 , such as every 10 seconds by way of non-limiting example, or may be provided periodically by the web server 18 without request from the statistics collection module 32 .
- the web page status module 38 retrieves statistical data from the statistics collection module 32 ( FIG. 3 , steps 1004 - 1006 ).
- the statistical data may comprise both web page identifiers that identify the web pages 20 offered by the web server 18 and the statistical data associated with viewership of the web pages 20 , as discussed above.
- the web page status module 38 utilizes the statistical data to predict whether a respective web page 20 will, in the future, meet a future viewership metric. For example, in one embodiment, the web page status module 38 determines a rate of change at which the respective web page 20 is being viewed by multiple users 14 . The rate of change may, for example, be based on the change in the number of page views over time.
- the web page 20 may be predicted to meet the future viewership metric.
- the web page status module 38 determines that the rate of change of page views over time exceeds the predetermined threshold for the web page 20 - 1 .
- the web page status module 38 sets the HV flag 42 - 1 to designate the web page 20 - 1 as a HV web page ( FIG. 3 , step 1008 ).
- the web page status module 38 also associates the HV content descriptor 44 - 1 with the web page 20 - 1 .
- the web page status module 38 analyzes the referring URLs associated with the respective web page 20 . Historically, it may be established that if a certain percentage of viewers of the respective web page 20 were referred from a particular web site, the respective web page 20 ultimately met the future viewership metric. The web page status module 38 may determine that the percentage of viewers that are being referred from the particular web site exceeds a predetermined threshold, and the respective web page 20 is thus predicted to meet the future viewership metric.
- the client device 12 requests the web page 20 - 1 from the web server 18 ( FIG. 3 , step 1010 ).
- the user 14 may have entered the URL of the web page 20 - 1 in the browser module 26 and selected the Enter key.
- the web server 18 provides the web page 20 - 1 to the client device 12 ( FIG. 3 , step 1012 ).
- the check web page status module 36 executes and provides the web page ID of the web page 20 - 1 to the web page status module 38 FIG. 3 , ( FIG. 3 , step 1014 ).
- the web page status module 38 accesses the web page entry 40 - 1 and determines that the web page 20 - 1 has been flagged as a HV web page.
- the web page status module 38 obtains the HV content descriptor 44 - 1 associated with the web page 20 - 1 ( FIG. 3 , step 1016 ).
- the web page status module 38 sends the HV content descriptor 44 - 1 to the client device 12 ( FIG. 3 , step 1018 ).
- the client device 12 modifies any instances of the get ad module 46 to utilize the HV content descriptor 44 - 1 in lieu of the default content descriptor 52 ( FIG. 3 , step 1020 ).
- the get ad module 46 requests an ad from the ad server 50 , providing the HV content descriptor 44 - 1 to the ad server 50 ( FIG. 3 , step 1022 ).
- the ad server 50 selects the ad 48 , and sends the ad 48 , or a reference, such as a URL of the ad 48 , to the client device 12 ( FIG. 3 , step 1024 ).
- the client device 12 displays the ad 48 in conjunction with the web page 20 - 1 on the display 28 ( FIG. 3 , step 1026 ).
- the report statistics module 30 provides statistical data regarding aspects of the viewership of the web page 20 - 1 by the user 14 , as discussed above, to the statistics collection module 32 ( FIG. 3 , step 1028 ).
- FIG. 4 is a flowchart of a method for dynamically integrating an ad with a web page according to one embodiment.
- the web page status module 38 receives statistical data that identifies a plurality of metrics associated with a viewership of the web page 20 - 1 on the web server 18 ( FIG. 4 , block 2000 ).
- the web page status module 38 predicts that the web page 20 - 1 will meet a future viewership metric based on the statistical data ( FIG. 4 , block 2002 ).
- the web page status module 38 sets the HV flag 42 - 1 ( FIG. 4 , block 2004 ).
- the web page status module 38 receives from the client device 12 a web page ID that identifies the web page 20 - 1 ( FIG. 4 , block 2006 ).
- the web page status module 38 provides the client device 12 with the HV content descriptor 44 - 1 for use in conjunction with presenting the web page 20 - 1 to the user 14 ( FIG. 4 , block 2008 ).
- FIG. 5 is a flowchart of a method for determining whether a web page 20 will meet a future viewership metric according to one embodiment.
- FIG. 5 will be discussed in conjunction with FIG. 1 .
- the web page status module 38 receives the number of current page views from the statistics collection module 32 ( FIG. 5 , block 3000 ).
- the web page status module 38 determines, based on the number of current page views previously received, a rate of change in viewership over time ( FIG. 5 , block 3002 ).
- the web page status module 38 determines whether the rate of change in viewership exceeds a threshold ( FIG. 5 , block 3004 ). If so, then the web page 20 is identified as a web page 20 that is predicted to meet the future viewership criteria ( FIG. 5 , block 3006 ). If not, the process returns to block 3000 . At the next interval, the most recent number of current page views is received, and the process is repeated.
- the web page status module 38 receives current page view data associated with a web page 20 every 10 minutes from the statistics collection module 32 .
- the web page status module 38 stores the current page view data for each interval to facilitate calculations over time.
- a current viewership “velocity” is calculated to identify average page views per minute within each sample interval.
- the rate of change in the viewership velocity i.e., an acceleration
- Thresholds are defined for individual properties (websites) based on historical performance and analysis of web pages 20 that have spiked previously. Thresholds may be expressed as a function of minimum acceleration over a specified time period. If the acceleration of the web page 20 is greater than any one of several thresholds, the web page 20 is identified as a web page 20 that is predicted to meet the future viewership metric.
- PVt page views/minute at current interval
- PVn page views/minute taken at a previous interval
- FIG. 6 is a block diagram of a computing device 60 suitable for implementing the functionality of various components discussed herein, including, for example, the web page status module 38 , the statistics collection module 32 , the ad server 50 , or the web server 18 .
- such components may be implemented on separate computing devices 60 .
- certain of the components may be implemented on a single computing device 60 .
- the web page status module 38 and the statistics collection module 32 may be implemented on a single computing device 60 .
- the computing device 60 may comprise any computing or processing device capable of including firmware, hardware, and/or executing software instructions to implement the functionality described herein for the respective component. For purposes of illustration, the computing device 60 will be discussed in conjunction with implementing the web page status module 38 .
- the computing device 60 includes a central processing unit 62 , sometimes referred to as a processor or micro-processor, a system memory 64 , and a system bus 66 .
- the system bus 66 provides an interface for system components including, but not limited to, the system memory 64 and the central processing unit 62 .
- the central processing unit 62 can be any commercially available or proprietary processor.
- the system bus 66 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and/or a local bus using any of a variety of commercially available bus architectures.
- the system memory 64 may include non-volatile memory 68 (e.g., read only memory (ROM), erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), etc.) and/or volatile memory 70 (e.g., random access memory (RAM)).
- a basic input/output system (BIOS) 72 may be stored in the non-volatile memory 68 , and can include the basic routines that help to transfer information between elements within the computing device 60 .
- the volatile memory 70 may also include a high-speed RAM, such as static RAM for caching data.
- the computing device 60 may further include or be coupled to a computer-readable storage 74 , which may comprise, for example, an internal or external hard disk drive (HDD) (e.g., enhanced integrated drive electronics (EIDE) or serial advanced technology attachment (SATA)), HDD (e.g., EIDE or SATA) for storage, flash memory, or the like.
- HDD enhanced integrated drive electronics
- SATA serial advanced technology attachment
- the computer-readable storage 74 and other drives, associated with computer-readable media and computer-usable media may provide non-volatile storage of data, such as the ad information 54 , computer-executable instructions, and the like.
- a number of modules can be stored in the computer-readable storage 74 and in the volatile memory 70 , including an operating system 76 and one or more program modules 78 , which may implement the functionality described herein in whole or in part, including, for example, the ability to predict the future viewership of a web page based on statistical data associated with viewership of the web page, and any other functionality described herein with regard to the web page status module 38 .
- All or a portion of the embodiments may be implemented as a computer program product stored on a transitory or non-transitory computer-usable or computer-readable storage medium, such as the computer-readable storage 74 , which includes complex programming instructions, such as complex computer-readable program code, configured to cause the central processing unit 62 to carry out the steps described herein.
- the computer-readable program code can comprise software instructions for implementing the functionality of the embodiments described herein when executed on the central processing unit 62 .
- the central processing unit 62 in conjunction with the program modules 78 in the volatile memory 70 , may serve as a controller, or control system, for the computing device 60 that is configured to, or adapted to, implement the functionality described herein.
- the computing device 60 may also include a communication interface 80 , suitable for communicating with the network 16 and other networks as appropriate or desired.
- the embodiments more quickly align the viewership of a web page with the appropriate value of providing content, such as ads, in conjunction with the web page.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Mechanisms for dynamically integrating content with a web page are disclosed. Statistical data that identifies a plurality of metrics associated with viewership of a web page of a plurality of web pages on a web server is received. Based on the statistical data, the web page is predicted to meet a future viewership metric. Based on the prediction, the web page is identified as a web page predicted to meet the future viewership metric. A web page identifier that identifies the web page is received from a client device. The client device is provided with a high-viewership ad content descriptor from a plurality of ad content descriptors for use in conjunction with presenting the web page to a user.
Description
- The embodiments relate generally to online publishing and, in particular, to predicting future viewership of a web page, and to altering content presented in conjunction with the web page based on the prediction.
- Many online publishers rely heavily on advertising for revenue. Advertisers are willing to pay more to advertise in conjunction with a highly popular article than in conjunction with an unpopular article. It is possible, over time, to determine that an article is popular and to increase an advertising rate associated with the article. However, the sooner it can be determined that an article is popular, the sooner the advertising rates for the article can be appropriately increased, thereby increasing advertising revenue. Under alternative sales strategies, popular articles can be sold in bulk to advertisers ahead of time, resulting in a lower effective rate for the advertiser and a greater number of impressions.
- The embodiments relate to mechanisms for dynamically integrating content, such as an advertisement (ad), with a web page in response to a prediction regarding future viewership of the web page based on current viewership data associated with the web page.
- In one embodiment, a method for dynamically integrating an ad with a web page is provided. Statistical data that identifies a plurality of metrics associated with viewership of a web page of a plurality of web pages on a web server is received. Based on the statistical data, the web page is predicted to meet a future viewership metric. Based on the prediction, the web page is identified as a web page predicted to meet the future viewership metric. A web page identifier that identifies the web page is received from a client device. The client device is provided with a high-viewership ad content descriptor from a plurality of ad content descriptors for use in conjunction with presenting the web page to a user.
- In one embodiment, a high-viewership flag associated with the web page is set that identifies the web page as a web page predicted to meet the future viewership metric.
- In one embodiment, iteratively over a period of time, the statistical data that identifies the plurality of metrics is requested from a statistics collection module to generate a plurality of statistical records associated with the web page.
- In one embodiment, a rate of change of a statistical metric over time is determined based on the plurality of statistical records, and it is determined that the rate of change exceeds a rate-of-change threshold for the statistical metric. In one embodiment, the statistical metric comprises page views.
- In one embodiment, the plurality of metrics comprise at least two of a rate of change of a page view count metric, a referring URL metric, a geo-location metric, a unique visitor metric, and a client device platform metric.
- In another embodiment, a system is provided. The system includes a computing device that comprises a communications interface configured to communicate with a network and comprises a processor coupled to the communications interface. The processor is configured to receive statistical data that identifies a plurality of metrics associated with a viewership of a web page of a plurality of web pages on a web server. The processor is also configured to, based on the statistical data, predict that the web page will meet a future viewership metric. The processor is configured to, based on the prediction, identify the web page as a web page predicted to meet the future viewership metric. In one embodiment, the processor is configured to set a high-viewership flag associated with the web page that identifies the web page as a web page predicted to meet the future viewership metric. The processor is configured to receive, from a client device, a web page identifier that identifies the web page, and, based on the web page being identified as a web page predicted to meet the future viewership metric, provide to the client device a high-viewership ad content descriptor for use in conjunction with presenting the web page to a user.
- Those skilled in the art will appreciate the scope of the disclosure and realize additional aspects thereof after reading the following detailed description of the preferred embodiments in association with the accompanying drawing figures.
- The accompanying drawing figures incorporated in and forming a part of this specification illustrate several aspects of the disclosure, and together with the description serve to explain the principles of the disclosure.
-
FIG. 1 is a block diagram of a system in which embodiments may be practiced; -
FIG. 2 is a block diagram of a statistics collection module according to one embodiment; -
FIG. 3 is a message flow diagram that illustrates example messages communicated between various components of the system illustrated inFIG. 1 according to one embodiment; -
FIG. 4 is a flowchart of a method for dynamically integrating an advertisement with a web page according to one embodiment; -
FIG. 5 is a flowchart of a method for determining whether a web page will meet a future viewership metric according to one embodiment; and -
FIG. 6 is a block diagram of a computing device suitable for implementing functionality described herein. - The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the embodiments and illustrate the best mode of practicing the embodiments. Upon reading the following description in light of the accompanying drawing figures, those skilled in the art will understand the concepts of the disclosure and will recognize applications of these concepts not particularly addressed herein. It should be understood that these concepts and applications fall within the scope of the disclosure and the accompanying claims.
- Any flowcharts discussed herein are necessarily discussed in some sequence for purposes of illustration, but unless otherwise explicitly indicated, the embodiments are not limited to any particular sequence of steps. The use herein of ordinals in conjunction with an element is solely for distinguishing what might otherwise be similar or identical labels, such as “first web page” and “second web page,” and does not imply a priority, a type, an importance, or other attribute, unless otherwise stated herein.
- The embodiments relate to mechanisms for dynamically integrating an advertisement (ad) with a web page in response to a prediction regarding future viewership of the web page based on current viewership data associated with the web page. While the embodiments are illustrated herein in the context of selecting ads to present in conjunction with a web page, the embodiments are not limited to advertising, and have applicability in any context where it is desirable to present additional content in conjunction with a web page based on predicted viewership of the web page.
-
FIG. 1 is a block diagram of asystem 10 in which embodiments may be practiced. Thesystem 10 includes one ormore client devices 12, each of which is operated by auser 14. Aclient device 12 may comprise any device capable of interpreting a web page, such as a smart phone, computer tablet, laptop computer, desktop computer, or the like. Theclient device 12 is communicatively coupled to one or more other devices via anetwork 16. Thenetwork 16 may comprise any one or combination of private or public networks, including the Internet. Theclient device 12 may communicatively couple to thenetwork 16 via any desired wired or wireless network technology, including, by way of non-limiting example, Ethernet, WiFi™, ZigBee®, Bluetooth®, or a wireless cellular technology. - Typically in response to input from the
user 14, theclient device 12 sends a request to aweb server 18 for a web page 20-1. The request may include, by way of non-limiting example, a domain name, or an Internet Protocol (IP) address of the web page 20-1 and optionally a page identifier that identifies the specific web page 20-1. The web page 20-1 includescontent 22 that comprises, or links to, substantive content associated with the web page 20-1. For example, theweb server 18 may be owned by apublishing entity 24 that is in the news business, and the web page 20-1 may comprise a home page of a news web site associated with thepublishing entity 24. Thecontent 22 may comprise a mixture of links, text, and/or images that relate to relevant news events. The web page 20-1 may also include one or more additional modules, functions, or instructions that provide certain functionality when executed on theclient device 12 and that are described in greater detail below. The web page 20-1 may be written in any desired language or languages, or combination thereof, including, by way of non-limiting example, HyperText Markup Language (HTML), JavaScript™, or Cascading Style Sheets (CSS). - The web page 20-1 is sent by the
web server 18 to theclient device 12 over thenetwork 16. Theclient device 12 includes technology, such as abrowser module 26, that is capable of interpreting the language or languages in which the web page 20-1 has been coded. In particular, upon receipt of the web page 20-1, thebrowser module 26 interprets the web page 20-1 to provide the functionality, on theclient device 12, that is coded into the web page 20-1. - Among other things, the
browser module 26 formats and displays thecontent 22 on adisplay 28 of theclient device 12. In addition, the web page 20-1 includes, in one embodiment, areport statistics module 30 that collects or otherwise determines statistical data associated with the web page 20-1 while being viewed on theclient device 12 by theuser 14. Thereport statistics module 30 sends the statistical data to astatistics collection module 32. Thestatistics collection module 32 may be associated with theweb server 18, or associated with another entity, and may be coupled to theclient device 12 via thenetwork 16. The statistical data can identify any desired metrics associated with viewership of the web page 20-1, including, by way of non-limiting example, an amount of time that theuser 14 has hovered a cursor over various parts of the web page 20-1 when presented on thedisplay 28, a total amount of time theuser 14 has viewed the web page 20-1, a geographic location of theclient device 12, the particular platform of theclient device 12, such as a mobile or desktop platform, the number of social shares performed by theuser 14, such as sharing the web page 20-1 via one or more predetermined social network interfaces, such as Facebook®, LinkedIn®, Twitter®, and the like. Thereport statistics module 30 may determine and provide such statistical data to thestatistics collection module 32 without interruption of or direction from theuser 14, and thereport statistics module 30 may operate concurrently while theuser 14 views the web page 20-1 on thedisplay 28. - The
statistics collection module 32 collects the statistical data from thereport statistics module 30 and maintains the statistical data, along with other statistical data, in one or more statistical data sets 34. Notably, theclient device 12 may be only one of hundreds, thousands, or more of client devices that request and receive the web page 20-1 from theweb server 18. Each of such client devices may similarly execute thereport statistics module 30 and provide relevant statistical data that identifies metrics associated with viewership of the web page 20-1 when viewed by a respective user on a respective client device. Thus, thestatistics collection module 32 may be continually receiving statistical data relating to the web page 20-1, as well as to other web pages maintained by theweb server 18, such as web pages 20-2-20-N, over time. Thestatistics collection module 32 may aggregate, summarize, or otherwise process the statistical data, and maintain such information in statistical data sets 34-1-34-N (generally, statistical data sets 34), respectively, for the web pages 20-1-20-N (generally, web pages 20). In some embodiments, thestatistics collection module 32 may also obtain statistical data regarding theweb pages 20 from theweb server 18, such as, by way of non-limiting example, statistical data associated with the number of client devices that request arespective web page 20. - The web page 20-1 also includes, in one embodiment, a check web
page status module 36. At some point after thebrowser module 26 loads the web page 20-1, the check webpage status module 36 sends a message that includes a web page identifier that identifies the web page 20-1 to a webpage status module 38. In response to the message, the webpage status module 38 accesses a web page entry 40-1 which corresponds to the web page 20-1. The web page entry 40-1 includes a high-viewership (HV) flag 42-1 that indicates whether the web page 20-1 has been designated by the webpage status module 38 as a HV web page. Mechanisms by which the webpage status module 38 determines whether the web page 20-1 is a HV web page will be discussed in greater detail below. - If the HV flag 42-1 of the web page entry 40-1 is “set,” then the HV flag 42-1 indicates that the web page 20-1 has been identified as a HV web page. Because the web page 20-1 has been identified as a HV web page, the web
page status module 38 obtains a HV content descriptor 44-1 that is associated with the web page 20-1. In some embodiments, the HV content descriptor 44-1 may be stored in the web page entry 40-1. The HV content descriptor 44-1 may comprise one or more words, an alphanumeric string, or other data. The webpage status module 38 sends the HV content descriptor 44-1 to theclient device 12. - The web page 20-1 also includes one or more
get ad modules 46 that facilitate the placement of ads, such as anad 48, on the web page 20-1 when presented on thedisplay 28. While for purposes of illustration, the web page 20-1 has been illustrated with only a singleget ad module 46, arespective web page 20 may include any number ofget ad modules 46, each of which corresponds to a different ad positioned at a different location on thedisplay 28. - When executed by the
browser module 26, theget ad module 46 sends an ad retrieval message to anad server 50 requesting an ad for presentation on thedisplay 28. By default, the web page 20-1 may have included one or moredefault content descriptors 52 for use by thead server 50 in selecting a suitable ad. Suchdefault content descriptors 52 may originate from any number of different mechanisms, including, by way of non-limiting example, default content descriptors provided by the author of the web page 20-1, or inferred from the root URL path of the web page 20-1. Typically, the ad retrieval message includes thedefault content descriptors 52. However, where, as in this example, theclient device 12 has received the HV content descriptor 44-1, the ad retrieval message may include the HV content descriptor 44-1 in addition to thedefault content descriptors 52, or in lieu of thedefault content descriptors 52. - The
ad server 50 operates to provide ads in response to ad retrieval messages based on the content descriptors contained in the ad retrieval messages. In one embodiment, thead server 50 containsad information 54 that correlates content descriptors to ads. For example, each ad may have associated keywords that may be used to match certaindefault content descriptors 52 to certain ads. In one embodiment, thead server 50 may correlate a particular HV content descriptor 44 to a particular advertiser, such that only ads of that particular advertiser are sent when the particular HV content descriptor 44 is received. Thus, in this example, because the web page 20-1 has been flagged as a HV web page, any ad retrieval calls associated with the web page 20-1 will be provided with an ad of the Acme Company. In essence, other advertisers, such as the Beta Company and the Wiley Company, may be blocked from advertising on thoseweb pages 20 that are designated as HV web pages. Thus, if three or four ads were displayed on thedisplay 28 in conjunction with the web page 20-1, each ad may be from the Acme Company. In other embodiments, a particular HV content descriptor 44 may be used to select an ad from a subset of advertisers who have each agreed to pay higher rates to advertise in conjunction with thoseweb pages 20 that are designated as HV web pages. - Assume for purposes of illustration that the
ad server 50 selects thead 48 of the Acme Company, based on the HV content descriptor 44-1 received from theclient device 12. Thead server 50 sends thead 48, or a reference to thead 48, to theclient device 12. Thebrowser module 26 then displays thead 48 on thedisplay 28 in conjunction with the web page 20-1. -
FIG. 2 is a block diagram of thestatistics collection module 32 in greater detail according to one embodiment. The statistical data sets 34 may include any desired statistical data that may be utilized by the webpage status module 38 to determine whether aweb page 20 is a HV web page. In one embodiment, thestatistical data set 34 may include a page view field 56-1 that identifies the number of users who have requested theweb page 20 from theweb server 18. The number of users who have requested theweb page 20 may be obtained, for example, from theweb server 18, or may be tracked based on statistical data gathered by thereport statistics modules 30 when executing onrespective browser modules 26 of thoseclient devices 12 that have requested the web page 20-1. - A time spent on page field 56-2 may track how long the
user 14 viewed the web page 20-1 before requesting adifferent web page 20. A referring uniform resource locator (URL) field 56-3 identifies a URL of theweb page 20 that linked to the web page 20-1 and that resulted in theclient device 12 requesting the web page 20-1. A geo-location field 56-4 identifies a geographic location of theclient device 12, which may be obtained, for example, via an IP address of theclient device 12, or from data obtained from theclient device 12, such as GPS coordinates, or via triangulation techniques. A social shares field 56-5 identifies one or more social websites with which theuser 14 has shared the web page 20-1. A unique visitors field 56-6 identifies a number of unique visitors who have visited the web page 20-1. A client device platform field 56-N identifies theclient device 12 as a type ofclient device 12, such as a mobile device or a desktop device. While only a single statistical data set 34-1 is illustrated as corresponding to the web page 20-1, thestatistics collection module 32 may maintain any number of statistical data sets 34-1 in association with the web page 20-1, such as one statistical data set 34-1 for eachclient device 12 that requests the web page 20-1. -
FIG. 3 is a message flow diagram that illustrates example messages communicated between various components of thesystem 10 illustrated inFIG. 1 , and example processing performed by such various components associated with the web page 20-1 as discussed above with regard toFIG. 1 . Thestatistics collection module 32, on an ongoing basis, collects statistical data from theweb server 18 regarding the web pages 20 (FIG. 3 , steps 1000-1002). The information provided by theweb server 18 may include, for example, web page identifiers that identify eachweb page 20 offered by theweb server 18, and statistical data associated withsuch web pages 20. Such information may be requested periodically by thestatistics collection module 32, such as every 10 seconds by way of non-limiting example, or may be provided periodically by theweb server 18 without request from thestatistics collection module 32. - The web
page status module 38, on an on-going basis, retrieves statistical data from the statistics collection module 32 (FIG. 3 , steps 1004-1006). The statistical data may comprise both web page identifiers that identify theweb pages 20 offered by theweb server 18 and the statistical data associated with viewership of theweb pages 20, as discussed above. The webpage status module 38 utilizes the statistical data to predict whether arespective web page 20 will, in the future, meet a future viewership metric. For example, in one embodiment, the webpage status module 38 determines a rate of change at which therespective web page 20 is being viewed bymultiple users 14. The rate of change may, for example, be based on the change in the number of page views over time. If the rate of change exceeds a predetermined threshold, theweb page 20 may be predicted to meet the future viewership metric. For purposes of illustration, assume that the webpage status module 38 determines that the rate of change of page views over time exceeds the predetermined threshold for the web page 20-1. The webpage status module 38 sets the HV flag 42-1 to designate the web page 20-1 as a HV web page (FIG. 3 , step 1008). The webpage status module 38 also associates the HV content descriptor 44-1 with the web page 20-1. - It should be noted that the change in number of page views over time is only one example of a calculation for predicting that a
respective web page 20 will meet a future viewership metric, and the embodiments are not limited to any particular calculation. For example, in another embodiment, the webpage status module 38 analyzes the referring URLs associated with therespective web page 20. Historically, it may be established that if a certain percentage of viewers of therespective web page 20 were referred from a particular web site, therespective web page 20 ultimately met the future viewership metric. The webpage status module 38 may determine that the percentage of viewers that are being referred from the particular web site exceeds a predetermined threshold, and therespective web page 20 is thus predicted to meet the future viewership metric. - The
client device 12 requests the web page 20-1 from the web server 18 (FIG. 3 , step 1010). For example, theuser 14 may have entered the URL of the web page 20-1 in thebrowser module 26 and selected the Enter key. In response, theweb server 18 provides the web page 20-1 to the client device 12 (FIG. 3 , step 1012). The check webpage status module 36 executes and provides the web page ID of the web page 20-1 to the webpage status module 38FIG. 3 , (FIG. 3 , step 1014). The webpage status module 38 accesses the web page entry 40-1 and determines that the web page 20-1 has been flagged as a HV web page. The webpage status module 38 obtains the HV content descriptor 44-1 associated with the web page 20-1 (FIG. 3 , step 1016). The webpage status module 38 sends the HV content descriptor 44-1 to the client device 12 (FIG. 3 , step 1018). Theclient device 12 modifies any instances of theget ad module 46 to utilize the HV content descriptor 44-1 in lieu of the default content descriptor 52 (FIG. 3 , step 1020). Theget ad module 46 requests an ad from thead server 50, providing the HV content descriptor 44-1 to the ad server 50 (FIG. 3 , step 1022). - The
ad server 50, based on the HV content descriptor 44-1, selects thead 48, and sends thead 48, or a reference, such as a URL of thead 48, to the client device 12 (FIG. 3 , step 1024). Theclient device 12 displays thead 48 in conjunction with the web page 20-1 on the display 28 (FIG. 3 , step 1026). As theuser 14 views the web page 20-1, thereport statistics module 30 provides statistical data regarding aspects of the viewership of the web page 20-1 by theuser 14, as discussed above, to the statistics collection module 32 (FIG. 3 , step 1028). -
FIG. 4 is a flowchart of a method for dynamically integrating an ad with a web page according to one embodiment.FIG. 4 will be discussed in conjunction withFIG. 1 . The webpage status module 38 receives statistical data that identifies a plurality of metrics associated with a viewership of the web page 20-1 on the web server 18 (FIG. 4 , block 2000). The webpage status module 38 predicts that the web page 20-1 will meet a future viewership metric based on the statistical data (FIG. 4 , block 2002). The webpage status module 38 sets the HV flag 42-1 (FIG. 4 , block 2004). The webpage status module 38 receives from the client device 12 a web page ID that identifies the web page 20-1 (FIG. 4 , block 2006). The webpage status module 38 provides theclient device 12 with the HV content descriptor 44-1 for use in conjunction with presenting the web page 20-1 to the user 14 (FIG. 4 , block 2008). -
FIG. 5 is a flowchart of a method for determining whether aweb page 20 will meet a future viewership metric according to one embodiment.FIG. 5 will be discussed in conjunction withFIG. 1 . At various intervals, the webpage status module 38 receives the number of current page views from the statistics collection module 32 (FIG. 5 , block 3000). The webpage status module 38 determines, based on the number of current page views previously received, a rate of change in viewership over time (FIG. 5 , block 3002). The webpage status module 38 determines whether the rate of change in viewership exceeds a threshold (FIG. 5 , block 3004). If so, then theweb page 20 is identified as aweb page 20 that is predicted to meet the future viewership criteria (FIG. 5 , block 3006). If not, the process returns to block 3000. At the next interval, the most recent number of current page views is received, and the process is repeated. - As an example, assume that the web
page status module 38 receives current page view data associated with aweb page 20 every 10 minutes from thestatistics collection module 32. The webpage status module 38 stores the current page view data for each interval to facilitate calculations over time. A current viewership “velocity” is calculated to identify average page views per minute within each sample interval. At each interval, the rate of change in the viewership velocity, i.e., an acceleration, is calculated for multiple time intervals (e.g., 30 minutes) and for longer duration (e.g., 3 hours). Thresholds are defined for individual properties (websites) based on historical performance and analysis ofweb pages 20 that have spiked previously. Thresholds may be expressed as a function of minimum acceleration over a specified time period. If the acceleration of theweb page 20 is greater than any one of several thresholds, theweb page 20 is identified as aweb page 20 that is predicted to meet the future viewership metric. - The following provides an example calculation:
- PVt=page views/minute at current interval
- PVn=page views/minute taken at a previous interval
- t=time difference between current interval and the previous interval
-
Acc=(PVt−PVn)/t - [Tn]=array of threshold accelerations and time intervals
-
- Assuming that PVt=1000 page views/min, PV1=600 page views/min, t=60 min then:
-
Acc=(1000 page views/min−600 page views/min)/60 min=˜6.7 page views/min2 -
- T3=[“minAcc”=>6.0 page views/min2, “interval”=>60 min], wherein T3 is one of a plurality of thresholds in an array. Because Acc of about 6.7 page views/mine is greater than the minimum “minAcc” of 6.0 page views/mine, and “interval” matches the example “t” value of 60 minutes, the
web page 20 is identified as aweb page 20 that is predicted to meet the future viewership metric.
- T3=[“minAcc”=>6.0 page views/min2, “interval”=>60 min], wherein T3 is one of a plurality of thresholds in an array. Because Acc of about 6.7 page views/mine is greater than the minimum “minAcc” of 6.0 page views/mine, and “interval” matches the example “t” value of 60 minutes, the
-
FIG. 6 is a block diagram of acomputing device 60 suitable for implementing the functionality of various components discussed herein, including, for example, the webpage status module 38, thestatistics collection module 32, thead server 50, or theweb server 18. In some embodiments, such components may be implemented onseparate computing devices 60. In other embodiments, certain of the components may be implemented on asingle computing device 60. For example, in some embodiments, the webpage status module 38 and thestatistics collection module 32 may be implemented on asingle computing device 60. These are merely examples, and the particular implementation of functionality versus individual computing devices may be system and design dependent. - The
computing device 60 may comprise any computing or processing device capable of including firmware, hardware, and/or executing software instructions to implement the functionality described herein for the respective component. For purposes of illustration, thecomputing device 60 will be discussed in conjunction with implementing the webpage status module 38. Thecomputing device 60 includes acentral processing unit 62, sometimes referred to as a processor or micro-processor, asystem memory 64, and asystem bus 66. Thesystem bus 66 provides an interface for system components including, but not limited to, thesystem memory 64 and thecentral processing unit 62. Thecentral processing unit 62 can be any commercially available or proprietary processor. - The
system bus 66 may be any of several types of bus structures that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and/or a local bus using any of a variety of commercially available bus architectures. Thesystem memory 64 may include non-volatile memory 68 (e.g., read only memory (ROM), erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), etc.) and/or volatile memory 70 (e.g., random access memory (RAM)). A basic input/output system (BIOS) 72 may be stored in thenon-volatile memory 68, and can include the basic routines that help to transfer information between elements within thecomputing device 60. Thevolatile memory 70 may also include a high-speed RAM, such as static RAM for caching data. - The
computing device 60 may further include or be coupled to a computer-readable storage 74, which may comprise, for example, an internal or external hard disk drive (HDD) (e.g., enhanced integrated drive electronics (EIDE) or serial advanced technology attachment (SATA)), HDD (e.g., EIDE or SATA) for storage, flash memory, or the like. The computer-readable storage 74 and other drives, associated with computer-readable media and computer-usable media, may provide non-volatile storage of data, such as thead information 54, computer-executable instructions, and the like. Although the description of computer-readable media above refers to an HDD, it should be appreciated by those skilled in the art that other types of media which are readable by a computer, such as Zip disks, magnetic cassettes, flash memory cards, cartridges, and the like, may also be used in the exemplary operating environment, and further, that any such media may contain computer-executable instructions for performing novel methods of the disclosed architecture. - A number of modules can be stored in the computer-
readable storage 74 and in thevolatile memory 70, including anoperating system 76 and one ormore program modules 78, which may implement the functionality described herein in whole or in part, including, for example, the ability to predict the future viewership of a web page based on statistical data associated with viewership of the web page, and any other functionality described herein with regard to the webpage status module 38. - All or a portion of the embodiments may be implemented as a computer program product stored on a transitory or non-transitory computer-usable or computer-readable storage medium, such as the computer-
readable storage 74, which includes complex programming instructions, such as complex computer-readable program code, configured to cause thecentral processing unit 62 to carry out the steps described herein. Thus, the computer-readable program code can comprise software instructions for implementing the functionality of the embodiments described herein when executed on thecentral processing unit 62. Thecentral processing unit 62, in conjunction with theprogram modules 78 in thevolatile memory 70, may serve as a controller, or control system, for thecomputing device 60 that is configured to, or adapted to, implement the functionality described herein. - The
computing device 60 may also include acommunication interface 80, suitable for communicating with thenetwork 16 and other networks as appropriate or desired. - The embodiments, among other advantages, more quickly align the viewership of a web page with the appropriate value of providing content, such as ads, in conjunction with the web page.
- Those skilled in the art will recognize improvements and modifications to the preferred embodiments of the disclosure. All such improvements and modifications are considered within the scope of the concepts disclosed herein and the claims that follow.
Claims (19)
1. A method for dynamically integrating an advertisement (ad) with a web page, comprising:
receiving statistical data that identifies a plurality of metrics associated with viewership of a web page of a plurality of web pages on a web server;
based on the statistical data, predicting that the web page will meet a future viewership metric;
based on the prediction, identifying the web page as a web page predicted to meet the future viewership metric;
receiving, from a client device, a web page identifier that identifies the web page; and
providing to the client device a high-viewership ad content descriptor from a plurality of ad content descriptors for use in conjunction with presenting the web page to a user.
2. The method of claim 1 , further comprising setting a high-viewership flag associated with the web page that identifies the web page as a web page predicted to meet the future viewership metric.
3. The method of claim 1 , wherein receiving the statistical data that identifies the plurality of metrics further comprises:
requesting, iteratively over a period of time, the statistical data that identifies the plurality of metrics from a statistics collection module to generate a plurality of statistical records associated with the web page.
4. The method of claim 3 , wherein based on the statistical data, predicting that the web page will meet the future viewership metric comprises:
determining a rate of change of a statistical metric over time based on the plurality of statistical records; and
determining that the rate of change exceeds a rate-of-change threshold for the statistical metric.
5. The method of claim 4 , wherein the statistical metric comprises page views.
6. The method of claim 1 , wherein the statistical data identifies the plurality of web pages on the web server.
7. The method of claim 1 , wherein the plurality of metrics comprises at least two of a rate of change of a page view count metric, a referring URL metric, a geo-location metric, a unique visitor metric, a social share magnitude metric, and a client device platform metric.
8. A system comprising:
a computing device comprising:
a communications interface configured to communicate with a network; and
a processor coupled to the communications interface, the processor configured to:
receive statistical data that identifies a plurality of metrics associated with viewership of a web page of a plurality of web pages on a web server;
based on the statistical data, predict that the web page will meet a future viewership metric;
based on the prediction, identify the web page as a web page predicted to meet the future viewership metric;
receive, from a client device, a web page identifier that identifies the web page; and
based on the web page being identified as a web page predicted to meet the future viewership metric, provide to the client device a high-viewership ad content descriptor for use in conjunction with presenting the web page to a user.
9. The system of claim 8 , wherein to identify the web page as a web page predicted to meet the future viewership metric, the processor is further configured to set a high-viewership flag associated with the web page.
10. The system of claim 8 , wherein the processor is further configured to request, iteratively over a period of time, the statistical data that identifies the plurality of metrics from a statistics collection module to generate a plurality of statistical records associated with the web page.
11. The system of claim 10 , wherein to predict that the web page will meet the future viewership metric the processor is further configured to:
determine a rate of change of a statistical metric over time based on the plurality of statistical records; and
determine that the rate of change exceeds a rate-of-change threshold for the statistical metric.
12. The system of claim 11 , wherein the statistical metric comprises page views.
13. The system of claim 8 , wherein the statistical data identifies the plurality of web pages on the web server.
14. The system of claim 8 , further comprising:
a statistics collection module, the statistics collection module configured to:
periodically request, from the web server that hosts the web page, the statistical data associated with the web page; and
periodically receive, from a plurality of computing devices on which the web page is presented, the statistical data associated with the web page.
15. A computer program product for dynamically integrating an advertisement (ad) with a web page, the computer program product stored on a non-transitory computer-readable storage medium and including instructions configured to cause a processor to carry out the steps of:
receiving statistical data that identifies a plurality of metrics associated with viewership of a web page of a plurality of web pages on a web server;
based on the statistical data, predicting that the web page will meet a future viewership metric;
based on the prediction, identifying the web page as a web page predicted to meet the future viewership metric;
receiving, from a client device, a web page identifier that identifies the web page; and
providing to the client device a high-viewership ad content descriptor from a plurality of ad content descriptors for use in conjunction with presenting the web page to a user.
16. The computer program product of claim 15 , wherein the instructions are further configured to cause the processor to set a high-viewership flag associated with the web page to identify the web page as a web page predicted to meet the future viewership metric.
17. The computer program product of claim 15 , wherein receiving the statistical data that identifies the plurality of metrics further comprises:
requesting, iteratively over a period of time, the statistical data that identifies the plurality of metrics from a statistics collection module to generate a plurality of statistical records associated with the web page.
18. The computer program product of claim 17 , wherein predicting that the web page will meet the future viewership metric comprises:
determining a rate of change of a statistical metric over time based on the plurality of statistical records; and
determining that the rate of change exceeds a rate-of-change threshold for the statistical metric.
19. The computer program product of claim 18 , wherein the statistical metric comprises page views.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/584,773 US20160189237A1 (en) | 2014-12-29 | 2014-12-29 | Web page viewership prediction |
GB1711135.2A GB2549228A (en) | 2014-12-29 | 2015-12-29 | Web page viewership prediction |
PCT/US2015/067836 WO2016109518A1 (en) | 2014-12-29 | 2015-12-29 | Web page viewership prediction |
US15/922,133 US10963920B2 (en) | 2014-12-29 | 2018-03-15 | Web page viewership prediction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/584,773 US20160189237A1 (en) | 2014-12-29 | 2014-12-29 | Web page viewership prediction |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/922,133 Continuation US10963920B2 (en) | 2014-12-29 | 2018-03-15 | Web page viewership prediction |
Publications (1)
Publication Number | Publication Date |
---|---|
US20160189237A1 true US20160189237A1 (en) | 2016-06-30 |
Family
ID=56164732
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/584,773 Abandoned US20160189237A1 (en) | 2014-12-29 | 2014-12-29 | Web page viewership prediction |
US15/922,133 Active 2035-09-10 US10963920B2 (en) | 2014-12-29 | 2018-03-15 | Web page viewership prediction |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/922,133 Active 2035-09-10 US10963920B2 (en) | 2014-12-29 | 2018-03-15 | Web page viewership prediction |
Country Status (3)
Country | Link |
---|---|
US (2) | US20160189237A1 (en) |
GB (1) | GB2549228A (en) |
WO (1) | WO2016109518A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10878457B2 (en) * | 2014-08-21 | 2020-12-29 | Oracle International Corporation | Tunable statistical IDs |
US10963920B2 (en) | 2014-12-29 | 2021-03-30 | Advance Magazine Publishers Inc. | Web page viewership prediction |
US11516277B2 (en) | 2019-09-14 | 2022-11-29 | Oracle International Corporation | Script-based techniques for coordinating content selection across devices |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665116B (en) * | 2016-07-26 | 2021-02-02 | 阿里巴巴集团控股有限公司 | Page resource bit information processing method and device |
US20220198476A1 (en) * | 2020-12-23 | 2022-06-23 | Shr Jin Wei | Systems for identifying the ability of users to forecast popularity of various content items |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6281986B1 (en) * | 1995-09-29 | 2001-08-28 | Hewlett-Packard Company | Method for browsing electronically stored information |
US20080294503A1 (en) * | 2007-05-24 | 2008-11-27 | Borislow Daniel M | Techniques for Displaying One or More Advertisements |
US20130291126A1 (en) * | 2010-06-11 | 2013-10-31 | Blueprint Growth Institute, Inc. | Electronic Document Delivery, Display, Updating, and Interaction Systems and Methods |
US9164979B1 (en) * | 2012-11-14 | 2015-10-20 | Amazon Technologies, Inc. | Implicit ratings |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6801945B2 (en) | 2000-02-04 | 2004-10-05 | Yahoo ! Inc. | Systems and methods for predicting traffic on internet sites |
US7020658B1 (en) * | 2000-06-02 | 2006-03-28 | Charles E. Hill & Associates | Data file management system and method for browsers |
US6839681B1 (en) | 2000-06-28 | 2005-01-04 | Right Angle Research Llc | Performance measurement method for public relations, advertising and sales events |
US7058590B2 (en) | 2001-05-04 | 2006-06-06 | Hewlett-Packard Development Company, L.P. | System and method for generating conversion-related estimates utilizing adaptive sample size |
KR100820257B1 (en) * | 2006-08-10 | 2008-04-08 | 엔에이치엔(주) | Method For Forecasting Inventory Of Advertisement And Apparatus Thereof In Advertisement Transmission System |
WO2009029947A1 (en) * | 2007-08-31 | 2009-03-05 | Numeric Analytics Llc | Method of optimizing internet advertising |
JP4709199B2 (en) * | 2007-11-19 | 2011-06-22 | デジタル・アドバタイジング・コンソーシアム株式会社 | Advertisement evaluation system and advertisement evaluation method |
US7966564B2 (en) | 2008-05-08 | 2011-06-21 | Adchemy, Inc. | Web page server process using visitor context and page features to select optimized web pages for display |
US20090282327A1 (en) * | 2008-05-12 | 2009-11-12 | International Business Machines Corporation | Method and system for efficient web page rendering |
US8549163B2 (en) * | 2008-09-18 | 2013-10-01 | Jonathan M. Urdan | Passive parameter based demographics generation |
US20100114954A1 (en) | 2008-10-28 | 2010-05-06 | Microsoft Corporation | Realtime popularity prediction for events and queries |
US20100241597A1 (en) | 2009-03-19 | 2010-09-23 | Bee-Chung Chen | Dynamic estimation of the popularity of web content |
US8543453B1 (en) | 2009-05-08 | 2013-09-24 | Google Inc. | Publication evaluation |
US8719298B2 (en) | 2009-05-21 | 2014-05-06 | Microsoft Corporation | Click-through prediction for news queries |
US8296253B2 (en) | 2009-06-15 | 2012-10-23 | Hewlett-Packard Development Company, L. P. | Managing online content based on its predicted popularity |
US20110302103A1 (en) | 2010-06-08 | 2011-12-08 | International Business Machines Corporation | Popularity prediction of user-generated content |
US8521813B2 (en) | 2011-02-01 | 2013-08-27 | Limelight Networks, Inc. | Content replication workflow in content delivery networks |
US8600809B1 (en) | 2011-03-25 | 2013-12-03 | Google Inc. | Predictive model performance |
EP2691858B1 (en) | 2011-03-30 | 2016-10-26 | Hewlett-Packard Enterprise Development LP | Timeframe based data analysis |
JP5817828B2 (en) * | 2011-04-22 | 2015-11-18 | 日本電気株式会社 | Content distribution system, control device, and content distribution method |
US8504912B2 (en) | 2011-07-15 | 2013-08-06 | Neodata Group S.R.L. | System to forecast performance of online news articles to suggest the optimal homepage layout to maximize article readership and readers stickiness |
US20130311408A1 (en) | 2012-05-15 | 2013-11-21 | Comcast Cable Communications, Llc | Determining and Predicting Popularity of Content |
US20140108162A1 (en) * | 2012-10-17 | 2014-04-17 | Microsoft Corporation | Predicting performance of an online advertising campaign |
US9727630B2 (en) * | 2014-02-18 | 2017-08-08 | Microsoft Technology Licensing, Llc | Dynamic content delivery for real-time trends |
US20160189237A1 (en) | 2014-12-29 | 2016-06-30 | Advance Magazine Publishers Inc. | Web page viewership prediction |
-
2014
- 2014-12-29 US US14/584,773 patent/US20160189237A1/en not_active Abandoned
-
2015
- 2015-12-29 WO PCT/US2015/067836 patent/WO2016109518A1/en active Application Filing
- 2015-12-29 GB GB1711135.2A patent/GB2549228A/en not_active Withdrawn
-
2018
- 2018-03-15 US US15/922,133 patent/US10963920B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6281986B1 (en) * | 1995-09-29 | 2001-08-28 | Hewlett-Packard Company | Method for browsing electronically stored information |
US20080294503A1 (en) * | 2007-05-24 | 2008-11-27 | Borislow Daniel M | Techniques for Displaying One or More Advertisements |
US20130291126A1 (en) * | 2010-06-11 | 2013-10-31 | Blueprint Growth Institute, Inc. | Electronic Document Delivery, Display, Updating, and Interaction Systems and Methods |
US9164979B1 (en) * | 2012-11-14 | 2015-10-20 | Amazon Technologies, Inc. | Implicit ratings |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10878457B2 (en) * | 2014-08-21 | 2020-12-29 | Oracle International Corporation | Tunable statistical IDs |
US11568447B2 (en) | 2014-08-21 | 2023-01-31 | Oracle International Corporation | Tunable statistical IDs |
US12073437B2 (en) | 2014-08-21 | 2024-08-27 | Oracle International Corporation | Tunable statistical ids |
US10963920B2 (en) | 2014-12-29 | 2021-03-30 | Advance Magazine Publishers Inc. | Web page viewership prediction |
US11516277B2 (en) | 2019-09-14 | 2022-11-29 | Oracle International Corporation | Script-based techniques for coordinating content selection across devices |
Also Published As
Publication number | Publication date |
---|---|
US10963920B2 (en) | 2021-03-30 |
GB201711135D0 (en) | 2017-08-23 |
US20180204248A1 (en) | 2018-07-19 |
WO2016109518A1 (en) | 2016-07-07 |
GB2549228A (en) | 2017-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11983730B2 (en) | Methods and apparatus to correct for deterioration of a demographic model to associate demographic information with media impression information | |
US10963920B2 (en) | Web page viewership prediction | |
US20210304229A1 (en) | Methods and apparatus to generate electronic mobile measurement census data | |
US10325289B2 (en) | User similarity groups for on-line marketing | |
US10163130B2 (en) | Methods and apparatus for identifying a cookie-less user | |
US9858588B2 (en) | Methods and systems for displaying attribution credit data based on parameters | |
EP2909733B1 (en) | Trackable sharing of on-line video content | |
US20160117736A1 (en) | Methods and apparatus for identifying unique users for on-line advertising | |
US20140122697A1 (en) | Providing content to linked devices associated with a user | |
US20180315060A1 (en) | Methods and apparatus to estimate media impression frequency distributions | |
US9923979B2 (en) | Systems and methods of determining a geographic location based conversion | |
US20150220970A1 (en) | Representative user journeys for content sessions | |
US20170228768A1 (en) | Attributing conversions relating to content items | |
US9900227B2 (en) | Analyzing changes in web analytics metrics | |
US10162864B2 (en) | Reader application system utilizing article scoring and clustering | |
US20150006279A1 (en) | Systems and methods of generating a valid location cluster based on a location of a commercial entity | |
US20150242885A1 (en) | Invitational content attribution | |
US20150278157A1 (en) | Generating anonymous data from web data | |
CN108781223B (en) | System, method, and medium for providing third-party content | |
US11627201B2 (en) | Optimizing network utilization | |
US10504135B2 (en) | Technologies for inserting dynamic content into podcast episodes | |
US11356517B2 (en) | Optimizing network utilization | |
KR20160148015A (en) | Systems and methods of generating notifications | |
US10165075B1 (en) | Retrieving shared content by proxy | |
US10872353B2 (en) | Providing content to store visitors without requiring proactive information sharing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ADVANCE MAGAZINE PUBLISHERS INC., NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MARLIN, JASON;AYLWARD, LEE;FISHER, KENNETH R., III;SIGNING DATES FROM 20150119 TO 20150209;REEL/FRAME:034961/0212 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |