CPM - Cost Per 1000 Impressions
CPM stands for Cost Per Thousand (M stands for the Roman Numeral " M " for thousand). The publisher paid rate is based on units of 1,000 banner impressions.
For example, if the CPM is $5 for a web site, it means the advertiser pays $5 for each 1000 display of that Ad in the site. If the Ad is displayed 5000 times in the web site, the Advertiser pays $25.
In CPM model, the webmaster will get paid even if nobody see or read the Ad. So, most webmasters will try to display CPM ads in the bottom of the page or some un important location of the site. But in most of the cases, the advertisers will demand that the Ads should be visible in the page without scrolling.
CPC - Cost Per Click
In this model, the publisher(webmaster of the site which displays the Ad) will get paid from the advertiser each time a visitor clicks on the Ad in their web site.
If nobody clicked on the Ad, there is no pay even if the Ad was displayed a million times. Because of this, most webmasters will try to display CPC ads in the most prominent place in the page so that viewrs will see the Ad and try to click them.
The CPC can vary from $.01 to $10, depending on the quality of the web site, budget of the advertiser and the type of the product being advertised.
Webmasters will tend to click on the Ads in their site (fraud clicks) so that they get paid for each of their clicks. But most of the advertisers are smart - they will not count the repeated ads from same IP Adress.
CPA - Cost Per Acquisition
In this model, just a click is not enough. Users must click the Ad, go to the advertisers web site and take some action like register as a member, buy some product, sign up for a newsletter etc. This model is the highest paid model. A webmaster can get even several hundred dollars in some cases if the user go and buy some expensive product from the Advertiser's web site.