WO2013138603A1 - Fourniture d'informations avant le téléchargement de ressources - Google Patents

Fourniture d'informations avant le téléchargement de ressources Download PDF

Info

Publication number
WO2013138603A1
WO2013138603A1 PCT/US2013/031426 US2013031426W WO2013138603A1 WO 2013138603 A1 WO2013138603 A1 WO 2013138603A1 US 2013031426 W US2013031426 W US 2013031426W WO 2013138603 A1 WO2013138603 A1 WO 2013138603A1
Authority
WO
WIPO (PCT)
Prior art keywords
resource
data
user
size
price
Prior art date
Application number
PCT/US2013/031426
Other languages
English (en)
Inventor
Paul Lee
Gregory M. HECHT
Peter KRUSKALL
Original Assignee
Google Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US13/422,164 external-priority patent/US20130246413A1/en
Priority claimed from US13/559,925 external-priority patent/US8880543B2/en
Priority claimed from US13/671,103 external-priority patent/US8862564B2/en
Priority claimed from US13/675,103 external-priority patent/US20130246213A1/en
Application filed by Google Inc. filed Critical Google Inc.
Priority to JP2015500616A priority Critical patent/JP6140802B2/ja
Priority to CA2866887A priority patent/CA2866887A1/fr
Priority to AU2013232015A priority patent/AU2013232015A1/en
Priority to KR1020147028954A priority patent/KR102040781B1/ko
Publication of WO2013138603A1 publication Critical patent/WO2013138603A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0222During e-commerce, i.e. online transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0253During e-commerce, i.e. online transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions

