I had observed some times that google adsense displays only public service ads for quite some time though the topic in those pages have high relevant ads. Why is this? Can some one tell me?
There are many possible reasons: - not enough ads for your content - "Stop words" in your content - lack of Privacy Policy (they seem to be slowly "discovering" sites without PPs and stopping ads being served)
Google need some time to choose ads for your page that match your keywords.So public ads will be displayed before google find it.