Skip to main content

A Closer Look at Google AdSense

The blogging fad had been hot like pancakes in the office , everyone seems to be interested on it ( just exaggerating ) . One of the common topics that just pops out everytime is AdSense . You might have noticed most of the blogs now have AdSense ( if your generous enough please click on my Ads LOL ) . Here is a primer on how to interpret your AdSense report . Im not an expert on the field ,as I always say , I just wanted to share what Google gave me .

Basicaly , the income you get from the tower block is the sum of all the values of each click, less Google's share. That is, it is calculated using the following formula:
Earnings = Click1 Cost + Click2 Cost + Click3 Cost +(...etc) - Google's Share

Everyday , google gives you a report about your AdSense and it may look something like the one below

Page impressions 50
Clicks 2
Page CTR 4.00%
Page eCPM $6.60
Earnings $0.33

Page Impressions (50)

This is simply a count of the number of times adverts have been displayed on your page. It includes occasions when your page has been displayed in search engine caches, so the count may not match your log files exactly. It counts pages not ads - if you had more ad units, link units or referral units on the page, then the page impressions would still be 50.

Clicks (2)

This is simply a count of the number of times that any advert has been clicked on the page - ie: 2 clicks.

Page CTR (4.00%)

This is a derived number: "Click Through Rate". There are often many different ways of calculating derived numbers, but in this example it is most easily and accurately produced using the calculation:

CTR = 100 x Clicks / Page Impressions

In this case the calculation is:

CTR = 100 x 2 / 50 = 4.00%

This the rate of clicks per hundred, a figure often used for comparing performance of different ad placements on a page.

eCPM ($6.60)

This is another derived number: "effective Cost Per Thousand" (M is the latin symbol for a thousand). It is often used for comparing ad placements and overall performance of ads or pages. It is calculated using the formula:

eCPM = 1000 x Earnings / Impressions

In this case, the calculation is:

eCPM = 1000 x $0.33 / 50 = $6.60

The eCPM metric provides an estimate of how much revenue you can expect to earn for every 1000 page impressions. For example, if you serve 10,000 page impressions and earn $40, your eCPM is $4. If page impressions increase to 30,000, you can predict that you'll earn $120 given the $4 eCPM.

Earnings ($0.33)

This is the amount of money that you will be paid by Google, at some point in the future, for the clicks. The calculation is:

(The sum of all the click values) x (Your percentage rate)

Your percentage rate is only known to Google, but if we assume a 70% payment to you, the calculation is:

Earnings = ($0.34 + $0.13) x ( 70 / 100 ) = $0.329
($0.329 is rounded to two decimal places in the report, to $0.33)

Assumption :
$0.34 the amount the first advertiser pays for the ad you first clicked.
$0.13 the amount the second advertiser pays for the ad you next clicked.
Only Google knows how much does the ads cost and it also depends on the location of the ads.

So there , a primer on what the parameters are . There are lot of articles in the internet that describes these concept further . Perhaps if you want to dig deeper , try visiting the official adsense blog or you could also click here and here for more information .


Popular posts from this blog

Hiding Unwanted Python Folders and Files in Visual Studio Code

Visual Studio Code is a universal editor and pretty good at it. However, the explorer view maybe cluttered with the automatically generated folders and files confusing developers. Python is no different. Below are example files and folders generated by Python.

The __pycache__ folder and *.pyc files  are totally unnecessary to the developer. To hide these files from the explorer view, we need to edit the settings.json for VSCode. Add the folder and the files as shown below:
Copy and paste the lines below :


renaming default namespaces for VSTO projects in VS2008

So here is the scenario , you are starting a VSTO project and decided that your default namespace is ExcelAddInTesterApp . You created the project and started coding the project. After several days , your boss called and said "hey marvin , make use of this namespace OurCompany.ExcelAddInTesterApp , we have to add our company name to it got it?" . You get back to your machine thinking its just a simple property just like any project you've been working on. So you right clicked the VSTO project and hit properties . Boom! What the F@#$? The default namespace textbox is disabled!!!!

I've been through this and I googled for ways to do it and ended up with a blog from a Microsoft MVP telling me it can't be done because it is disabled. Then I thought of Refactoring, the beauty and grandeur of the renaming process. I selected the namespace and hit the refactor menu hoping that this would solve the problem . Unfortunately , it did not rather it displayed the message box …

Automatic Properties and Object Initializers in .Net 3.5

With the release of .Net 3.5 alongside with Visual Studio 2008 , new enhancements was again introduced . Some maybe well pronounced such as the inclusion of WCF, WPF , LINQ in .Net 3.0 and some just came unnoticed. If you have been accustomed of using a particular method or technique in implementing a certain code in .Net 2.0 , because of backward compatibility , you may not even notice that there are new ways of implementing it in .Net 3.5.

Here are two new concepts in .Net 3.5 that a developer may not notice ( at least in my opinion ) : Automatic Properties and Object Initializers . To illustrate these two , I am going to present the pre-.Net 3.5 way (.Net 2.0) and the .Net 3.5 way in creating a simple class with simple properties.

Automatic Properties

Creating a class can be tedious , especially when working with a list of properties , . One way to get around having to type the code for a private field and its public property getter and setter is to use a refactoring tool. However, …