The biggest "secret" to AdSense is constant testing of small and bigger changes.
If you for example test an AdSense Ad with medium font against big font and you get a 0.4% increase in CTR with the big font, then this translates into more money day after day.
Do you catch my drift?

So here is a list of things you definitely should test on your websites:

  • Ad Formats: Compare for example a Large Rectangle with a Medium Rectangle, or remove your old Leaderboard banner and put a Medium Rectangle somewhere instead.
  • Placements: Even though you might think you found the optimal placements try different placements once in a while. I thought this myself for over a year before I changed something and with that I doubled my earnings within a month. Never stop experimenting.
  • Number of Ads: This is something where you need to weight your earnings against your visitors user experience. I personally drop very low performing Ads to increase my visitors user experience. However you'll most likely make more money if you display more Ad Units on each page. Find the perfect balance is the key. Just remember that if you are displaying Ads you are running a business, treat it as such
  • Don't forget Link Units: If you did not implement them before try them. They don't bring as much as normal Ad Units but they do bring in extra money. And due to their size they can go in places where normal Ad Units would not fit.
  • Colors: Blending is key however over-blending will hurt you. Try experimenting with Link colors (standard blue still gets clicked on the most, so if it somehow fits your theme, then use it) and see which color works best for your website
  • Borders: In general Ads with borders perform far worse then without so try not to use them whenever possible. But hey, just test it, your website might just be an exception
  • Font Size: Yes, even the font size makes a difference. Compare Medium vs. Large and see what works best. Use Small Font only, if your website uses a small font size as well for blending purposes.
  • Text vs. Image: In most cases displaying Text&Image Ads in an Ad Unit will bring you the most money but test it for yourself. Create 3 Ad Units, one with Text only, one with Image only and one with Text&Image Ads and see which performs best over time.

How should you test these things?

The most elegant way is to install an Ad Server like DFP Small Business.
It's free and once set up you can also sell Advertising to third parties later.
Click here for a Tutorial on how to set up and manage DoubleClick for Publishers (DFP) Small Business as your Ad Server

With an Ad Server you can test all the above by running split tests.
More about Split Tests here: How to optimize AdSense with Split Tests

The most important thing when testing different AdSense settings is that you need to make it representative. This means that you need to run the test for a longer time and have enough Ad Impressions so that the differences you see are not within the normal fluctuations that AdSense does every day. I can't really tell you for how long you need to run a test or how many ad impressions are required but I'd suggest that you should at least run each test for a week or more.

What is your approach on testing?