Advertisements are, currently, the lifeblood of many “free” online services, including many search engines. In response to receiving a search query from a user, the search engine generates a search results page that includes one or more advertisements. Of course, advertisers want to target their advertisements (and, correspondingly, their advertising budget) to those users who are most likely to engage the services or purchase the products of the advertiser. This desire was a primary motivator in moving search engines from charging advertisers on a CPM (cost per 1000 impressions) basis to a CPC (cost per click) basis. While, for the advertiser, the CPC model is a substantial improvement over the CPM model, a click-through on an advertisement (which generates an advertisement charge to the advertiser by the search engine) takes the user to the advertiser's landing page but does necessarily translate into a transaction where the user purchases (or otherwise engages) the advertisers products/services. Even though an advertiser would be more inclined to pay more for advertisements when the user engages with or completes a transaction with the advertiser, search engine providers are, naturally, reluctant to operate on this basis since the search engine provider would need to rely entirely on the advertiser to report whether or not a transaction was completed.
According to embodiments of the disclosed subject matter, a method for responding to a search query from a user is presented. In this embodiment, in responding to receiving a search query from a user, the user is presented with a search results page. The search results page includes both search results (relevant to the search query) and one or more advertisements. At least one of the advertisements is a specially configured advertisement that includes a corresponding app. The app is initiated through a user-actionable control in the advertisement. Unlike other advertisements that cause navigation to an advertisers landing page, the corresponding app executes within the context of the browser view/search results page. The corresponding app may be designed so that a transaction may be completed through its execution (the particular transaction depending upon the design of the app.)
According to additional embodiments of the disclosed subject matter, computer-readable media bearing computer-executable instructions are presented. When executed on a computer, the instructions carry out a method for responding to a search query from a user is presented. In this embodiment, in responding to receiving a search query from a user, the user is presented with a search results page. The search results page includes both search results (relevant to the search query) and one or more advertisements. At least one of the advertisements is a specially configured advertisement that includes a corresponding app. The app is initiated through a user-actionable control in the advertisement. Unlike other advertisements, the corresponding app executes within the context of the browser view/search results page. The corresponding app may be designed so that a transaction may be completed through its execution (the particular transaction depending upon the design of the app.)
According to still further embodiments of the disclosed subject matter, a computer system for presenting search results responsive to a search query is presented. The computer system includes a processor and a memory. The processor executes instructions obtained from memory and, in conjunction with additional components of the computer system respond to a user's search query. The additional components include, but are not limited to: a search results retrieval component for obtaining search results from a content index in response to the search query; a network communication component that enables communication between a user computer and the computer system; an advertisement services component for selecting advertisements to be incorporated in a search results page in response to the search query; and a search results page generator that generates a search results page responsive to the search query based on the search results and advertisements obtained by the other components, and returns the generated search results page to the user via the network communication component. One or more of the advertisements includes is an advertisement that includes a user-actionable control for executing a corresponding app within a user's browser context.
The foregoing aspects and many of the attendant advantages of the disclosed subject matter will become more readily appreciated as they are better understood by reference to the following description when taken in conjunction with the following drawings, wherein:
For purposed of clarity, the use of the term “exemplary” in this document should be interpreted as serving as an illustration or example of something, and it should not be interpreted as an ideal and/or leading illustration of that thing.
For purposes of clarity, a “search result” is data presented to a user in response to a search query from the user. Typically, a search result is a reference (or hyperlink) to content accessible to the user over a network. A search results page is a displayable collection of information generated by a search engine in response to a search query. One or more search results pages may result from a single search query. A search results page will include search results as well as advertisements. The search engine (alone or in combination with an ad selection service) will select one or more advertisements for each search results page. As will be discussed further, according to aspects of the disclosed subject matter, some of these advertisements may include apps that, if initiated by a user, will operate in conjunction with a service framework enabled through the search results page.
By way of definition for this disclosure, an “app” corresponds to an executable module that is associated with an advertisement. In general, an app is distinguished from an application program in that an “app” is an executable module designed to carry out a specific purpose. In addition to being devoted to a specific purpose, apps embedded or included with advertisements are often small in size (especially when compared with traditional application programs) as they are downloaded over the network, often at the time that a user activates the user-actionable control to initiate the app's execution.
Often, an app is reliant upon the presence of a service framework in order to operate. Apps may be written in any number of languages (including scripting languages) such as, but not limited to, C#, Java, JavaScript, AJAX, Flash, and Silverlight. According to aspects of the disclosed subject matter, as an app operates in conjunction with the service framework enabled through the search results page, the app executes within the context of the browser window that displays the search results page. Even so, an app may rely upon data and/or services that operate externally to the browser and/or user computing device, such as accessing data from a service operating at a remote networked location. An app is associated with an advertisement in that the app is embedded or included within, hosted by, or presented by the advertisement. Further still, the user-actionable control/mechanism for launching the app is similarly embedded or included within, hosted or by, or facilitated through the advertisement.
In regard to the user-actionable control that initiates or launches an app ebbed in (or otherwise associated with) an advertisement, while examples in the figures and description below suggest the use of a clickable button (though the use of a mouse or other pointing device), this is illustrative of one particular user-interaction paradigm and should not be construed as limiting upon the disclosed subject matter. User-actionable controls also include, but are not limited to, voice activated controls, touch-based controls (including touch, circling and/or other gesture based controls), other natural user interface (NUI) controls, and the like.
According to aspects of the disclosed subject matter, responsive to a search query a search engine will generate one or more search results pages. In addition to the search results in the search results pages, also included are advertisements, some of which include an app. A user can activate the app to interact with its features. As will be discussed further below, one of the features of the app (a key feature) is to complete a transaction. As a user completes a transaction, the advertiser is charged a transaction cost by the search engine. This “transaction cost” charged by the search engine is an advertising cost associated with the completion of the transaction, and is not the cost that the user may incur for completing the transaction.
Turning now to the figures,
Those skilled in the art will appreciate that a search engine 110 corresponds to an online search service hosted on one or more computers on, or computing systems distributed throughout, the network 108. Generally speaking, the search engine 110 is configured to receive and respond to search queries submitted over the network 108 from various users, such as the users connected to user computers 102-106. As already mentioned, in response to receiving a search query, the search engine 110 obtains search results information related and/or relevant to a user's search query (as defined by the terms of search query.) The search results are typically references (largely in the form of hyperlinks) to relevant/related content available from various target sites (such as target sites 112-116) on the network 108. The search results may also include other information such as related and/or recommended alternative search queries, data and facts regarding the subject matter of the search query, products, and/or services related/relevant to the search query, and the like. Also included with the search results are advertisements, including advertisements that include apps. These advertisements are selected by the search engine 110 or in conjunction with an advertisement service (not shown). The search engine 110 generates one or more search results pages responsive to the search query based on the search results information. The search results pages include the selected advertisements.
As those skilled in the art will appreciate, target sites, such as target sites 112-116, host content that is available and/or accessible to users (via user computers) over the network 108. The search engine 110 will be aware of at least some of the content hosted on the many target sites located throughout the network 108, and will store information regarding the hosted content of the target sites in a content index. The search engine 110 draws from the content index when obtaining search results in response to receiving a search query. As shown in
In addition to hosting content, the target sites may also be advertisers and offer advertisements that include apps. For example, the shopping site 114 may be advertising a particular brand of item offered at its site, and the corresponding advertisement may include an app that enables a user to identify particular items and conclude a purchase of the particular item—all without leaving the context of the current search results page. Advantageously, because the search engine 110 provides the framework through which the transaction is conducted and can, therefore, track the transactions, the search engine (or its counterpart advertising service) is able to work with advertisers on a cost-per-transaction basis, i.e., charging the advertiser upon the completion of a transaction.
Suitable user computers for operating within the illustrative environment 100 include any number of computing devices that can communicate with the search engine 110 or target sites 112-116 over the network 108. In regard to the search engine 110, communication between the user computers 102-106 and the search engine 110 include both submitting search queries and receiving a response in the form of one or more search results pages from the search engine 110. User computers 102-106 may communicate with the network 108 via wired or wireless communication connections. These user computers 102-106 may comprise, but are not limited to: laptop computers such as user computer 102; desktop computers such as user computer 104; mobile phone devices such as user computer 106; tablet computers (not shown); on-board computing systems such as those found in vehicles (not shown); mini- and/or main-frame computers (not shown); and the like.
Turning now to
In the example shown via
In this example of
In the example represented by
As can be seen by the examples above, in the present context a “transaction” does not necessarily mean a purchase or financial transaction. For many advertisers, a “transaction” is completed when the user interacts with the advertiser's app, when the user provides sought-for information or completes a particular task, or completes a purchase. Examples of other “transactions” may include, but is not limited to, establishing a personal preference to a particular vendor, subscribing to a newsletter or blog, creating a personal account with the advertiser, providing personal information (such as an email account), and the like.
Turning now to
Turning now to
At decision block 606, the determination is made as to whether the user selection/click was to launch the corresponding app or simply whether the user desires to click through to the advertiser's landing page. As discussed above, the control is typically provided to the user such that the user can initiate an app. However, like clicking on the advertisement but not on the control corresponding to the app a user can “click through” to the advertiser's landing page as is customary in the art. Accordingly, if the user selection was simply a “click through” selection, at block 608, the advertiser is charged for the click through according to a typical CPC model. At block 610, the hyperlink is followed to the advertiser's landing page. Thereafter, the routine 600 ends.
Alternatively, if at decision block 606 the user selection/click was to launch the corresponding app, the routine 600 proceeds to block 612. At block 612, the corresponding app that the user selected is executed with in the context of the browser view. Execution of the app continues until at some point a determination can be made as to whether the user completed a transaction. In one embodiment, this occurs when the app closes its execution.
As discussed above, a transaction does not necessarily mean a financial transaction or purchase but, rather, implies achieving the goal of executing the app. If, at decision block 614, the user completed a transaction (as defined by the goal of the app), the routine 600 proceeds to block 616. At block 616, the advertiser is charged for a completed transaction under the CPT model. In at least one embodiment, the charge to the advertiser for the completed transaction also includes a charge for a click representing a hybrid CPC/CPT model. Thereafter, the routine 600 terminates.
Returning again to decision block 614, if the user did not complete a transaction, the routine 600 proceeds to block 618 where the advertiser is charged for a “no” transaction. In one embodiment, a “no transaction” may mean that the advertiser is charged for the amount corresponding to a click. Alternatively, if the user fails to complete a transaction, the advertiser may be charged a “no transaction” charge. According to various embodiments, this “no transaction” charge may be substantially less than a completed transaction charge but could be more than a “click” charge. After charging the advertiser a “no transaction” the, the routine 600 terminates.
As those skilled in the art will appreciate, routines or methods, such as routines 500 and 600, are described in terms of steps to carry out the functionality of the disclosed subject matter. It should be appreciated, however, that the steps identified in these routines are logical steps and may or may not correspond to actual steps carried out in an actual implementation of the disclosed subject matter. Moreover, those skilled in the art will appreciate that the individual steps, themselves, are often comprised of many discrete instructions. On a suitably configured computer or computing device, these instructions are retrieved from a memory/instruction store and executed by a processor. Execution of these instructions may or may not be carried out in conjunction with other physical and/or logical components of the computer.
While various aspects of the disclosed subject matter are expressed as steps in routines or methods, the functionality of these various aspects may also be embodied in computer-readable media. As those skilled in the art will appreciate, computer-readable media can host computer-executable instructions for later retrieval and execution, including instructions for carrying out the functionality of the subject matter disclosed in this document. When executed by a processor on a computing device, the computer-executable instructions carry out various steps or methods. In this regard, computer-readable media may serve as the memory/instruction store mentioned above. Examples of computer-readable media include, but are not limited to: optical storage media such as digital video discs (DVDs) and compact discs (CDs); magnetic storage media including hard disk drives, floppy disks, magnetic tape, and the like; transitory and non-transitory memory such as random access memory (RAM), read-only memory (ROM), memory cards, thumb drives, and the like; cloud storage (i.e., an online storage service); and the like. While it is possible to execute instructions obtained via carrier waves and/or propagated signals, for purposes of this document, computer-readable media expressly excludes carrier waves and propagated signals.
Turning now to
The search engine 110 also includes a network communications component 706 through which the search engine 110 sends and receives communications over the network 108. For example, it is through the network communication component 706 that the search engine 110 receives search queries from users in the user computers, such as user computers 102-106, and returns one or more search results pages responsive to the search queries. The search engine 110 also includes additional components such as, but not limited to: a search results retrieval component 708; an add services component 710; an advertisement store 716; a content index 714; a page generation component 718; and an app services framework 712. Regarding these additional components, it should be appreciated that these should be viewed as logical components for carrying out various functions of suitable configured search engine 110. These logical components may or may not correspond directly to actual and/or physical components. Moreover, in an actual embodiment, these components may be combined together or broke up across multiple actual components.
The search results retrieval component 708 retrieves and/or obtains search results relevant to a user's search query from the content index 714. The content index 714 is something of a misnomer in that for many search engines this index typically stores references to content, not the content itself. However, the content index 714 is not limited to storing just references to content and may also store the actual content. The advertisement services component 710 (which may be part of the search engine 110 as illustrated in
Also included in the illustrated search engine 110 is a search results page generator 718. The search results page generator 718 generates one or more search results pages from the obtained search results and the selected advertisements. Also included (or referenced) in the generated search results pages is the app services framework 712. The app services framework 712 provides the services that each app within an advertisement relies upon to execute within the browser view context.
As mentioned above, the app services framework is included in a search results page or made available through the search results page to any apps within advertisements.
Though the exemplary browser context 800 illustrates just the search results page 400 and the app services framework 712, those skilled in the art will appreciate that there are many other components, both logical and actual, to the browser view context. The discussion was limited to the search results page 400 and the app services framework 712 for clarity of discussion.
While much of the description regarding embedding or including an app within an advertisement, the disclosed subject matter is not so limited. In various alternative embodiments, an advertisement displayed in conjunction with a Web page may include an embedded app.
While various novel aspects of the disclosed subject matter have been described, it should be appreciated that these aspects are exemplary and should not be construed as limiting. Variations and alterations to the various aspects may be made without departing from the scope of the disclosed subject matter.