Google AdSense, commonly just AdSense, is an ad serving program run by Google. Website owners can enroll in this program to enable text, image and, more recently, video advertisements on their sites. These ads are administered by Google and generate revenue on either a per-click or per-thousand-impressions basis. Google is also currently beta-testing a cost-per-action based service.
Currently, AdSense uses javascriipt code to incorporate the advertisements into a participating site. If it is included on a site which has not yet been crawled by the Mediabot, it will temporarily display advertisements for charitable causes known as public service announcements (PSAs). (The Mediabot is a separate crawler from the Googlebot that maintains Google's search index.)
Many sites use AdSense to monetize their content. AdSense has been particularly important for delivering advertising revenue to small sites that do not have the resources for developing advertising sales programs and salespeople. To fill a site with ads that are relevant to the topics discussed, webmasters implement a brief script on the sites' pages. Sites that are content rich have been very successful with this advertising program, as noted in a number of publisher case studies on the AdSense site.
Some webmasters work hard to maximize their own AdSense income. They do this in three ways:
They use a wide range of traffic generating techniques including but not limited to online advertising.
They build valuable content on their sites which attracts AdSense ads which pay out the most when they get clicked.
They use copy on their websites that encourage clicks on ads. Note that Google prohibits people from using phrases like "Click on my AdSense ads" to increase click rates. Phrases accepted are "Sponsored Links" and "Advertisements".
The source of all AdSense income is the AdWords program which in turn has a complex pricing model based on a Vickrey second price auction, in that it commands an advertiser to submit a sealed bid (not observable by competitors). Additionally, for any given click received, advertisers only pay one bid increment above the second-highest bid.
 How AdSense works
In order to put ads on a web page, the webmaster inserts javascriipt code into the page.
Each time a page with an AdSense tag is visited, the javascriipt creates an iframe and sets its "src" attribute to the page's URL.
For contextual advertisements, Google's servers use a cache of the page to determine a set of high-value keywords. If keywords have been cached already, ads are served for those keywords based on the AdWords bidding system. More details are described in the AdSense patent.
For site-targeted ads, the advertiser chooses the page(s) to display ads on and pays based on CPM (cost-per-thousand-impressions, or the price advertisers choose to pay for every thousand ads displayed). 
For referrals, Google adds money to the advertiser's account when visitors either download the referred software or subscribe to the referred service.
Search ads are added to the list of results after a user preforms a search.
Since the javascriipt is sent to the web browser when the page is requested, it is possible for other site owners to copy the javascriipt into their own web pages. To protect against this type of fraud, AdSense customers can specify the pages on which ads should be shown. AdSense then ignores clicks from pages other than those specified.
Some webmasters create sites tailored to lure searchers from Google and other engines onto their AdSense site to make money from clicks. These "zombie" sites often contain nothing but a large amount of interconnected, automated content (e.g.: A directory with content from the Open Directory Project, or scraper sites relying on RSS feeds for content). Possibly the most popular form of such "AdSense farms" are splogs ("spam blogs"), which are centered around known high-paying keywords. Many of these sites use content from other web sites, such as Wikipedia, to attract visitors. These and related approaches are considered to be search engine spam and can be reported to Google.
MFA (Made For AdSense) is a site or page with little or no content, but filled with advertisements so users have no choice but to click on ads. Such pages were tolerated in the past, but due to complaints Google now disables such accounts.
There have also been reports of Trojans engineered to produce fake Google ads that are formatted to look like legitimate ones. The Trojan Horse apparently downloads itself onto an unsuspecting computer through a web page and then replaces the original ads with its own set of malicious ads.
Due to concerns about click-fraud, Google AdSense has been criticized by some search engine optimization firms as a large source of what Google calls "invalid clicks" in which one company clicks on a rival's search engine ads to drive up its costs. Some publishers that have been blocked by Google complain that little justification or transparency was provided. Webmasters who publish AdSense can receive a lifelong ban without justification. Google claims they cannot "disclose any specific details" on fraudulent clicks since it may reveal the nature of their proprietary click-fraud monitoring system.
To help prevent click-fraud, AdSense publishers can choose from a number of click-tracking programs. These programs will display detailed information about the visitors who click on the AdSense advertisements. Publishers can use this to determine if they have been a victim of click-fraud or not. There are a number of commercial tracking scripts available for purchase.
The payment terms for webmasters have also been criticized. Google withholds payment until an account reaches US$100, but many small content providers require a long time – years in many cases – to build up this much AdSense revenue. These pending payments are recorded on Google's balance sheet as "accrued revenue share". At the close of its 2006 fiscal year, the sum of all these small debts amounted to a little over $370 million, cash that Google is able to invest but which effectively belongs to webmasters. However, Google will pay all earned revenue greater than $10 when the AdSense account is closed.
Google recently came under fire when the official Google AdSense Blog showcased the French video site Imineo.com. This site clearly violates Google's AdSense Program Policies by displaying AdSense alongside explicit adult content. Typically, sites displaying AdSense have been banned from showing adult content.
In addition, Google has been criticized for claiming that they created, or had a bigger part in creating, AdSense than they really did. Most recently, Gokul Rajaram claiming he was the "godfather" of AdSense caused some controversy. Another Google employee who took credit for AdSense was Susan Wojcicki.