Definitions

  • This specification relates to information presentation.
  • the Internet provides access to a wide variety of resources. For example, video and/or audio files, as well as web pages for particular subjects or particular news articles, are accessible over the Internet.
  • Some users employ mobile devices to access information on the Internet.
  • users may be sensitive to costs associated with access to Internet resources.
  • a metered network e.g., a mobile network having data rate charges or restrictions
  • one innovative aspect of the subject matter described in this specification can be implemented in methods that include a method for providing the search results.
  • the method comprises receiving a query from a client device.
  • the method further comprises responsive to the query, identifying, using one or more processors, search results including one or more resources.
  • the method further comprises for at least one resource of search results, determining, using the one or more processors, a size of a data transfer required to access the one resource.
  • the method further comprises providing the search results to the client device including providing a label associated with the one resource indicative of the size.
  • the label can include an estimate of the size based at least in part on historical data associated with the one resource.
  • the label can include an estimate of the size based at least in part on prior loads of the one resource.
  • the label can include an estimated size based at least in part on a retrieval of the one resource by a proxy prior to transmission of data associated with the one resource responsive to the query.
  • the label can include a size estimate and a descriptor of a relative size of the transfer.
  • the descriptor can include a slider ranging from small to large associated with the estimated size.
  • the descriptor can reflect a particular category within a range of possible categories that are attributable based on the size estimate.
  • the particular category can be a size selected from the group comprising small, medium, or large sized data.
  • the descriptor can include a description of a category of resource.
  • the category of resource can be a category selected from the group comprising video, images, audio, flash content, applications including embedded applications, rich content, fonts or scripts.
  • the label can be a price associated with the data transfer.
  • the price can be an amount that will be charged by a carrier for transferring the size of data in accordance with a data plan associated with a user of the client device.
  • the price can include an indication of a current price that will be charged.
  • the price can include an indication of a price that will be charged to load the data at a time in the future.
  • the label can include plan usage data.
  • the plan usage data can indicate an amount of data loaded in a given time period.
  • the plan usage data can indicate an amount of remaining data that can be loaded in a given time period after loading the one resource.
  • the method can further comprise determining a price charged by a delivery system associated with the client device that is used to present the one resource based at least in part on the size.
  • Providing the search results to the client device can include providing the search results and label to a mobile device.
  • Providing the search results to the client device can include providing the search results and the label to a tablet computing device.
  • the label can be visible when the search results are provided.
  • the label can be visible upon user selection of a hover control for the one resource.
  • the label can be visible upon user selection of a link associated with the one resource, the label indicative of a size of a link resource associated with the link.
  • the query can be a voice request.
  • a method for providing labels including estimates of data transfer sizes comprises receiving, through a browser, a request for loading a resource.
  • the method further comprises, prior to loading the resource, determining, using one or more processors, a size of a data transfer to load the resource.
  • the method further comprises presenting information, including a label, related to the size to the user prior to loading the resource.
  • the label can include an estimate of the size based at least in part on historical data associated with the resource.
  • the label can include an estimate of the size based at least in part on prior loads of the resource.
  • the label can include an estimated size based at least IN part on a retrieval of the resource by a proxy prior to transmission of data associated with the resource responsive to the request.
  • the label can include a size estimate and a descriptor of a relative size of the transfer.
  • the descriptor can include a slider ranging from small to large associated with the estimated size.
  • the descriptor can reflect a particular category within a range of possible categories that are attributable based on the size estimate.
  • the particular category can be a size selected from the group comprising small, medium, or large sized data.
  • the descriptor can include a description of a category of resource.
  • the category of resource can be a category selected from the group comprising video, images, audio, flash content, applications including embedded applications, rich content, fonts or scripts.
  • the label can be a price associated with the data transfer.
  • the price can be an amount that will be charged by a carrier for transferring the size of data in accordance with a data plan associated with a user of the client device.
  • the price can include an indication of a current price that will be charged.
  • the price can include an indication of a price that will be charged to load the data at a time in the future.
  • the label can include plan usage data.
  • the plan usage data can indicate an amount of data loaded in a given time period.
  • the plan usage data can indicate an amount of remaining data that can be loaded in a given time period after loading the resource.
  • the method can further comprise determining a price charged by a delivery system associated with the client device that is used to present the resource based at least in part on the size.
  • Providing the search results to the client device can include providing the search results and label to a mobile device.
  • Providing the search results to the client device can include providing the search results and the label to a tablet computing device.
  • the request can be a voice request.
  • the method comprises receiving, at a proxy, a request for a resource from a client device.
  • the method further comprises determining, using one or more processors, a size of a data transfer required to complete the request.
  • the method further comprises providing, to the client device, an estimate of a size of a data transfer required to complete the request prior to exposing the client device to data charges resulting from transfer of data associated with the request.
  • Providing the estimate can include determining a size based at least in part on historical data.
  • Providing the estimate can include determining a size based at least in part on data received from the resource when the proxy requests a load of the resource.
  • Providing the estimate occurs prior to delivery of data associated with the resource to the client device.
  • the method can further comprise passing the request from the proxy to the resource, receiving data from the resource responsive to the request, determining a size associated with one or more resources referenced in the received data, and providing size data associated with the one or more referenced resources along with the received data to the client device.
  • the method can further comprise passing the request from the proxy to the resource, receiving data from the resource responsive to the request and determining a size of the data transfer from the resource based on the received data.
  • a computer-implemented method for aggregating data rates further comprises identifying a plurality of mobile devices, each mobile device configured for communication with a network for downloading resources from the network, the network associated with a carrier.
  • the method further comprises creating a data bundle, the data bundle representing data download capacity that is to be shared among the plurality of mobile devices for data downloads from the network.
  • the method further comprises negotiating a price for the data bundle with the carrier.
  • the method further comprises receiving requests for downloading data from the network from ones of the plurality of mobile devices.
  • the method further comprises presenting data, responsive to the received requests, to a respective user of a mobile device that has provided a request, the data including rate information for initiating a respective download associated with the request, the rate information being based at least in part on the negotiated price and being irrespective of airtime or data charges for the download that would ordinarily be charged by the carrier.
  • the method further comprises after successful receipt of the resource at the user's mobile device, debiting an account associated with the user using a group price based on the rate information.
  • the method can further comprise estimating the capacity for the plurality of mobile devices over a period of time, and negotiating can further include negotiating a price for all data downloads associated with the plurality of devices that are completed during the time period up to the capacity.
  • the requests can be requests for downloading a resource from the network.
  • the requests can be for downloading a webpage from the network.
  • the rate information can include a price.
  • the group price can be a fixed price to load a unit of data.
  • the unit of data can be selected from a group comprising a single webpage, an email message, an email header, a text message, an audio stream, a video stream, or at least a portion of a game.
  • the fixed price can be based on one or more content types associated with the single webpage selected from a group comprising web pages, images or video.
  • the fixed price can be associated with any page for a given domain to which the single webpage is associated.
  • the group price can be based on an amount of time required to watch a requested video.
  • the group price can be based on a number of web pages to be provided in response to the request.
  • the group price can be based on a popularity of content associated with the request.
  • the group price can be based on a time of day.
  • the mobile device can be a mobile telephone, a smart phone or a tablet computer.
  • the method can further comprise receiving a confirmation from the respective user acknowledging the rate information and initiating the download responsive to the request.
  • the method can further comprise determining a cost for the data download responsive to the request, aggregating costs for downloads over the time period, and determining a correction factor to be applied to either the group price or the negotiated price for a subsequent time period based at least in part on the aggregate cost.
  • the group price can be less than the charges that would have been incurred from the carrier for downloading the requested resource.
  • the method comprises receiving a query from a client device.
  • the method further comprises responsive to the query, identifying, using one or more processors, search results including one or more resources.
  • the method further comprises, for at least one resource of the search results, determining, using the one or more processors, a size of a data transfer required to access the one resource.
  • the method further comprises providing the search results to the client device including providing a label associated with the one resource indicative of a rate-sensitive cost to download the item including determining a true cost to download the item from at least one carrier, determining a price sensitivity of the user or a group of users to which the user belongs based at least in part on an evaluation of historical information for downloads and costs incurred for each, and calculating the rate-sensitive cost based at least in part on the true cost and the determined price sensitivity.
  • the providing can further include providing the rate-sensitive cost to a carrier and receiving an indication from the carrier that the rate-sensitive cost is acceptable for a given transmission.
  • Providing the rate-sensitive cost to the carrier can include providing one or more rate-sensitive costs and an indicator for each cost of a likelihood that the user will load the resource at the given rate-sensitive cost.
  • Receiving an indication from the carrier can include receiving an indication of one of the one or more rate-sensitive costs that are acceptable to the carrier for the transmission.
  • Providing the rate-sensitive cost can further include providing the rate-sensitive cost to plural carriers and receiving an agreement from one or more carriers to transmit the resource at the rate-sensitive cost.
  • Providing the search results can include selecting one of the one or more carriers to transmit the resource.
  • the selecting can include conducting an auction.
  • Determining a true cost can include determining a true cost from a plurality of carriers. Determining a true cost can include soliciting bids from carriers for
  • Determining a true cost can include receiving pricing information from a carrier associated with a time period for downloading the resource, wherein the pricing information reflects any discounts a given carrier is offering during the time period to encourage more data transfers.
  • the method can further comprise determining a rate sensitivity that includes determining a price curve for a given user or group of users including price point information that reflects when a user is more likely than not to agree to downloading based at least in part on the historical information, and using the price point to calculate the rate-sensitive cost. Determining rate sensitivity can be for a group, and the determined rate sensitivity can be applied to each member of the group.
  • the label can include an estimate of the size based at least in part on historical data associated with the one resource.
  • the label can include an estimate of the size based at least in part on prior loads of the one resource.
  • the label can include an estimated size based at least in part on a retrieval of the one resource by a proxy prior to transmission of data associated with the one resource responsive to the request.
  • the label can include a size estimate and a descriptor of a relative size of the transfer.
  • the label can be a price associated with the data transfer.
  • the price can be an amount that will be charged by a carrier for transferring the size of data in accordance with a data plan associated with a user of the client device.
  • the price can include an indication of a current price that will be charged.
  • the price can include an indication of a price that will be charged to load the data at a time in the future.
  • the method comprises receiving, through a browser, a request for loading a resource.
  • the method further comprises prior to loading the resource, determining, using one or more processors, a size of a data transfer to load the resource.
  • the method further comprises presenting information, including a label, related to the size to the user prior to loading the resource, wherein the label includes a rate- sensitive price for loading the resource from a carrier.
  • the presented information is based, at least in part, on a determination of a true cost to download the item from at least one carrier, a determination of a price sensitivity of the user or a group of users to which the user belongs including evaluating historical information for downloads and costs incurred for each, and a calculation of the rate-sensitive cost based at least in part on the true cost and the determined price sensitivity.
  • the method comprises receiving, at a proxy, a request for a resource from a client device.
  • the method further comprises determining, using one or more processors, a size of a data transfer required to complete the request.
  • the method further comprises providing, to the client device, an estimate of a size of a data transfer required to complete the request and a rate-sensitive cost for transferring the data prior to exposing the client device to data charges resulting from transfer of data associated with the request.
  • the estimate is based, at least in part, on a determination of a true cost to download the item from at least one carrier, a determination of a price sensitivity of the user or a group of users to which the user belongs including evaluating historical information for downloads and costs incurred for each, and a calculation of the rate-sensitive cost based at least in part on the true cost and the determined price sensitivity.
  • Providing the estimate can include determining a size based at least in part on data received from the resource when the proxy requests a load of the resource. Providing the estimate can occur prior to delivery of data associated with the resource to the client device.
  • the method can further comprise passing the request from the proxy to the resource, receiving data from the resource responsive to the request, determining a size associated with one or more resources referenced in the received data, and providing size data associated with the one or more referenced resources along with the received data to the client device.
  • the method can further comprise passing the request from the proxy to the resource, receiving data from the resource responsive to the request, and determining a size of the data transfer from the resource based on the received data.
  • one innovative aspect of the subject matter described in this specification can be implemented in methods that include a computer-implemented method for providing content.
  • the method comprises receiving, by a processor, a request for data from an application on a metered data network.
  • the method further comprises prior to transferring the data, determining, using one or more processors, a size of an associated data transfer to satisfy the request.
  • the method further comprises presenting information, including a label, related to the size to the user prior to transferring the data, wherein the presented information includes a rate-sensitive cost for the data transfer.
  • the presented information is based, at least in part, on a determination of a true cost to download the item from at least one carrier, a determination of a price sensitivity of the user or a group of users to which the user belongs including evaluating historical information for downloads and costs incurred for each, and a calculation of the rate- sensitive cost based at least in part on the true cost and the determined price sensitivity.
  • the application can be an email application that displays a subject of a message, wherein the data is the message, and wherein the label includes an indication of the rate-sensitive cost to download a corresponding full message.
  • the application can be associated with a desktop and includes one or more user interface elements that, when selected, initiate the request.
  • the user interface elements can be presented on a desktop of a mobile device, and wherein the user interface elements initiate a call for data to a resource over the metered data network.
  • the method comprises receiving a request from a mobile device to load a resource.
  • the method further comprises determining a transmission cost for loading the resource over a metered network.
  • the method further comprises identifying one or more sponsored content items for delivery along with the resource, the sponsored content items being included in one or more slots for presentation along with third-party content associated with the resource, each sponsored content item having an associated bid that represents an amount that will be paid by the sponsor for presentation of a given sponsored content item.
  • the method further comprises determining an amount of credit to be awarded toward load costs based at least in part on the bid.
  • the method further comprises providing a label responsive to the request for presentation on the mobile device that indicates a reduced cost to load the resource when a load of a resource is partially or entirely sponsored based at least in part on the amount of credit that is determined.
  • the method can further comprise determining a minimum threshold revenue required to be provided by a sponsor to a publisher in association with a presentation of a given sponsored content item along with the resource, and determining the amount of credit to be awarded toward load costs can be further based on the minimum threshold revenue, including determining when the bid exceeds the minimum threshold revenue.
  • the amount of credit can be used to reduce the transmission cost, and at least a portion of revenue attributable to the bid for a sponsored content item can be provided to offset the transmission cost.
  • the transmission cost can be offset by credits associated with plural different sponsored content items that are to appear in association with the loaded resource.
  • the method can further comprise presenting an attribution in association with the label when a credit reduces a transmission cost for a resource.
  • Determining a true cost can include determining a true cost from a plurality of carriers.
  • the label can include an estimate of the size based at least in part on historical data associated with the one resource.
  • the label can include an estimated size based at least in part on a retrieval of the one resource by a proxy prior to transmission of data associated with the one resource responsive to the request.
  • the label can include a size estimate and a descriptor of a relative size of the transfer.
  • the label can include a price associated with the data transfer.
  • the method comprises receiving a request from a mobile device for a resource.
  • the method further comprises determining a transmission cost to load the resource over a metered network.
  • the method further comprises determining potential sponsors for reducing a cost to an end user to load the resource, where the sponsor is selected from a publisher associated with the resource or an advertiser associated with one or more slots whose content is to be presented along with third-party content associated with the resource.
  • the method further comprises determining a time to load the resource and a time factor for use in adjusting a transmission price based on demand during a period associated with the time.
  • the method further comprises determining an adjusted transmission price based at least in part on the time factor, any potential sponsors and the transmission cost.
  • the method further comprises providing a label responsive to the request for presentation on the mobile device that indicates a reduced cost to load the resource when a load of a resource is partially or entirely sponsored.
  • FIG. 1 In general, another innovative aspect of the subject matter described in this specification can be implemented in computer program products that include a computer program product tangibly embodied in a computer-readable storage device and comprising instructions.
  • the instructions when executed by a processor, cause the processor to: receive a request from a mobile device to load a resource; determine a transmission cost for loading the resource over a metered network; identify one or more sponsored content items for delivery along with the resource, the sponsored content items being included in one or more slots for presentation along with third-party content associated with the resource, each sponsored content item having an associated bid that represents an amount that will be paid by the sponsor for presentation of a given sponsored content item; determine an amount of credit to be awarded toward load costs based at least in part on the bid; and provide a label responsive to the request for presentation on the mobile device that indicates a reduced cost to load the resource when a load of a resource is partially or entirely sponsored based at least in part on the amount of credit that is determined.
  • the system comprises a processor a memory.
  • the memory includes instructions that when executed cause the processor to: receive a request from a mobile device to load a resource; determine a transmission cost for loading the resource over a metered network; identify one or more sponsored content items for delivery along with the resource, the sponsored content items being included in one or more slots for presentation along with third-party content associated with the resource, each sponsored content item having an associated bid that represents an amount that will be paid by the sponsor for presentation of a given sponsored content item; determine an amount of credit to be awarded toward load costs based at least in part on the bid; and provide a label responsive to the request for presentation on the mobile device that indicates a reduced cost to load the resource when a load of a resource is partially or entirely sponsored based at least in part on the amount of credit that is determined.
  • An aggregation system's fixed pricing can be very easy to communicate to users and can facilitate adjustments over time as the market or user pool changes.
  • Historical information related to the size of downloads, timing of such or the like can be analyzed to determine trends that may be used to predict upcoming needs/capacities, and the information can be used to preemptively update prices.
  • Offering download costs to a user in light of the user's sensitivity to price can allow carriers to better use their excess capacity and can allow the user to have a better and more price-transparent experience downloading Internet and/or other resources on mobile devices.
  • Sponsoring loads e.g., downloads
  • Sponsoring loads including providing users with a reduced price for loading resources, can allow sponsors to reach more users, including users who are sensitive to prices charged by carriers to download data. Being provided with labels that identify future times of sponsored loads can allow price-sensitive users to manage transmission costs.
  • sponsoring resources e.g., subsidizing transmission costs of loading web pages, publishers can receive more user traffic on their web pages, and advertisers can serve more impressions of their advertisements to users who visit the web pages.
  • FIG. 1 is a block diagram of an example environment for delivering content.
  • FIG. 2A is a block diagram of an example system for providing a label with a search result that indicates an estimated size of a data transfer of a corresponding resource.
  • FIG. 2B shows an example presentation of a label that is presented after a resource is selected but before the resource is optionally loaded.
  • FIGS. 3A-3E show example devices displaying search results that include transfer size labels of various kinds.
  • FIG. 3F shows an example user settings screen for specifying how transfer size labels are used.
  • FIG. 3G shows an example alert settings screen for setting alerts
  • FIG. 4A is a flowchart of an example process for providing a label with a search result that indicates an estimated size of a data transfer of a corresponding resource.
  • FIG. 4B is a flowchart of an example process for providing a label indicating an estimated transfer size of a resource after it is selected but before it is loaded.
  • FIG. 4C is a flowchart of an example process in which a proxy provides an estimated size for a data transfer of a resource.
  • FIG. 4D is a flowchart of an example process for providing content to a user and debiting the user's account using bundled rates within an aggregation system.
  • FIG. 4E is a flow chart of an example process for presenting rate-sensitive cost information associated with downloading resources included in search results.
  • FIG. 4F is a flow chart of an example process for presenting rate-sensitive cost information associated with downloading a resource in a browser.
  • FIG. 4G is a flow chart of an example process for a proxy to provide rate- sensitive cost information associated with downloading resources.
  • FIG. 4H is a flow chart of an example process for presenting rate-sensitive cost information associated with transferring data in an application.
  • FIG. 41 is a flow chart of an example process for presenting sponsorship information associated with loading resources.
  • FIG. 4J shows an example resource that includes content item slots.
  • FIG. 4K is a flow chart of an example process for providing reduced transmission price information for a resource to be loaded at a later time.
  • FIG. 5A shows an example persistent balance bar included on a web page showing a user's current balance.
  • FIG. 5B shows an example verification dialog that appears when the user selects a link to a web page.
  • FIG. 5C shows an example insufficient balance dialog.
  • FIGS. 5D and 5E show example top-up interfaces that can appear on a destination.
  • FIG. 5F shows an example balance bar on a search results page.
  • FIG. 5G shows an example email application that displays email message entries.
  • FIG. 5H shows an example label presented on a mobile device that identifies a transmission cost for loading a resource at a later time.
  • FIG. 51 shows example displays that include last activity of the user.
  • FIG. 5 J shows a table of example guaranteed rates.
  • FIG. 5K shows an example environment for compressing information before it is provided to a user device.
  • FIG. 6 is a block diagram of an example computer system that can be used to implement the methods, systems and processes described in this disclosure.
  • This document describes methods, processes and systems for providing information, including a label that identifies an estimated size and/or price associated with a data transfer of a resource.
  • a label that identifies an estimated size and/or price associated with a data transfer of a resource.
  • the responsive search results can include size estimate labels.
  • the labels for example, can provide the user with a size estimate and/or a price estimate.
  • the estimates can indicate to the user a relative size or cost associated with a transfer of data if the user selects the search result, thus causing the corresponding resource to be downloaded to the user's phone.
  • Size estimates can be absolute (e.g., an actual numbers of bytes or bits), relative (e.g., "small,” “medium” or “large”), or presented in other ways.
  • Price estimates can be based on the size estimates and may vary depending on the user's phone and/or data plan, the time of day, the location of the user, and other factors. Based on the information presented, the user may decide whether or not to select a particular search result, e.g., if downloading the corresponding resource is worth the estimated price (or is affordable by the user). Users can use the size estimate labels to control costs, e.g., down to the penny (or the user's local currency).
  • the size estimate labels may not be presented with the search results, but the information may be made available to the user automatically or upon user initiation.
  • the user can use a control on the user device to prompt the display of the label information (e.g., the user may hover over the search result, and the corresponding size estimate label can be displayed).
  • the user can select a particular search result, and instead of
  • a size estimate label can be presented to the user.
  • the user can make a choice, based on the displayed information, whether or not to proceed with the download.
  • the information labels can be provided in other situations where data is attempted to be loaded in, for example, a metered data network.
  • the information label can be presented in conjunction with the selection of a resource on a page or with any request for data over the metered data network.
  • an information label can be provided as part of the contents that are displayed to a user, where labels can be provided for each reference to a resource (e.g., a link on a page).
  • a sacheting system can be used, e.g., to remove financial uncertainty for the user.
  • a third party e.g., a content provider
  • the guaranteed rates can be realized by arranging with carriers to establish set rates for transmission to users associated with the carrier, e.g., to effectively bundle rates for large groups of users.
  • This document also describes methods, processes and systems for providing content to a user and debiting the user's account using bundled rates within an aggregation system.
  • information can be provided that includes a label that identifies an estimated size and/or price associated with a data transfer of a resource.
  • an aggregation system can be used, e.g., to remove financial uncertainty for the user.
  • a third party e.g., a content provider
  • the guaranteed rates can be realized by arranging with carriers to establish set rates for transmission to users associated with the carrier, e.g., to effectively bundle rates for large groups of users.
  • users can be split into two or more groups, and experiments can be run to determine the effects of pricing among users of the groups. For example, a control group of users may see none of the special data rate-related user interfaces described herein and will thus pay a carrier's normal data rates. However, users in an experimental group can be presented with experimental bundle prices and can be presented with the special data rate-related user interfaces described herein.
  • a user when a user, for example, clicks a web link and/or loads data in an app (or performs some other data transfer), it may not always be possible to have accurate information about the page's size to determine a corresponding download cost. This can occur because pages can constantly change, and some data on a web page can include data that is loaded asynchronously after the page appears (e.g., using AJAX or other dynamic calls).
  • one or more mechanisms and/or techniques can be used separately, or in combination, to aid in determining the cost, e.g., of a download.
  • a pre-fetch technique can be used. For example, when a user requests a web page, the backend process can instantly start requesting and rendering the web page in the background. Size information associated with the rendered page can then be used to present size and cost information in an interstitial dialog (e.g., the dialog 512 and the cost display 514 described with reference to FIG. 5B). The accuracy of the cost information may depend, for example, on how quickly the data can be loaded and rendered, and whether, for example, any asynchronous content exists.
  • the rendered page for example, can be cached for the next time that a user requests the page, and a size and corresponding pre-computed cost can be available.
  • downloadable/accessible content can be priced by content type.
  • web pages can cost $.05 each, images can cost $.10 each, and videos can cost $.10/minute).
  • additional pricing structures can account for mixtures of different content types being loaded.
  • variations in over- and under-pricing that may result using a fixed cost menu can be corrected, for example, by adjusting prices over time (e.g., based on accumulated pricing metrics). For example, if it is determined that, in aggregate, web pages costing $.15 to download are being priced at $.12, then the under-charging can be corrected by publishing and instituting a price change.
  • domain pricing can be used, e.g., in which a flat rate is charged for any page associated with a particular domain.
  • social network pages may include individual pages that are dynamically built during the user's session (e.g., using AJAX) and for which an accurate page size is not known ahead of time.
  • a base rate per page can be charged that depends, for example, on the specific domain. Over time, the base rates can be adjusted either up or down based, for example, on the actual cost to provide an average page in that domain to the user.
  • Web crawlers can be used in some implementations, e.g., to walk web sites and pre-render them in order to obtain size estimates. Pages can be re-crawled as necessary to obtain new size estimates for pages that may have changed.
  • feedback loops can be used for one or more of the techniques described above. For example, as large amounts of data is received that is associated with the actual costs of providing content, costs can be modified on the fly as necessary to reflect more accurate pricing. In some implementations, in order to provide price transparency, for example, pricing changes can occur at fixed times and/or after being pre-published so that the user is always aware of current and upcoming prices.
  • flat rates per page load can be used. For example, the actual size of the content can be ignored, and the price can be determined based on numbers of pages loaded. In some implementations, prices charged can be reduced in accordance with certain criteria, such as based at least in part on access time (e.g., number of seconds that the user is on a web page or watching a video).
  • per byte pricing can be used. For example, in order to educate users on what a byte is and what it costs, examples can be provided (e.g., "most web pages are 1000-2000 bytes, thus cost $.15 to $.30"). In some
  • the user's online access history can be used to provide estimates to the user (e.g., "your text messages historically are 100 bytes each, on average, costing $.02 each").
  • Bundling users into groups can occur in different ways. In some
  • all users can be bundled into a single group, resulting in some users paying a little less than the actual cost for a given data transfer and some users paying a little more.
  • grouping can include user price groups organized by region, demographics or other characteristics, e.g., to correlate groups of users based on the type of content they view or other reasons.
  • information for users in the same price group who may load the same pages can be used to more accurately predict the cost and provide server-side caching and pre-rendering to increase speed and lower cost.
  • price bundles can be based on content type. For example, web pages that result in network traffic with high-bandwidth content (e.g., streaming videos) may have a higher price to account for associated operational network overhead. As a result, users who watch a lot of content could see their costs increase.
  • pricing can dynamically change based on real-time combinations of various factors.
  • one factor can be the popularity of the content.
  • static content for example, a very good idea of the content's true size can be known so that the content can be priced precisely.
  • popular content can be pre-cached, e.g., to lower latency and avoid network traffic.
  • Knowledge of popular content can be used, for example, to lower the price of cached content (e.g., to pass savings to users), or to raise the price (e.g., to increase revenues and profits).
  • Another factor used in pricing bundles can be the time-of-day. For example, prices can be raised during high-demand time periods and lowered during off-peak usage.
  • This document describes methods, processes and systems for dealing with a user's price sensitivity regarding phone costs and internet access time including, for example, producing a label associated with a resource that indicates a rate-sensitive cost to download the item.
  • the rate sensitive cost can be determined upon first determining a true cost to download the item from at least one carrier, and then determining a price sensitivity of the user including evaluating historical information for downloads and costs incurred for each. Calculating the rate-sensitive cost can be based, at least in part, on the true cost and the determined price sensitivity.
  • the cost can then be displayed to the user, who can decide whether or not to proceed with downloading the resource.
  • labels can be presented coincident with the display of search results responsive to a search query.
  • Each label e.g., can include a reduced cost for transmitting (e.g., downloading) the resource associated with the search result.
  • the reduced cost presented to the user for example, can appear before the user initiates the load, or may be presented after the load is initiated, e.g., allowing the user to continue (if the price is acceptable) or cancel the operation (if the price is too high).
  • the reduced cost can be based, for example, on sponsorship by a publisher of a resource (e.g., a web page) and/or a content sponsor (e.g., an advertiser associated with an advertisement on the web page).
  • a publisher of a resource e.g., a web page
  • a content sponsor e.g., an advertiser associated with an advertisement on the web page.
  • multiple sponsors can affect the price charged to a user for transmitting a resource.
  • reduced transmission costs can be computed for future time periods, e.g., when sponsors have decided to sponsor loads, such as during non-peak activity times.
  • Some implementations can include providing information to the user as to the amount of the sponsorship and/or the identity of the sponsor(s), e.g., so users can learn the source(s) of the sponsorship.
  • users can be presented with labels that identify the cost for forwarding information (e.g., forwarding email or other information to another user) and/or sending information (e.g., to an address associated with an online entity).
  • sponsors such as publishers and content sponsors (e.g., advertisers) can agree to pick up part or all of the cost for such transmissions.
  • a spot market opportunity can be supported. For example, if a carrier's traffic is underutilized, estimates for traffic to be transferred over the network associated with the carrier can be lowered automatically, e.g., so as to encourage data transfers in the network.
  • estimated sizes and prices mentioned herein are described using examples of data transfers in the form of downloads of resources, other data transfers are also within the scope of this disclosure.
  • the same or different sizes and prices can be associated with re-publishing content, such as if the user decides to share content with other users.
  • the user can be presented with a label associated with re-publishing the content and can make the decision to re-publish or not based on the estimated price.
  • third-party sponsors can sponsor organic content page downloads that are free to the user, e.g., removing any financial concerns that the user may have about being able to afford the airtime or bandwidth costs of accessing the content over a metered network. For example, such organic content pages that are free for downloading by the user can be marked with a zero-cost label and/or highlighted in some other way.
  • the third-party sponsors can target specific countries, user groups and/or content types. For example, a private foundation may be interested in sponsoring public health content to certain groups of people in Africa or other regions.
  • FIG. 1 is a block diagram of an example environment 100 for delivering content.
  • the example environment 100 includes a content management system 110 for selecting and providing content in response to requests for content.
  • the example environment 100 includes a network 102, such as a local area network (LAN), a wide area network (WAN), the Internet, or a combination thereof.
  • the network 102 connects websites 104, user devices 106, content sponsors 108 (e.g., advertisers), content publishers 109, and the content management system 110.
  • the example environment 100 may include many thousands of websites 104, user devices 106, content sponsors 108 and content publishers 109.
  • a website 104 includes one or more resources 105 associated with a domain name and hosted by one or more servers.
  • An example website is a collection of web pages formatted in hypertext markup language (HTML) that can contain text, images, multimedia content, and programming elements, such as scripts.
  • HTML hypertext markup language
  • Each website 104 can be maintained by a content publisher, which is an entity that controls, manages and/or owns the website 104.
  • a resource 105 can be any data that can be provided over the network 102.
  • a resource 105 can be identified by a resource address that is associated with the resource 105.
  • Resources include HTML pages, word processing documents, portable document format (PDF) documents, images, video, and news feed sources, to name only a few.
  • the resources can include content, such as words, phrases, images, video and sounds, that may include embedded information (such as meta-information hyperlinks) and/or embedded instructions (such as JavaScript scripts).
  • a user device 106 is an electronic device that is under control of a user and is capable of requesting and receiving resources over the network 102.
  • Example user devices 106 include personal computers, mobile communication devices (e.g., smartphones and tablet devices), set-top boxes, television sets, and other devices that can send and receive data over the network 102.
  • a user device 106 typically includes one or more user applications, such as a web browser, to facilitate the sending and receiving of data over the network 102.
  • a user device 106 can request resources 105 from a website 104.
  • data representing the resource 105 can be provided to the user device 106 for presentation by the user device 106.
  • the data representing the resource 105 can also include data specifying a portion of the resource or a portion of a user display, such as a presentation location of a pop-up window or a slot of a third-party content site or web page, in which content can be presented.
  • These specified portions of the resource or user display are referred to as slots (e.g., ad slots).
  • the environment 100 can include a search system 112 that identifies the resources by crawling and indexing the resources provided by the content publishers on the websites 104. Data about the resources can be indexed based on the resource to which the data corresponds. The indexed and, optionally, cached copies of the resources can be stored in an indexed cache 1 14.
  • User devices 106 can submit search queries 1 16 to the search system 1 12 over the network 102.
  • the search system 1 12 can, for example, access the indexed cache 114 to identify resources that are relevant to the search query 1 16.
  • the search system 1 12 identifies the resources in the form of search results 118 and returns the search results 1 18 to the user devices 106 in search results pages.
  • a search result 1 18 is data generated by the search system 1 12 that identifies a resource that is responsive to a particular search query, and includes a link to the resource.
  • the content management system 1 10 can generate search results 1 18 using information (e.g., identified resources) received from the search system 112.
  • An example search result 1 18 can include a web page title, a snippet of text or a portion of an image extracted from the web page, and the URL of the web page.
  • the search results page can include, for example, additional information in the form of one or more labels related to a size and/or price associated with accessing a noted resource.
  • Search results pages can also include one or more slots in which other content items (e.g., ads) can be presented.
  • the environment 100 can include plural data stores.
  • a data store of historical data 123 can store, for each resource 105 that has been downloaded within the environment 100, the size of the resource (e.g., in bytes or bits).
  • the size information can be stored each time a user selects a search result 118, thereby initiating the download of the associated resource 105.
  • resources 105 can change over time in size and content, some implementations of the historical data 123 can store the size of the most recently-loaded version of the resource 105, an average size of the last few downloads (e.g., the last 2-10), or some other representative size.
  • a data store of data plans 121 can include information about each user's rate information, which can include, for example, a price per N bytes of downloaded resources and/or air time.
  • the data plans 121 can be assembled from information provided through partnerships or arrangements with various carriers or any other service providers that provide access to resources 105 by users.
  • the environment 100 can include a proxy system 130 that operates within a metered data network 140 to provide (and track the delivery of) content according to agreed-upon rates.
  • the proxy system 130 can include plural engines.
  • a size engine 122 can determine an estimated size for a particular resource, e.g., by using past download size information for the resource in the historical data 123 or by loading the resource in real time.
  • a price engine 124 can use the estimated size to determine an estimated price associated with the download.
  • the estimated price can depend on multiple factors including, for example, the size of the resource, the data transfer rate associated with a user downloading the resource, the time of day (e.g., peak vs. non-peak rates), and/or other factors.
  • the price that is determined for each user can be based on information for that user in the data plans 121.
  • a label engine 126 can generate labels using size information from the size engine 122 and price information from the price engine 124. In some implementations, if no size/price information is available, then the label engine 126 can generate a label that indicates uncertainty about the size and price.
  • a message engine 128 can generate any needed messages that can, for example, be provided with price estimate labels that the user sees.
  • the price engine 124 can determine true costs that a user's carrier would incur to download specific resources.
  • the costs can depend on multiple factors including, for example, the size of the resource, the data transfer rate associated with a user downloading the resource, the time of day (e.g., peak vs. non-peak rates), and/or other factors.
  • the price engine 124 can also determine reduced costs for transmitting specific resources.
  • the reduced costs can be based, for example, on sponsors who have agreed to sponsor part or all of the cost for a user to load a resource.
  • Example sponsors include publishers and content sponsors (e.g., advertisers).
  • the proxy system 130 can use information from a delivery system 150 to provide labels.
  • Example delivery systems 150 include phone, Internet and broadband providers and/or carriers.
  • the price engine 124 can match an estimated size (e.g., determined by the size engine 122) with information from the user's data plan 121 to determine an estimated price of the download.
  • the label for a 59 kb resource e.g., estimated using historical information
  • can include corresponding and/or proportional size and price estimates e.g., "59 kb. (about 1 GH airtime)").
  • the users may be provided with an opportunity to opt in/out of programs or features that may collect or use the personal information (e.g., information about a user's account).
  • certain data may be anonymized in one or more ways before it is stored or used, so that personally identifiable information is removed.
  • a user's identity may be anonymized so that the no personally identifiable information can be determined for the user, or a user's geographic location may be generalized where location information is obtained (such as to a city, ZIP code, or state level), so that a particular location of a user cannot be determined.
  • FIG. 2A is a block diagram of an example system 200 for providing a label with a search result that indicates an estimated size of a data transfer of a corresponding resource.
  • labels 204a and 204b can provide size information 206 for the data transfer of each resource associated with search results 1 18a and 1 18b, respectively.
  • the size information 206 can include, for example, an estimated price (e.g., in the user's local currency) of a data download or access, an estimated size (e.g., in bits or bytes) of the corresponding resource, or some combination of price- and size-related information.
  • the search results 118a and 1 18b for example, can be provided to the user device 106 by the content management system 110 in response to the query 1 16, as described above.
  • the estimate of the size and/or price can include determining a size based at least in part on historical data 123. For example, if the resource associated with the search result 1 18a has in the past averaged 58 Mbytes of data, then the size engine 122 can use this information in estimating a size for any subsequent download. In some implementations, the price engine 124 can use the estimated size to determine an estimated price associated with the download. The label engine 126 can use either or both of the size and price estimates to generate the labels 204a and 204b.
  • the proxy system 130 can use information from the delivery system 150 to provide labels.
  • the price engine 124 can match an estimated size (e.g., determined by the size engine 122) with information from the user's data plan 121 to determine an estimated price of the download.
  • labels 204a and 204b can provide size information 206 for the data transfer of each resource associated with search results 1 18a and 1 18b, respectively.
  • the size information 206 can include, for example, an estimated price (e.g., in local currency) of a data download or access, an estimated size (e.g., in bits or bytes) of the corresponding resource, or some combination of price- and size-related information.
  • the search results 118a and 118b for example, can be provided to the user device 106 by the content management system 110 in response to the query 116, as described above.
  • the message engine 128 can generate messages that can be provided with the size information 206 provided to the user. For example, if the user's data plan and current usage indicate that the user is approaching (or has exceeded) a threshold, then the message engine 128 can generate an informational message that is also displayable on the user device 106. In some implementations, messages can be displayed in a search results area or can otherwise be available (e.g., as an additional alert icon that is displayed with the size information and that, when hovered over or selected, displays a message to the user). In some implementations, messages displayed to the user can identify the user's current charges and/or remaining data transfer capacity for a current time period.
  • FIG. 2B shows an example presentation of a label 204c that is presented after a resource is selected but before the resource is optionally loaded.
  • search results 1 18c and 1 18d when initially displayed on the user device 106, may not include estimated size information.
  • the size information e.g., the label 204c
  • the size information is presented after the user elects to load the resource (e.g., by clicking on or otherwise selecting the search result 1 18).
  • a warning screen or prompt can be presented to the user in response to selection of a resource which includes the size/price information. Additional selection or default action/inaction may be required in order to initiate the load of the resource.
  • the size information is presented if the user uses a control, such as a control that is activated when a cursor hovers over the search result 1 18c.
  • a control such as a control that is activated when a cursor hovers over the search result 1 18c.
  • Other controls are possible.
  • the size information can be presented, by including the label 204c in a popup 208.
  • Search result 1 18d shows an example search result for which the user has not yet selected the resource.
  • FIGS. 3A-3E show example devices 106a-106e displaying search results 304 that include transfer size labels of various kinds. For example, referring to FIG.
  • search results 304a-304c include labels 308a- 308c corresponding to increasing data transfer sizes (e.g., 59, 172 and 1435 kb).
  • the labels 308a-308c include size components 310a-310c and price components 312a-312c, respectively.
  • the price components 312a-312 in this example indicate an estimated price associated with the corresponding data transfer of the associated resource that the user can initiate (e.g., if the user believes the data transfer is worth the cost).
  • prices associated with downloading data can be displayed in a local currency.
  • a local currency For example, if the user is currently located in Ghana (e.g., as determined from global positioning system (GPS) capabilities of the user device), then the price component 312a can indicate an estimated price of "about 1 GHjzi airtime" (e.g., expressed in Ghana Cedi).
  • the currency or currencies in which estimated prices are displayed to the user can be a preferred currency of the user, the user's currency-of-record associated with a phone or data plan, or some user-configurable one or more currencies.
  • Price estimates associated with the other search results 304b and 304c can be greater, e.g., "about 3 GHjzi airtime” for 172 kilobytes of data and "about 27 GHjzi airtime” for 1435 kilobytes of data.
  • the information provided in price components 312a- 312c is slightly different than the price components described with reference to FIG. 3 A.
  • absolute price values e.g. 1, 3 and 27 GH of airtime
  • general descriptions or categories are used.
  • the price components 312a- 312c can indicate that the expected prices associated the downloading the resources are categorized as "low,” “medium” or "high cost to download,” respectively.
  • the way in which the size components 310a-310c and the price components 312a- 312c are presented can change (e.g., by using color- coding or other techniques) based on the relative size and/or price.
  • the size component 310a and the price component 312a for the smaller resources can be displayed in blue or green (e.g., indicating a smaller price), and increasingly hotter colors (e.g., shades of yellow and red) can be used to display size components and price components of increasingly larger resources.
  • Color-coding such as described in this example can be used with other size components and price components described herein. Sizing or other means of emphasis of the information can also be used to reflect relative size/cost of the transfers.
  • the information provided in price components 312a- 312c is slightly different than the price components described with reference to FIGS. 3A and 3B.
  • the price components 312a-312c in this example include bar graphics, where the length of the darkened area of the bar can indicate a relative expected size/price, e.g., substantially proportional to the size of the bar.
  • color-coding can be used, e.g., by using cool colors (e.g., blues and greens) for the bars associated with smaller expected prices, and red for the bars associated with larger expected prices.
  • the bar graphic can include label markings "small” and "large” to provide a measure of scale.
  • price components 312a-312c include a download icon 314. Other icons can be used.
  • the price components 312a-312c in this example omit the bar graphics shown in FIG. 3C but still include general categories of small, medium and large.
  • price components 312a-312c include coin symbols, where the number of coin symbols varies and is substantially proportional to estimated sizes/prices of the corresponding downloads.
  • the price components 312a associated with 59 kb includes one coin symbol
  • the price components 312b and 312c include two and four coin symbols, respectively.
  • Other symbols, icons or graphics can be used.
  • the coin symbols can include abbreviations or other indicators of the user's local currently.
  • the actual estimated prices can also be shown.
  • partial or fractional coin symbols can be used, e.g. to indicate fractions of GHjzi of airtime.
  • the number of coin symbols can correspond to a geometric progression of prices, e.g., with one coin representing one GH , two coins representing N GH (where N>2), three coins representing N*N GH , and so on.
  • hovering over the coin symbols can cause the actual price to be displayed.
  • FIGS. 3A-3E show example labels that are displayed within search results
  • the same labels or different labels can be provided when a resource is selected or otherwise presented.
  • any of the labels or different labels can be presented when the user selects the search result or any presented resource, providing the user with an option to complete the data transfer after being presented with the associated size/price information.
  • FIG. 3F shows an example user settings screen 330 for specifying how transfer size labels are used.
  • the user settings screen 330 can appear upon user selection of an option available on user device 106f, or at initial system start-up or initialization of a device.
  • the user settings screen 330 can include an explanation 332 that describes how the transfer size labels work.
  • the explanation 332 can describe how the settings, based on user preferences, may affect whether and how labels such as the labels 308a-308c are to be displayed with search results or other presentations of resources or data transfer opportunities, as well as whether popups or other controls such as the popup 208 are used.
  • the user settings screen 330 can include a show settings area 334, e.g., that includes check boxes, radio buttons or other controls for specifying when transfer size/price labels should appear.
  • a "Show transfer sizes with search results" option 336a if selected, can enable the display of transfer size labels, such as the labels 308a-308c described above with reference to FIG. 3A-3E.
  • a "Do not show transfer sizes” option 336b if selected, can disable the display of all transfer size labels.
  • Other user-selectable options can also exist.
  • the user settings screen 330 can include a search results filter area 338, e.g., that includes check boxes, radio buttons or other controls for specifying how search results are to be filtered based on the transfer size of the corresponding resources.
  • a "Show all web pages" option 340a can allow all search results to appear in the search results (e.g., search results 304) that are displayed in response to a query (e.g., the query 306).
  • a user may select this setting, for example, to display all search results regardless of the estimated price of a data download if the user were to click on or otherwise select the search result.
  • an "Only show small and medium pages" option 340b can allow the user to limit the search results to the less expensive estimated price related resources (e.g., preventing high-price pages).
  • an "Only show small pages” option 340c can allow the user to limit search results that are shown to the least expensive category of expected prices.
  • additional controls can be provided by which a user can specify an absolute monetary amount as the threshold amount, e.g., to prevent the display of search results for which downloading the resource would exceed that threshold amount. For example, a cost-conscious user in Ghana may set the threshold at 3 GHjzi to limit search results displayed to those having an estimated price of "about 3 GHjzi airtime" or less.
  • informational controls such as a control 342, if selected, can provide information to the user as to how the user settings are set and how they operate.
  • the user settings screen 330 can include additional controls.
  • a save control 344 can be selected by the user to save any settings and/or inputs made on the user settings screen 330.
  • a "Restore Default Settings" control 346 can be used to reset the checkboxes and other settings to a default value, e.g., that accompany the user device 106f upon initial receipt by the user.
  • a "Select Display Currency" control 348 can be used to specify (e.g., using a list or a pop-up) the one or more currencies in which the user wishes to have labels 308a-308c displayed (e.g., in a local currency and/or currencies designated by the user).
  • FIG. 3G shows an example alert settings screen 350 for setting alerts corresponding to page-load cost amounts.
  • the user can use the alert settings screen 350 to identify a threshold cost for which the system will notify the user prior to loading a page costing more than the threshold cost. In this way, the user can control and track costs of loading more expensive pages.
  • the alert settings screen 350 can include an introductory description 352 that explains how the interface works and what happens when expensive pages are about to be loaded.
  • the user can use a threshold cost control 354 for setting the threshold cost for receiving notifications, e.g., including controls allowing text entry of the threshold cost, controls for incrementing/decrementing the threshold cost, and/or other types of controls.
  • Action controls 356 can provide the user with the ability to reset a default threshold cost, confirm the current settings, cancel changes to the current settings, and/or perform other actions.
  • Additional controls 358 can include links, for example, that allow the user can use to add currency amounts to the user's account, view privacy information associated with using the system, and call or interface with customer support or other help functions.
  • FIG. 4A is a flowchart of an example process 400 for providing a label with a search result that indicates an estimated size of a data transfer of a corresponding resource.
  • the process 400 can be performed by the content management system 110 and/or the proxy system 130 (and/or its components).
  • FIGS. 1, 2A and 3A-3E are used to provide example structures for performing the steps of the process 400.
  • a query is received from a client device (402).
  • the content management system 1 10 can receive the query 116 from any of the user devices 106a- 106e.
  • the query can originate, for example, from a browser on a mobile user device (e.g., a cell phone, a tablet computing device, or some other device) operated by a user in a remote part of Africa (e.g., Ghana).
  • a mobile user device e.g., a cell phone, a tablet computing device, or some other device operated by a user in a remote part of Africa (e.g., Ghana).
  • the query can be initiated by the user as a voice request.
  • Other prompts for information can be manually or automatically activated.
  • a feature phone can include a rudimentary menu with predefined search categories (e.g., weather, scores, prices, etc.).
  • predefined search categories e.g., weather, scores, prices, etc.
  • the application can conduct a request using the predefined information.
  • the entire sequence of user selections and intermediate results can be price-labeled as well. For example, if the user's selection is a weather category, each weather-related option presented to the user can have an estimated size and price, such as an option to display today's forecast. Once that selection is made by the user, additional price-labeled options can be presented, such as along with the display of the current weather information for any other resource referenced on a page that includes the requested weather information.
  • the query can be initiated as a result of the user employing an interactive voice response (IVR) system.
  • IVR interactive voice response
  • the user in Africa can call into the IVR system and either navigate to pre-recorded information (e.g., weather, sports scores, etc.) or use a voice-driven system to ask a question or perform a search.
  • pre-recorded information e.g., weather, sports scores, etc.
  • voice-driven system e.g., a voice-driven system to ask a question or perform a search.
  • the use of an IVR system can also have associated prices, e.g., prompting the user with the price before presenting the information.
  • search results are identified including one or more resources (404).
  • the content management system 1 10 can provide the search results 304.
  • a size of a data transfer required to access the one resource is determined (406).
  • the size engine 122 can determine an estimated size for the resource.
  • the price engine 124 can determine a corresponding estimated price
  • the label engine 126 can generate a label indicative of the estimated size and/or estimated price.
  • the search results are provided to the client device including providing a label associated with the one resource indicative of the size/price (408).
  • the search results 304a-304c can be provided to the any of the user devices 106a-106e (e.g., the user's mobile device in Africa), including the labels 308a-308c.
  • the user in Ghana can see size and/or price estimates that apply to the potential data transfer (e.g., downloading of each of the resources) corresponding to the search results 304a-304c.
  • the labels 308a-308c can include, for example, size estimates (e.g., size components 310a-310c) and a descriptor of a relative size of the transfer (e.g., the bar graphics and/or small/medium/large annotations described with reference to FIGS. 3C- 3D).
  • the descriptor can include a slider ranging from small to large, where the position of the slider is associated with the estimated size.
  • Each descriptor can reflect a particular category (e.g., small, medium, or large) within a range of possible categories that are attributable based on the size estimate.
  • descriptors can identify a category of resource associated with the search result, e.g., as a way for the user to gain knowledge of the type of resource that may contribute to its corresponding size.
  • the descriptor can identify the resource as including one or more of the categories of video, images, audio, flash content, applications including embedded applications, rich content, fonts and/or scripts.
  • the label includes an estimate of the size based at least in part on historical data associated with the one resource.
  • the size engine 122 can access historical data 123 to determine the size of the resource that was reported or recorded the last time (or previous times) that the resource was downloaded.
  • size can include (or be an average of) multiple sizes corresponding to multiple downloads of the same resource.
  • the label can include an estimate of the size based at least in part on prior loads of the one resource.
  • the label includes an estimated size based at least in part on a retrieval of the one resource by a proxy prior to transmission of data associated with the one resource responsive to the request. For example, instead of accessing information about prior loads of the resource, the proxy system 130 can retrieve the resource and determine its size (e.g., before the user elects to download the resource).
  • the label can include a price associated with the data transfer.
  • the price can be the price that the user in Africa would be charged by the user's phone carrier for transferring the size or amount of data in accordance with a user's data plan with the phone carrier.
  • the price identified in the label can be the current price, e.g., for an immediate download of the resource.
  • the price can include an indication of a price that will be charged to load the data at a future time.
  • the label that the user sees can identify a price for downloading the resource later, e.g., during off-peak hours or some other identified time.
  • the label that is presented to the user can include plan usage data, e.g., indicating an amount of data loaded in a given time period (e.g., "You have loaded 987 kb of data so far this month, costing 32 GH of airtime").
  • the label that is presented to the user can indicate an amount of remaining data that can be loaded in a given time period after loading the one resource (e.g., "If you load this resource, you will still have 17 GHjzi of airtime left for the month").
  • the price associated with the data transfer can be the price charged by the delivery system 150 (e.g., the user's phone carrier) associated with the client device that is used to present the one resource based at least in part on the size.
  • the price that the user sees can be the price that will be charged under the user's data usage plan.
  • each of the embedded links can be augmented to include a label that is visible, for example, upon user selection of a link associated with the resource. For example, after the user selects a link, the label that is displayed can indicate a size of a link resource associated with the link (e.g., including the cost of the user downloading the resource).
  • FIG. 4B is a flowchart of an example process 420 for providing a label indicating an estimated transfer size of a resource after it is selected but before it is loaded.
  • the process 420 can be performed by the content management system 1 10 and the proxy system 130 (and/or its components).
  • FIGS. 1 and 2B are used to provide example structures for performing the steps of the process 420.
  • a request is received through a browser for loading a resource (422).
  • the request can occur when the user selects the search result 1 18c.
  • the request can be a voice request.
  • the request can be initiated as a result of the user employing an interactive voice response (rVR) system.
  • rVR interactive voice response
  • the user in Africa can call into the IVR system and either navigate to pre-recorded information (e.g., weather, sports scores, etc.) and make a selection of an option.
  • the request can be a selection from a rudimentary menu with predefined search categories (e.g., weather, scores, prices, etc.).
  • predefined search categories e.g., weather, scores, prices, etc.
  • the application can initiate a request using the predefined information.
  • a size of a data transfer to load the resource is determined (424).
  • the size engine 122 can determine an estimated size for the resource.
  • the price engine 124 can determine a corresponding estimated price
  • the label engine 126 can generate a label indicative of the estimated size and/or estimated price.
  • Information that includes a label and is related to the size is presented to the user prior to loading the resource (426).
  • the size information can be presented in a popup 208 using the label 204c.
  • the label 204c can include, for example, size estimates and a descriptor of a relative size of the transfer (e.g., the bar graphics and/or small/medium/large annotations described with reference to FIGS. 3C-3D).
  • the descriptor can include a slider ranging from small to large, where the position of the slider is associated with the estimated size.
  • Each descriptor can reflect a particular category (e.g., small, medium, or large) within a range of possible categories that are attributable based on the size estimate.
  • descriptors can identify a category of resource associated with the search result, e.g., video, images, audio, flash content, applications including embedded applications, rich content, fonts and/or scripts. Other categories are possible.
  • the label includes an estimate of the size based at least in part on historical data associated with the one resource, e.g., as determined by the size engine 122 using historical data 123 corresponding to prior loads of the resource.
  • the label includes an estimated size based at least in part on a retrieval of the one resource by a proxy prior to transmission of data associated with the one resource responsive to the request. For example, the proxy system 130 can retrieve the resource and determine its size in real time.
  • the label can include a price associated with the data transfer, such as the price that the user would be charged by the user's phone carrier for the data transfer, e.g., based on rates associated with the user's data plan.
  • the price identified in the label can be the current price for an immediate download or a price that would be charged to load the data at a future time.
  • the label that is presented to the user can include plan usage data, e.g., indicating an amount of data loaded in a given time period and/or an amount of remaining data that can be loaded in a given time period after loading the one resource.
  • the price associated with the data transfer can be the price charged by the delivery system 150 (e.g., the user's phone carrier).
  • the price that the user sees can be the price that will be charged under the user's data usage plan if the user downloads the resource.
  • each embedded link can include or be associated with a label that is visible, for example, upon user selection of a link.
  • the label that is displayed can indicate a size of a link resource associated with the link (e.g., including the cost of the user downloading the corresponding resource).
  • FIG. 4C is a flowchart of an example process 440 in which a proxy provides an estimated size for a data transfer of a resource.
  • the process 440 can be used for resources associated with browsers (e.g., the cost of downloading resources associated with search results that are responsive to a query), email systems (e.g., the cost of downloading a full email message that corresponds to an email subject/header displayed in an inbox), or any other resource that can be transferred within a metered data network.
  • the process 440 can be performed by the content management system 110 and the proxy system 130 (and/or its components).
  • FIGS. 1 and 2B are used to provide example structures for performing the steps of the process 440.
  • a request is received at a proxy for a resource from a client device (442).
  • the proxy system 130 e.g., in combination with the content management system 1 10) can receive a request for the resource associated with the search result 1 18c.
  • a size of a data transfer required to complete the request is determined (444).
  • the size engine 122 can determine an estimated size of the resource, e.g., based at least in part on historical data 123, as described above.
  • An estimate is provided to the client device that is an estimate of a size of a data transfer required to complete the request prior to exposing the client device to data charges resulting from transfer of data associated with the request (446).
  • the proxy system 130 e.g., in combination with the content management system 1 10) can provide the estimated size to the user device 106.
  • providing the estimate can include determining a size based at least in part on data received from the resource when the proxy requests a load of the resource.
  • the proxy system 130 can use information in the resource to determine an estimated size, e.g., by examining the resource's size using file size utilities or by determining the size by loading or pre-loading the resource.
  • Providing the size estimate for example, can occur prior to delivery of data associated with the resource to the client device.
  • the process 440 can further include additional operations of passing the request from the proxy to the resource; receiving data from the resource responsive to the request; determining a size associated with one or more resources referenced in the received data; and providing size data associated with the one or more referenced resources along with the received data to the client device.
  • the proxy system 130 can obtain and estimate size for the requested resource (e.g., web page A) then estimate the size of additional resources associated with any links in the resource (e.g., web pages X, Y and Z referenced by the web page A). The proxy system 130 can then provide four estimated sizes, one size for each of the web pages A, X, Y and Z.
  • the process 440 can further include additional operations of passing the request from the proxy to the resource; receiving data from the resource responsive to the request; and determining a size of the data transfer from the resource based on the received data.
  • the proxy system 130 without obtaining the resource, can request of the resource to either identify its size or provide information by which the proxy system 130 can estimate its size.
  • data rate labels based on a size of the data transfer can be provided to a client device prior to the commencement of the download of the data.
  • the price estimates provided in association with the data rate labels can be guaranteed by a service, such as the service that provides the price information.
  • a service can make an advance purchase of data bandwidth or a purchase guarantee with a carrier for a bulk volume of data bandwidth.
  • the purchased data bandwidth can be resold with or without markup, such as to individual users on an a la carte basis.
  • the service can accordingly pass on bulk pricing to the user, while allowing carriers to reduce uncertainty and risk regarding consumption volume, which can enhance their ability to forecast and plan for capacity increases and other capital expenditures.
  • the service can provide solutions (e.g., software) to enable this inter-mediation, including allowing users to use their voice balance rather than maintain a separate voice and data balance. Forecasts of expected consumption can be made on a per user basis through user-specific models based on past individual and community consumption patterns.
  • One example of a method for providing the guaranteed cost delivery service includes receiving, by a processor, a request for data from an application on a metered data network.
  • the request for data can be a request from a mobile handset for data from a resource that is transferred to the mobile device by a carrier.
  • the user may have a contract with the carrier for voice or data services.
  • the transaction contemplated herein includes a separate agreement with delivery service to engage in the bulk pricing.
  • users can separately sign up for the delivery service. Some or all data transfers to/from the user device can be governed by the separate agreement.
  • the delivery service can determine a size of an associated data transfer to satisfy the request.
  • the delivery system can, for example, do this as described above, such as by loading the data to a proxy or evaluating historical information associated with prior loads of the data.
  • the delivery system can present information including price information to be charged by a carrier for transmission of the data based on the size.
  • the price information can reflect an estimated cost to the user.
  • the price estimate can be honored by the delivery system.
  • the delivery system can estimate an aggregate amount of data that subscribers will consume in a time period, and establish a bulk price with the carrier for the aggregate amount.
  • Honoring the estimate can include debiting a user's access plan associated with the carrier an amount equal to or less than the estimated price.
  • the application request can originate from an application executing on a mobile device.
  • the metered data network can be a wireless network.
  • the request for data can be a request from a browser for a resource.
  • the price information can include an estimated cost in a local currency.
  • the access plan can be a voice plan and debiting the estimated price can include debiting an amount in a local currency against a balance kept in the local currency for voice communications in the metered data network.
  • the access plan can be of the form of a data plan or a combined voice and data plan.
  • Estimating an aggregate amount can include determining a first time period, determining a number of subscribers that have opted in to using bulk pricing, and estimating data usage by the number of subscribers in the first time period.
  • data rate labels can be provided at or in association with data requests received from, for example, a mobile device.
  • a spot market can be created by the delivery system (where there conventionally is only a fixed market) for the delivery of data to consumers in the metered network.
  • a capacity auction platform can be created to enable carriers to sell excess capacity at floating prices.
  • the delivery system can use historical information about data consumption at price points to discern a single or group of user's individual price sensitivity curve. Using the price sensitivity curve information, the delivery system can determine, for example, price sensitive users and how specific changes in price at a specific time will drive changes in usage.
  • a mechanism for surfacing these carrier offers can use data rate labels. Users will not need to submit a bid; instead, rate labels for price- sensitive users will automatically change (downward or upward), thereby embodying the offer from the carrier and stimulating or effectively pricing consumption.
  • the delivery system can provide tools for carriers, such as the ability to set a target utilization rate, or specific price bands for specific times of the day, to determine the carrier's offers. Based on these targets, the delivery system can adjust the data rate label price estimates in order to drive toward a targeted consumption goal for a given time period.
  • FIG. 4D is a flowchart of an example process 550 for providing content to a user and debiting the user's account using bundled rates within an aggregation system.
  • the process 550 can be performed by the content management system 110 and/or the proxy system 130 (and/or its components).
  • FIGS. 1, 2A, 3A-3E and 5A-5B are used to provide example structures for performing the steps of the process 550.
  • a plurality of mobile devices are identified in which each mobile device is configured for communication with a network for downloading resources from the network, and the network is associated with a carrier (552).
  • the proxy system 130 can identify a group of user devices 106, e.g., in Ghana and/or the surrounding area, that belong to users in the area who may benefit from an aggregation system and techniques that remove financial uncertainties about data access using mobile devices.
  • the user devices 106 can be any type of device capable of sending and/or receiving content, including mobile devices such as mobile telephones, smart phones or tablet computers. While the examples herein focus on data access such as accessing web pages or other content on the Internet, e.g., including data downloaded to a user's mobile device, the same techniques can be used for data that may be uploaded by the user.
  • a data bundle is created that represents data download capacity that is to be shared among the plurality of mobile devices for data downloads from the network (554).
  • the proxy system 130 can identify a group of accounts associated with user devices 106, e.g., that correspond to users in Ghana or some other region who have Web-enabled mobile devices.
  • the data bundle that is created can correspond, for example, to the expected network traffic by those users in the corresponding region.
  • the data bundle can have a time element, e.g., an estimated N Gigabytes of information downloadable by the group over an upcoming time period, e.g., a one-month period.
  • the data bundle that is created can be based on information learned from previously created data bundles for the same group of users of another group that is similar in some way. Although regions can be used in select bundles, other ways can be used including, for example, demographics or other ways to categorize users.
  • a price is negotiated for the data bundle with the carrier (556).
  • a service provider can negotiate a price structure with a phone carrier that includes prices per X bytes of information and prices for M minutes of access time (e.g., viewing a video).
  • Information about the price structure can be published in some way, e.g., provided to users of record within the group who have accounts with the phone carrier.
  • Requests for downloading data from the network are received from ones of the plurality of mobile devices (558).
  • each of the requests can be requests for downloading a resource from the network, downloading a webpage from the network, or some other request involving transferring data to or from the user device 106.
  • Example requests can include user selection of one of the search results 304a-304c described with respect to FIG. 3A, playing an online video, or spending time accessing pages within a social network.
  • Rate information for initiating a respective download associated with the request, and the rate information being based at least in part on the negotiated price and being irrespective of airtime or data charges for the download that would ordinarily be charged by the carrier (560).
  • the rate information can include a price, such as price components 312a-312c.
  • a confirmation is received from the respective user acknowledging the rate information and initiating the download responsive to the request.
  • the user can be presented with dialog 512, including cost display 514, that provide size and cost information associated with the user's selection of a particular one of search results 502 (e.g., recap 502a).
  • a data page containing recap 502a information is presented, in this example, only if the user selects the continue control 520.
  • a cost is determined for the data presented or downloaded responsive to the request. Costs for downloads can be aggregated over a specific time period, and a correction factor can be determined that is to be applied to either the group price or the negotiated price for a subsequent time period based at least in part on the aggregate cost.
  • the content can be downloaded and pre-cached in parallel to presenting the user a confirmation. The cache can be used to provide a faster response to user. For example, as the user is reviewing the size and cost information provided by the dialog 512 and deciding whether or not to continue with the download, a background process can download and pre-cache the recap 502a.
  • an account associated with the user is debited using a group price based on the rate information (562).
  • the group price can be a fixed price to load a unit of data, e.g., a single webpage, an email message, an email header, a text message, an audio stream, a video stream, or at least a portion of a game.
  • Group prices can be based on one or more of an amount of time required to watch/present a requested content item (e.g., a video), a number of web pages to be provided in response to the request, a popularity of content associated with the request, a time of day, and/or other factors.
  • the fixed price for example, can be based on one or more content types associated with the request (e.g., web pages, images or video).
  • the debited amount can be a rate offered to the user irrespective of the actual size of the content.
  • the debited amount can be an amount based on the content size, using the initial presentation as an estimate.
  • a group price can be less than the charges that would have been incurred from the carrier for downloading the requested resource.
  • Group prices can be set, for example, to provide not-for-profit or break-even rates for users, such as users in certain underserved countries or regions.
  • group prices can be the same or higher than the charges that would have been incurred from the carrier for downloading the requested resource.
  • group prices can also be established to profit at modest or higher levels from user activities.
  • the process 550 can also include estimating the future consumption for the plurality of mobile devices over a period of time, and negotiating can further include negotiating a price for all data downloads associated with the plurality of devices that are completed during the time period up to the estimate. For example, before a price is negotiated for the data bundle (e.g., for mobile device users in Ghana) with the carrier, the proxy system 130 can estimate a one-year consumption amount for the Ghana users' mobile devices. Negotiating a price structure for downloads by the Ghana users over the designated one-year period, for example, can then be based at least in part on the estimated consumption.
  • a price structure for downloads by the Ghana users over the designated one-year period for example, can then be based at least in part on the estimated consumption.
  • FIG. 4E is a flow chart of an example process 750 for presenting rate-sensitive cost information associated with downloading resources included in search results.
  • the process 750 can be performed by the content management system 110 and/or the proxy system 130 (and/or its components).
  • FIG. 3A is used to provide example structures for performing the steps of the process 750.
  • a query is received from a client device (752).
  • the user can enter the query 306 (e.g., "exp") on the device 106a, which can be received, for example, by the content management system 1 10.
  • search results are identified including one or more resources (754).
  • the content management system 1 10 can provide the search results 304a-304b.
  • a size of a data transfer required to access the one resource is determined (755).
  • the size engine 122 can determine the size of each of the resources associated with the search results 304a-304b.
  • the search results are provided to the client device including providing a label associated with the one resource indicative of a rate-sensitive cost to download the item (756).
  • labels 308a-308c displayed with the search results 304a-304c can include size components 310a-310c, each indicating the transfer size of the respective resource.
  • the label can include an estimate of the size based at least in part on historical data associated with the one resource. For example, information in historical data 123 may indicate that the size of downloading a particular resource is N kilobytes, e.g., because one or more downloads of the same particular resource experienced that download size. Obtaining the size information from historical data can alleviate the need to process the resource in real time to estimate its transfer size.
  • the label can include an estimate of the size (e.g., in kilobytes or other units) based at least in part on prior loads of the one resource.
  • the label can also include a descriptor of a relative size of the transfer, such as a textual description of whether the transfer would be small, medium or large.
  • the label can include a price (e.g., price components 312a) associated with the data transfer.
  • the price can be an amount that will be charged (e.g., to the user) by a carrier for transferring the size of data in accordance with a data plan associated with a user of the client device.
  • the price in addition to including an indication of a current price that will be charged, can include an indication of a price that will be charged to load the data at a time (e.g., one or more specific identified times) in the future.
  • estimated sizes can be presented differently than known sizes, e.g., by displaying "est.” next to the transfer size.
  • the label can include an estimated size based at least in part on a retrieval of the one resource by a proxy prior to transmission of data associated with the one resource responsive to the request.
  • the proxy system 130 can pre-process and/or examine the resource in some suitable way to obtain an indication or the resource's size before the resource is presented to the user for potential download.
  • a true cost to download the item from at least one carrier is determined (757).
  • the price engine 124 can determine a true cost that the user's carrier would incur to download the resource.
  • the true cost that is determined can include determining a true cost from a plurality of carriers.
  • the true cost may be calculated with respect to the user's primary carrier, and/or the true cost may be calculated with respect to other carriers that are accessible to the user, e.g., based on the user's location, type of equipment and or other factors.
  • Some of the true costs of the other carriers may be lower, for example, than that of the user's primary carrier.
  • some or all of the true costs can be determined in an auction, e.g., by soliciting bids from carriers for downloading the resource.
  • determining the true cost can include receiving pricing information from a carrier associated with a time period for downloading the resource, where the pricing information can reflect any discounts a given carrier is offering during the time period to encourage more data transfers.
  • the true costs displayed to the user may include costs that represent a different (e.g., lower) rate that is offered because of non-peak time periods and/or when the carriers have excess capacity that they would like to utilize.
  • a price sensitivity of the user is determined, including evaluating historical information for downloads and costs incurred for each (758).
  • the price engine 124 can use user information to access price sensitivity information in historical data 123.
  • the historical data may indicate, for example, the times and/or factors for which price sensitivities exist for the user.
  • the rate-sensitive cost is calculated based at least in part on the true cost and the determined price sensitivity (759).
  • the price engine 124 can calculate a different (e.g., lower) cost for downloading the resource based at least in part on the user's price sensitivity.
  • the rate-sensitive cost can be determined for a group, and the determined rate sensitivity can be applied to each member of the group. For example, there may be a group of users who have similar sensitivities to download prices, and carriers may want to bundle the discounts to these users. As such, a reduced cost that a user sees for downloading a particular resource may the result of that user and/or other users accessing the same or different resources, and the user and/or the other users having sensitivities to cost.
  • the process 750 further comprises determining a rate sensitivity that includes determining a price curve for a given user including price point information that reflects when a user is more likely than not to agree to
  • the historical data 123 may include information that the user is more likely to download larger resources on weekend nights, and is less likely to download large resources during the work week.
  • the price engine 124 can use this information, at least in part, to calculate the rate-sensitive cost.
  • Set costs can be based likelihoods, for example, that the user is more than likely (or extremely likely) to download a particular resource at a given time.
  • FIG. 4F is a flow chart of an example process 760 for presenting rate-sensitive cost information associated with downloading a resource in a browser.
  • the process 760 can be performed by the content management system 1 10 and/or the proxy system 130 (and/or its components).
  • FIG. 3A is used to provide example structures for performing the steps of the process 760.
  • a request for loading a resource is received through a browser (762). For example, the user may enter the URL of a web page or in some other way select a resource to be downloaded in a browser.
  • a size of a data transfer to load the resource is determined (764). For example, the size engine 122 can determine the size of the resource to be loaded.
  • Information including a label, related to the size is presented to the user prior to loading the resource (766).
  • the label includes a rate-sensitive price for loading the resource from a carrier.
  • the presented information is based, at least in part, on a determination of a true cost to download the item from at least one carrier, a
  • labels 308a-308c displayed with the search results 304a-304c can include size components 310a-310c, each indicating the transfer size and cost of the respective resource.
  • a popup or other display that includes the label can be displayed to the user upon user selection of the URL and prior to loading the
  • the price information that is included with the label can be determined, for example, in ways described with respect to FIG. 4D.
  • FIG. 4G is a flow chart of an example process 770 for a proxy to provide rate- sensitive cost information associated with downloading resources.
  • the process 770 can be performed by the content management system 1 10 and/or the proxy system 130 (and/or its components).
  • FIG. 3A is used to provide example structures for performing the steps of the process 770.
  • a request for a resource is received from a client device at a proxy (772).
  • the proxy system 130 can receive a request to corresponding to one or more of the resources 304a-304c, e.g., that are among the results set of a query in a browser.
  • a size of a data transfer required to complete the request is determined.
  • the size engine 122 can determine the size of the resource, e.g., using techniques described above.
  • An estimate is provided to the client device (774).
  • the estimate is for a size of a data transfer required to complete the request and a rate-sensitive cost for transferring the data prior to exposing the client device to data charges resulting from transfer of data associated with the request.
  • the estimate is based, at least in part, on a determination of a true cost to download the item from at least one carrier, a determination of a price sensitivity of the user including evaluating historical information for downloads and costs incurred for each, and a calculation of the rate-sensitive cost based at least in part on the true cost and the determined price sensitivity.
  • the estimate can be determined by the size engine 122, as described above.
  • providing the estimate can include determining a size based at least in part on data received from the resource when the proxy requests a load of the resource.
  • the size engine 122 can determine the size of the resource from the resource at the time it is retrieved, e.g., subsequent to the user selecting or otherwise identifying the resource to be loaded.
  • providing the estimate can occur prior to delivery of data associated with the resource to the client device.
  • the proxy server 130 can provide an estimated size to the user's user device 106 without delivering the resource to the user device 106. This can occur, for example, before loading an image, a video or some other resource, e.g., after the user selects a control associated with loading the resource.
  • process 770 can further comprise passing the request from the proxy to the resource, receiving data from the resource responsive to the request, determining a size associated with one or more resources referenced in the received data, and providing size data associated with the one or more referenced resources along with the received data to the client device.
  • the proxy system 130 can provide information about the request to the resource 304 (e.g., a web page) and obtain the resource 304.
  • the size engine 122 can determine the size of the resource 304, and the proxy system 130 can provide information about the size of the resource 304 to the requesting client device 106a.
  • process 770 can further comprise passing the request from the proxy to the resource, receiving data from the resource responsive to the request, and determining a size of the data transfer from the resource based on the received data.
  • the proxy server 130 can receive data from the resource 304 (e.g., a web page), and the size engine 122 can use the data to determine a size of the resource 304.
  • FIG. 4H is a flow chart of an example process 780 for presenting rate-sensitive cost information associated with transferring data in an application.
  • the process 780 can be performed by the content management system 1 10 and/or the proxy system 130 (and/or its components).
  • FIGS. 3A and 5E are used to provide example structures for performing the steps of the process 780.
  • a request for data is received from an application on a metered data network (782).
  • the application can be an email application that displays a subject of a message
  • the data requested can be the message
  • the label can include an indication of the rate-sensitive cost to download a corresponding full message. As shown in FIG.
  • an example email application displays email message entries 790a-790c (e.g., in an inbox of the mail application).
  • Email subjects 792a-792c identify the subjects of the email messages, and labels 794a-794c indicate rate-sensitive costs associated with downloading the respective entire messages.
  • a size of an associated data transfer to satisfy the request is determined (784).
  • the size engine 122 can determine the sizes that are included in the displayed labels 794a-794c.
  • Information including a label, related to the size is presented to the user prior to transferring the data (786).
  • the presented information includes a rate-sensitive cost for the data transfer.
  • the presented information is based, at least in part, on a determination of a true cost to download the item from at least one carrier, a determination of a price sensitivity of the user including evaluating historical information for downloads and costs incurred for each, and a calculation of the rate-sensitive cost based at least in part on the true cost and the determined price sensitivity.
  • the rate-sensitive costs for downloading the messages associated with the email message entries 790a-790c can be determined as described above.
  • the application can be associated with a desktop and can include one or more user interface elements that, when selected, initiate the request.
  • a desktop that appears on the user's device can include selectable icons that, when selected, will launch a respective application (e.g., map application, financial application, etc.).
  • a respective application e.g., map application, financial application, etc.
  • carrier rates can apply to transferring of data corresponding to the requested launch of the application.
  • the interface elements associated with the application(s) can be presented on a desktop of a mobile device (e.g., the user's mobile phone), and the user interface elements can initiate a call for data to a resource over the metered data network.
  • rate-sensitive costs can be determined and provided to the user.
  • the user can then decide whether or not to launch the application, and proceeding to launch the application can, for example, affect the user's current balance with the carrier, e.g., a pre-paid amount that the user had purchased for downloading and/or accessing data on his mobile phone.
  • FIG. 41 is a flow chart of an example process 850 for presenting sponsorship information associated with loading resources.
  • the sponsorship information can include labels that provide users with a transmission cost (or a reduced cost) to load a resource and information regarding sponsorship of the load that is based on sponsored content items associated with the resource.
  • the process 850 can be performed by the content management system 1 10 and/or the proxy system 130 (and/or its components).
  • FIGS. 3 A and 4J are used to provide example structures for performing the steps of the process 850.
  • a request is received from a mobile device to load a resource (852).
  • the user can enter the query 306 (e.g., "exp") on the device 106a, which can be received, e.g., by the content management system 1 10.
  • the query 306 can be signal, for example, a potential intent by the user to subsequently load one or more of the search results 304, each associated with a resource, that are generated in response to the query 306.
  • the process 850 can be used, for example, to identify sponsorship of content items associated with a particular resource before the user issues an actual request to load the resource, e.g., by selecting one of the search results 304.
  • the process 850 can begin when the user selects one of the search results 304, e.g., including providing the user with a transmission cost for loading the corresponding resource and an option to continue with the load or cancel the request.
  • other controls can be available to the user for discovering the transmission cost and sponsorship of loading a resource, such as selectable controls, hover controls, or some other actionable controls or tools.
  • a transmission cost for loading the resource over a metered network is determined (854).
  • the proxy system 130 can determine transmission costs associated with loading each of the resources associated with the search results 304a- 304c.
  • determining the transmission cost can include determining a size of the resource (e.g., determined by the size engine 122).
  • the price engine 124 for example, can then determine the transmission cost for the resource based on the resource's size and using transmission cost information from the user's carrier plan.
  • One or more sponsored content items are identified for delivery along with the resource, and the sponsored content items are included in one or more slots for presentation along with third-party content associated with the resource (856).
  • Each sponsored content item has an associated bid that represents an amount that will be paid by the sponsor for presentation of a given sponsored content item.
  • FIG. 4J shows an example resource 862 that includes content item slots 864a-864c.
  • the content item slots 864a-864c can be included with third-party content 865 associated with the resource 862 (e.g., a web page).
  • the content item slots 864a-864c contain the content items 866a-866c (e.g., advertisements) that are identified to be delivered with the resource 862, e.g., when the user selects the search result 304a as described above.
  • the sponsored content items 866a-866c can have associated bids provided by the corresponding content sponsors, the bids representing the amounts that the content sponsors will pay for presentation and of the given sponsored content item.
  • the bids can include additional amounts that the content sponsors are willing to pay to sponsor user loads of resources (e.g., web pages) that include their content items (e.g., advertisements).
  • the bids can be used in an auction system for selecting content items to fill content item slots.
  • the content items 866a-866c can be chosen in the auction, e.g., because they have the highest bids associated with the content item slots 864a-864c.
  • An amount of credit to be awarded toward load costs is determined based at least in part on the bid (858).
  • the amount of credit can include an amount of credit that is used to reduce the transmission cost, e.g., the amount of the transmission cost for loading the resource that the content sponsor is willing to sponsor.
  • the bids received from the content sponsors and associated with the content items 866a-866c can include a content sponsor-specified amount that is to be used for sponsoring content.
  • content sponsor A may have specified that part of their bid of 5 GH (e.g., for an impression of their advertisement) includes 3 GH for use in offsetting a user's transmission costs for loading the resource 862 containing content sponsor A's sponsored content item 866a (e.g., the advertisement).
  • part of their bid of 5 GH e.g., for an impression of their advertisement
  • 3 GH for use in offsetting a user's transmission costs for loading the resource 862 containing content sponsor A's sponsored content item 866a (e.g., the advertisement).
  • At least a portion of revenue attributable to the bid for a sponsored content item is provided to offset the transmission cost, e.g., part or all of the bid can be used to offset transmission costs associated with loading the resource. For example, if the bid is 3 GH , then 2 GH may be used as the amount of credit to be awarded toward the transmission cost for loading the resource 862 containing the sponsored content item 866a.
  • the transmission cost can be offset by credits associated with plural different sponsored content items that are to appear in association with the loaded resource.
  • multiple sponsored content items may be included in a single resource, e.g., each associated with a different content sponsor sponsoring a transmission cost for loading the resource.
  • the sum of the individual credits can result in a total credit that offsets the entire transmission cost, resulting in a load of the resource that is free to the user.
  • a label responsive to the request is provided for presentation on the mobile device that indicates a reduced cost to load the resource when a load of a resource is partially or entirely sponsored based at least in part on the amount of credit that is determined (860).
  • label 308a, displayed with the search result 304a can include price components 312a, e.g., identifying the reduced cost of the load (e.g., 1 GH ).
  • the process 850 can further comprise presenting an attribution in association with the label when a credit reduces a transmission cost for a resource.
  • label 308a can also include sponsorship information 311 that can include, e.g., a notification that the transmission cost for loading the resource is sponsored, and that the load price (e.g., price component 312a of 1 GH ) includes a sponsored amount (e.g., 2 GH ).
  • Other cost amounts can also be displayed for the price component 312a, such as a no-cost or "free" load. This can occur, e.g., if a content sponsor has offered to pick up the entire cost of a load, or if multiple content sponsors are sponsoring different content items included in the resource and the sum of the sponsored credits meets or exceeds the load cost of the resource.
  • the process 850 can further comprise determining a minimum threshold revenue required to be provided by a sponsor to a publisher in association with a presentation of a given sponsored content item along with the resource, and determining the amount of credit to be awarded toward load costs can further be based on the minimum threshold revenue, including determining when the bid exceeds the minimum threshold revenue.
  • the content management system 110 may determine that the publisher of www.example.com requires a minimum threshold revenue of at least 2 GHjzi from content sponsor A for presentation of content sponsor A's content item (e.g., sponsored content item 866a) in the content item slot 864a.
  • the bid by content sponsor A's can be accepted, e.g., if the bid is the highest bid (e.g., among other bids) and/or if the bid includes an amount for sponsoring transmission costs of an associated resource that exceeds the minimum threshold revenue of 2 GH .
  • determining the amount of credit to be awarded toward load costs can further be based on the minimum threshold revenue.
  • FIG. 4K is a flow chart of an example process 870 for providing reduced transmission price information for a resource to be loaded at a later time.
  • the process 870 can be performed by the content management system 1 10 and/or the proxy system 130 (and/or its components).
  • FIGS. 3 A, 4J and 5H are used to provide example structures for performing the steps of the process 870.
  • a request is received from a mobile device for a resource (872).
  • the user can enter the query 306 (e.g., "exp") on the device 106a, which can be received, e.g., by the content management system 1 10.
  • the query 306 can be a signal, for example, that the user may select one of the search results 304 responsive to the query 306, initiating a request for the resource.
  • the request for the resource can occur when the user selects a particular search result 304.
  • the process 850 can be used to in order to provide transmission cost information either before or after the user selects a search result 304.
  • a transmission cost to load the resource over a metered network is determined (874).
  • the proxy system 130 can determine transmission costs associated with loading each of the resources associated with the search results 304a-304c, or the specific one (e.g., search result 304b) selected by the user.
  • determining the transmission cost can include determining a size of the resource (e.g., determined by the size engine 122).
  • the price engine 124 for example, can then determine the transmission cost for the resource based on the resource's size and using transmission cost information from the user's carrier plan.
  • Potential sponsors for reducing a cost to an end user to load the resource are determined (876).
  • the potential sponsor can be a publisher associated with the resource, e.g. the publisher of the web page corresponding to the search result 304b. The publisher in this example may want to sponsor part or all of the transmission cost that is required of the end user to load the resource (e.g., the web page www.example2.com).
  • the potential sponsor can be one of the advertisers associated with one or more slots whose content (e.g., advertisements )) is to be presented along with third-party content associated with the resource.
  • the potential sponsor of transmission costs of the resource 862 can be any of the content sponsors (e.g., advertisers) associated with any of the content items 866a-866c that appear on the resource 862.
  • a time to load the resource is determined, and a time factor is determined for use in adjusting a transmission price based on demand during a period associated with the time (878).
  • the content management system can identify a time period (e.g., 6PM-9PM) and a time factor (e.g., a cost reduction amount) that is associated with a demand period (e.g., demand periods based on peak usage by end users).
  • An adjusted transmission price is determined based at least in part on the time factor, any potential sponsors, and the transmission cost (880).
  • the price engine 124 can calculate an adjusted price for the cost of loading the resource associated with search result 304b.
  • the adjusted transmission price (e.g., 1 GH ) can be the difference between the unsponsored transmission price (e.g., 3 GH ) of downloading the resource and any amounts (e.g., totaling 2 GH ) sponsored by the publisher of the resource and/or sponsored by one or more of the advertisers of advertisements on the web page.
  • a label responsive to the request is provided for presentation on the mobile device that indicates a reduced cost to load the resource when a load of a resource is partially or entirely sponsored (882).
  • FIG. 5H an example label is presented on a mobile device that identifies a transmission cost for loading a resource at a later time.
  • the label 308b can include an indicator 313 that says, "Sponsored Later! Wait until 6-9 tonight when sponsors reduce this price to 1 GH !
  • multiple adjusted transmission prices can be determined, e.g., each for a different time period and each potentially having a different reduced cost for the end user.
  • the lowest cost can be presented first to the end user, and the other cost associated with other time periods can be accessible to the end user using various controls.
  • FIG. 5A shows an example persistent balance bar 506 included on an interface (e.g., a web page displayed by a user device's browser) showing a user's current balance 508, e.g., within an aggregation system.
  • the balance 508 can be displayed in a local currency and can represent the current monetary value of pre-paid downloads and access on device 106 (e.g., according to the user's media plan).
  • a top-up control 510 is available to the user for adding to the balance 508.
  • the balance bar 506 can be displayed whenever downloadable and/or accessible elements are displayed, such as search results 502.
  • each of the entries in the search results 502 can include a cost to download or access the corresponding content, as described above.
  • FIG. 5B shows an example verification dialog 512 that appears when the user selects a link to a web page.
  • the dialog 512 can appear if the user selects one of the search results 502 (e.g., recap 502a).
  • user settings and/or provider plan policies may exist so that dialog 512 appears only for
  • dialog 512 is to appear only for accesses, etc., above a threshold size or price, and accesses below that size/price are to occur without user verification.
  • the dialog 512 includes a cost display 514 and a current balance 516, both of which can be presented in a local and/or user-designated currency.
  • some implementations can provide controls for switching the currently displayed currency to a different currency.
  • the user can select a continue control 520 to initiate the download/access, or a back control 518 to cancel the operation (e.g., to return to the display of the search results 502).
  • FIG. 5C shows an example insufficient balance dialog 522.
  • the insufficient balance dialog 522 can appear when the cost, e.g., of a page download, exceeds the user's current balance.
  • different text colors and/or sizes can be used to indicate to the user that a balance problem exists, e.g., that a page cost 524 exceeds a balance 526, or that the user's balance is getting low.
  • Monetary values can be displayed in a local and/or user-specified currency.
  • FIGS. 5D and 5E show example top-up interfaces that can appear on a destination web page for users to add credit to their accounts.
  • FIG. 5D shows an example success message 532 and a new balance 534 that can result from a successful topping up by the user, e.g., after user selection of the top-up control 510 described with reference to FIG. 5A.
  • a successful top-up can occur after the user enters a top-up personal identification number (PIN) or some other user password in a PIN control 540 and selects a top up control 542.
  • PIN personal identification number
  • Other controls and displays are possible.
  • the user's new balance 534 is updated.
  • FIG. 5E shows an example failure message 544 that can be displayed, for example, if the ⁇ has already been used (e.g., in a previous top-up) or if the PIN is invalid in some way.
  • FIG. 5F shows an example balance bar on a search results page.
  • the persistent balance bar 506 is included above search results 304a-304c displayed on the device 106.
  • the persistent balance bar 506 includes the user's current balance 508 and the top-up control 510 that the user can use to add to the balance 508.
  • FIG. 5G shows an example email application that displays email message entries 790a-790c (e.g., in an inbox of the mail application).
  • email subjects 792a-792c identify the subjects of the email messages
  • labels 794a-794c indicate rate-sensitive costs associated with downloading the respective entire messages.
  • FIG. 5H shows an example label presented on a mobile device that identifies a transmission cost for loading a resource at a later time.
  • the label 308b can include an indicator 313 that says, "Sponsored Later! Wait until 6-9 tonight when sponsors reduce this price to 1 GH !”
  • FIG. 51 shows example displays that include last activity of the user.
  • statistics 450 can include a current balance (e.g., $4.89) for the user and the cost of a last activity (e.g., $0.03).
  • Costs and balances can be presented (to the user) and use one or more of a currency specified by the user, the currency of the user's data plan, and/or a local currency (e.g., based on the user's current location).
  • Other ways of presenting the user's current balance and last activity can be used.
  • FIG. 5 J shows a table 458 of example guaranteed rates.
  • rates 460 can be guaranteed for a user for each of various corresponding content types 462 and units 464 (e.g., per page, per minute viewed, per minute used, or other rates).
  • the rates can be semi-floating rates for individual downloads (e.g., for search results) and based on content type.
  • Example content types include webpages of various sizes, images, video and other content (e.g., social content, email, etc.). Guaranteed pricing can be based on content type 462, e.g., instead of or in addition to the size considerations and factors described above.
  • FIG. 5K shows an example environment 468 for compressing information before it is provided to a user device.
  • a client browser 470 e.g., on the user device 106
  • a proxy server 472 e.g., the proxy system 130.
  • the request can be, for example, a request for a resource (e.g., such as a request for a web page, an application, a request for a search result or other resource).
  • the proxy server 472 can forward the request to a web server 474 and receive content responsive to the request.
  • the proxy server 472 can obtain a compressed version of the data from a compression engine 476.
  • the proxy server 472 can determine whether compression is required, then forward the content for compression if necessary.
  • compression can be optional depending, for example, on constraints associated with the system or on timing constraints associated with the received request.
  • the compression engine 476 can be a third party engine, associated with the proxy server 472 or included in the proxy server 472.
  • the content for potential compression can be evaluated, and only compressed is sufficient benefit will result. Benefits can include both cost and/or timing benefits.
  • the proxy server 472 can provide the compressed content to the client browser 470.
  • FIG. 6 is a block diagram of computing devices 600, 650 that may be used to implement the systems and methods described in this document, as either a client or as a server or plurality of servers.
  • Computing device 600 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers.
  • Computing device 650 is intended to represent various forms of mobile devices, such as personal digital assistants, cellular telephones, smartphones, tablet computing devices, and other similar computing devices.
  • the components shown here, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed in this document.
  • Computing device 600 includes a processor 602, memory 604, a storage device 606, a high-speed interface 608 connecting to memory 604 and high-speed expansion ports 610, and a low speed interface 612 connecting to low speed bus 614 and storage device 606.
  • Each of the components 602, 604, 606, 608, 610, and 612 are interconnected using various busses, and may be mounted on a common motherboard or in other manners as appropriate.
  • the processor 602 can process instructions for execution within the computing device 600, including instructions stored in the memory 604 or on the storage device 606 to display graphical information for a GUI on an external input/output device, such as display 616 coupled to high speed interface 608.
  • multiple processors and/or multiple buses may be used, as appropriate, along with multiple memories and types of memory.
  • multiple computing devices 600 may be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).
  • the memory 604 stores information within the computing device 600.
  • the memory 604 is a computer-readable medium. In one
  • the memory 604 is a volatile memory unit or units. In another implementation, the memory 604 is a non-volatile memory unit or units.
  • the storage device 606 is capable of providing mass storage for the computing device 600.
  • the storage device 606 is a computer-readable medium.
  • the storage device 606 may be a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid state memory device, or an array of devices, including devices in a storage area network or other configurations.
  • a computer program product is tangibly embodied in an information carrier.
  • the computer program product contains instructions that, when executed, perform one or more methods, such as those described above.
  • the information carrier is a computer- or machine-readable medium, such as the memory 604, the storage device 606, or memory on processor 602.
  • the high speed controller 608 manages bandwidth-intensive operations for the computing device 600, while the low speed controller 612 manages lower bandwidth- intensive operations. Such allocation of duties is exemplary only. In one
  • the high-speed controller 608 is coupled to memory 604, display 616 (e.g., through a graphics processor or accelerator), and to high-speed expansion ports 610, which may accept various expansion cards (not shown).
  • low- speed controller 612 is coupled to storage device 606 and low-speed expansion port 614.
  • the low-speed expansion port which may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet) may be coupled to one or more input/output devices, such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., through a network adapter.
  • the computing device 600 may be implemented in a number of different forms, as shown in the figure.
  • computing device 600 may be implemented as a standard server 620, or multiple times in a group of such servers. It may also be implemented as part of a rack server system 624. In addition, it may be implemented in a personal computer such as a laptop computer 622. Alternatively, components from computing device 600 may be combined with other components in a mobile device (not shown), such as device 650. Each of such devices may contain one or more of computing device 600, 650, and an entire system may be made up of multiple computing devices 600, 650 communicating with each other.
  • Computing device 650 includes a processor 652, memory 664, an input/output device such as a display 654, a communication interface 666, and a transceiver 668, among other components.
  • the device 650 may also be provided with a storage device, such as a microdrive or other device, to provide additional storage.
  • a storage device such as a microdrive or other device, to provide additional storage.
  • Each of the components 650, 652, 664, 654, 666, and 668 are interconnected using various buses, and several of the components may be mounted on a common motherboard or in other manners as appropriate.
  • the processor 652 can process instructions for execution within the computing device 650, including instructions stored in the memory 664.
  • the processor may also include separate analog and digital processors.
  • the processor may provide, for example, for coordination of the other components of the device 650, such as control of user interfaces, applications run by device 650, and wireless communication by device 650.
  • Processor 652 may communicate with a user through control interface 658 and display interface 656 coupled to a display 654.
  • the display 654 may be, for example, a TFT LCD display or an OLED display, or other appropriate display technology.
  • the display interface 656 may comprise appropriate circuitry for driving the display 654 to present graphical and other information to a user.
  • the control interface 658 may receive commands from a user and convert them for submission to the processor 652.
  • an external interface 662 may be provided in communication with processor 652, so as to enable near area communication of device 650 with other devices.
  • External interface 662 may provide, for example, for wired communication (e.g., via a docking procedure) or for wireless communication (e.g., via Bluetooth or other such
  • the memory 664 stores information within the computing device 650.
  • the memory 664 is a computer-readable medium.
  • the memory 664 is a volatile memory unit or units.
  • the memory 664 is a non-volatile memory unit or units.
  • Expansion memory 674 may also be provided and connected to device 650 through expansion interface 672, which may include, for example, a SIM card interface. Such expansion memory 674 may provide extra storage space for device 650, or may also store applications or other information for device 650.
  • expansion memory 674 may include instructions to carry out or supplement the processes described above, and may include secure information also.
  • expansion memory 674 may be provide as a security module for device 650, and may be programmed with instructions that permit secure use of device 650.
  • secure applications may be provided via the SIM cards, along with additional information, such as placing identifying information on the SIM card in a non-hackable manner.
  • the memory may include for example, flash memory and/or MRAM memory, as discussed below.
  • a computer program product is tangibly embodied in an information carrier.
  • the computer program product contains instructions that, when executed, perform one or more methods, such as those described above.
  • the information carrier is a computer- or machine-readable medium, such as the memory 664, expansion memory 674, or memory on processor 652.
  • Device 650 may communicate wirelessly through communication interface 666, which may include digital signal processing circuitry where necessary.
  • Communication interface 666 may provide for communications under various modes or protocols, such as GSM voice calls, SMS, EMS, or MMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others. Such communication may occur, for example, through radio-frequency transceiver 668. In addition, short-range communication may occur, such as using a Bluetooth, WiFi, or other such transceiver (not shown). In addition, GPS receiver module 670 may provide additional wireless data to device 650, which may be used as appropriate by applications running on device 650.
  • Device 650 may also communicate audibly using audio codec 660, which may receive spoken information from a user and convert it to usable digital information.
  • audio codec 660 may receive spoken information from a user and convert it to usable digital information.
  • Audio codec 660 may likewise generate audible sound for a user, such as through a speaker, e.g., in a handset of device 650. Such sound may include sound from voice telephone calls, may include recorded sound (e.g., voice messages, music files, etc.) and may also include sound generated by applications operating on device 650.
  • the computing device 650 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a cellular telephone 680. It may also be implemented as part of a smartphone 682, personal digital assistant, tablet computing device, or other similar mobile device.
  • Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof.
  • ASICs application specific integrated circuits
  • These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • machine-readable signal refers to any signal used to provide machine instructions and/or data to a programmable processor.
  • the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer.
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and a pointing device e.g., a mouse or a trackball
  • Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • the systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components.
  • the components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN”), a wide area network (“WAN”), and the Internet.
  • LAN local area network
  • WAN wide area network
  • the Internet the global information network
  • the computing system can include clients and servers.
  • a client and server are generally remote from each other and typically interact through a communication network.
  • the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Meter Arrangements (AREA)
  • Telephonic Communication Services (AREA)

Abstract

L'invention concerne des procédés, des systèmes et un appareil, y compris des programmes informatiques codés sur un support de stockage lisible par ordinateur, ainsi qu'un procédé permettant de fournir les résultats de recherche. Le procédé comprend les étapes consistant à recevoir une requête provenant d'un dispositif de client ; en réponse à la requête, identifier, au moyen d'un ou de plusieurs processeurs, des résultats de recherche incluant une ou plusieurs ressources ; pour au moins une ressource des résultats de recherche, déterminer au moyen du ou des processeurs la taille d'un transfert de données requise pour accéder à la ressource ; fournir les résultats de recherche au dispositif de client, y compris une étiquette associée à la ressource et indiquant la taille.
PCT/US2013/031426 2012-03-16 2013-03-14 Fourniture d'informations avant le téléchargement de ressources WO2013138603A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015500616A JP6140802B2 (ja) 2012-03-16 2013-03-14 リソースのダウンロードに先立つ情報の提供
CA2866887A CA2866887A1 (fr) 2012-03-16 2013-03-14 Fourniture d'informations avant le telechargement de ressources
AU2013232015A AU2013232015A1 (en) 2012-03-16 2013-03-14 Providing information prior to downloading resources
KR1020147028954A KR102040781B1 (ko) 2012-03-16 2013-03-14 리소스들을 다운로드하기 전에 정보를 제공하는 방법

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US13/422,164 US20130246413A1 (en) 2012-03-16 2012-03-16 Providing information prior to downloading resources
US13/422,164 2012-03-16
US201261612901P 2012-03-19 2012-03-19
US61/612,901 2012-03-19
US13/559,925 US8880543B2 (en) 2012-03-16 2012-07-27 Aggregation system for downloading resources
US13/559,925 2012-07-27
US13/671,103 2012-11-07
US13/671,103 US8862564B2 (en) 2012-03-16 2012-11-07 Sponsoring resource downloads
US13/675,103 US20130246213A1 (en) 2012-03-16 2012-11-13 Using rate-sensitivities to price downloads
US13/675,103 2012-11-13

Publications (1)

Publication Number Publication Date
WO2013138603A1 true WO2013138603A1 (fr) 2013-09-19

Family

ID=49161812

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2013/031426 WO2013138603A1 (fr) 2012-03-16 2013-03-14 Fourniture d'informations avant le téléchargement de ressources

Country Status (5)

Country Link
JP (1) JP6140802B2 (fr)
KR (1) KR102040781B1 (fr)
AU (1) AU2013232015A1 (fr)
CA (1) CA2866887A1 (fr)
WO (1) WO2013138603A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110737840A (zh) * 2019-10-22 2020-01-31 青岛海信电器股份有限公司 语音控制方法及显示设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016122668A1 (fr) * 2015-01-30 2016-08-04 Hewlett Packard Enterprise Development Lp Stockage et séparation de données de plusieurs utilisateurs

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215775A1 (en) * 2003-04-24 2004-10-28 Bookfactory, Llc, A California Limited Liability Corporation System, method and computer program product for network resource processing
US20060200455A1 (en) * 2002-12-20 2006-09-07 Redbank Manor Pty Ltd Search engine result reporter
US20100057801A1 (en) * 2005-09-14 2010-03-04 Jorey Ramer User Characteristic Influenced Search Results
US20100228598A1 (en) * 2009-03-06 2010-09-09 Microsoft Corporation Market design for a resource exchange system
WO2010118515A1 (fr) * 2009-04-17 2010-10-21 Nortel Networks Limited Procédé et système pour fournir une structure de liaison montante et technique de découpage en canaux améliorée dans un réseau de communication sans fil

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030187806A1 (en) * 2002-03-28 2003-10-02 International Business Machines Corporation Calculating and displaying the cost of downloading web content
JP2004021304A (ja) * 2002-06-12 2004-01-22 Sharp Corp クライアント・サーバ形式のダウンロードシステム
KR101056676B1 (ko) * 2003-09-30 2011-08-22 소니 주식회사 콘텐츠 취득 방법
JP4423295B2 (ja) * 2005-06-24 2010-03-03 ソフトバンクモバイル株式会社 データ通信方法及び移動通信端末装置
US20090100024A1 (en) 2007-10-11 2009-04-16 Manesh Nasser K Multi-modal mobile platform
KR101453132B1 (ko) * 2007-12-18 2014-10-27 톰슨 라이센싱 브로드캐스트 네트워크들을 통한 파일 사이즈 추정 장치 및 방법
US20090176482A1 (en) * 2008-01-08 2009-07-09 Daryl Martin Method and system for displaying remote cache information
EP2104322A1 (fr) 2008-03-18 2009-09-23 BlueTown ApS Système de communication pour voix sur IP utilisant des fréquences sans licence
JP5439761B2 (ja) * 2008-07-25 2014-03-12 富士通株式会社 コンテンツ再生装置、コンテンツ再生方法およびコンテンツ再生プログラム
US20110288937A1 (en) 2010-05-24 2011-11-24 Manoogian Iii John Scaling persona targeted advertisements

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060200455A1 (en) * 2002-12-20 2006-09-07 Redbank Manor Pty Ltd Search engine result reporter
US20040215775A1 (en) * 2003-04-24 2004-10-28 Bookfactory, Llc, A California Limited Liability Corporation System, method and computer program product for network resource processing
US20100057801A1 (en) * 2005-09-14 2010-03-04 Jorey Ramer User Characteristic Influenced Search Results
US20100228598A1 (en) * 2009-03-06 2010-09-09 Microsoft Corporation Market design for a resource exchange system
WO2010118515A1 (fr) * 2009-04-17 2010-10-21 Nortel Networks Limited Procédé et système pour fournir une structure de liaison montante et technique de découpage en canaux améliorée dans un réseau de communication sans fil

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110737840A (zh) * 2019-10-22 2020-01-31 青岛海信电器股份有限公司 语音控制方法及显示设备
CN110737840B (zh) * 2019-10-22 2023-07-28 海信视像科技股份有限公司 语音控制方法及显示设备

Also Published As

Publication number Publication date
KR20140136997A (ko) 2014-12-01
CA2866887A1 (fr) 2013-09-19
AU2013232015A1 (en) 2014-09-25
KR102040781B1 (ko) 2019-11-06
JP2015517139A (ja) 2015-06-18
JP6140802B2 (ja) 2017-05-31

Similar Documents

Publication Publication Date Title
US20130246213A1 (en) Using rate-sensitivities to price downloads
US11222364B2 (en) Expected activity of a user
US20200090230A1 (en) Systems and methods for suggesting creative types for online content items to an advertiser
US20070067267A1 (en) Systems and methods for managing the display of sponsored links together with search results in a search engine system
US20140236738A1 (en) Method and system for placement and pricing of internet-based advertisements or services
US20090197582A1 (en) Platform for mobile advertising and microtargeting of promotions
US20090228397A1 (en) Exchange for tagged user information with scarcity control
US8862564B2 (en) Sponsoring resource downloads
US20080275770A1 (en) Publisher advertisement return on investment optimization
US10318985B2 (en) Determining bidding strategies
US20150206248A1 (en) Apparatus and method for supplying optimized insurance quotes
EP3152911A1 (fr) Systèmes et procédés de préextraction d'éléments de contenu en ligne pour présentation à un utilisateur avec une faible latence
CN109146572A (zh) 一种广告投放系统、方法、装置、计算机设备和存储介质
US11367110B2 (en) Personalized mobile application re-engagement
US20070174127A1 (en) Method and system for adjusting the balance of account of the advertiser in a keyword advertisement
US20130246312A1 (en) Providing information prior to downloading resources
US10796336B1 (en) Content selection based on connection information
US8880543B2 (en) Aggregation system for downloading resources
KR102040781B1 (ko) 리소스들을 다운로드하기 전에 정보를 제공하는 방법
US20170337584A1 (en) Systems and methods for serving secondary online content based on interactions with primary online content and concierge rules
US20130246413A1 (en) Providing information prior to downloading resources
US11087359B1 (en) Immersive content items
WO2007034236A2 (fr) Systemes et procedes permettant de gerer l'affichage de liens publicitaires conjointement avec de resultats de recherche dans un systeme de moteur de recherche
US20140310093A1 (en) Dynamic reallocation of content item blocks
US20150356671A1 (en) System, method, and apparatus for automated cost of sale bidding

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13760892

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2866887

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 2015500616

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2013232015

Country of ref document: AU

Date of ref document: 20130314

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20147028954

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 13760892

Country of ref document: EP

Kind code of ref document: A1