Dropping ad revenue

We are in the same boat as @eesty, evaluating a switch away - as unfortunate as it is, for the reasons in the op.

We moved from SMF to Discourse 3 years back. Our biggest impact has been on ad revenue that dropped to 10% of what it was and never rose.

I love discourse absolutely - elegant, smooth, modern, clever. I don’t even have a single technical glitch, it just works and works well. But it is increasingly about sustaining the forum, head over heart. I really hope there is a solution to get the revenues back.


This is weird … can you give us your URL to review your site?
Now the ads are showing just fine on Discourse Forums.


I am also interested to know more about this subject and to try to understand why this is happening. Do people with this problem show ads between posts, or just one per topic ? If they only show one per topic, I can totally understand that ad revenues is divided by 10 (it would make sense that people were on average displaying 10 pages of a topic, which end up being only one single page with discourse)

But if you actually display as much ads as before, by putting them between posts, where could this problem come from ?

1 Like

I believe the ad coverage on all pages other than home page is less, i.e., too many blank ads. I wonder if discourse generates the page differently/too quick for ads to be generated or something?

I spun up my old forum backup on a separate url to test and the coverage in that forum software seems to be a lot higher.

I have provided an admin login to the discourse team to take a look for a couple of weeks until today, along with ad revenue stats. I shall dm you my site url. Thanks.


With discourse, what I’ve learnt over time is that a subscription model works better than ad revenue.
If you have loyal users, they’ll be willing to support you with donations and that will be more than enough to sustain the forum. Have you tried discussing this openly with your community?


Thanks, that is certainly something we will try.

Chandra gave me privately his forum’s URL (thanks !) and I surfed it a little. It seems to me (as he said) that when I enter a topic with a lot of messages, the 2 or 3 firsts ads on the page work fine, but after that, they appear blank (“advertisement” appears, but with no ad). Seems to be OK with what was loaded initially of the page when entering the topic, but not what gets loaded afterwards when scrolling down. Also, if I go down enough in a topic, and go up again, the firsts ads working before are then also often blank.

This doesn’t seem to happen here on meta. But CodeFund seems to be used here, whereas Chandra uses Google !? Is this linked to Google and indeed related to the way discourse loads pages ?


I am also having this issue with google adsense. Are you using any cloudflare service?


Maybe you and @Chandra could try to temporarily switch to CodeFund to see if that “solves” the issue. It would already confirm the issue is specific to Google adsense.


No, I have no cloudflare.

Given my forum is nothing to do with code/devs, do you believe codefund ads will perform at all?

1 Like

No, I don’t think using CodeFund would be any good, but I meant it just for TESTING purposes. To try to better diagnose where the problem is coming from and be able to solve it. Would it be the same with CodeFund or not ? (the problem doesn’t seem to occur here on meta !)

1 Like

Are any of you seeing blocked scripts in the browser console? It may be CSP related if that’s the case.


Actually it is due to lazy loading as far as I know because the ads in viewport do render and if a user is scrolling the first few will also render. The problem comes in the ads that’ll appear … Say 25 posts later in a topic.


Would you have ideas about how this could actually be solved ?

1 Like

I don’t really know if that’s an issue with Discourse or the Ad service. So I’ll suggest to everyone try experimenting with a house ad (a static image) if that does load fine, the problem will be ad code itself. If the image fails to load, there is something that needs fixing in discourse but I’d guess disabling lazy load can maybe help in that case.


This may not be the case, because we’re using the google api the way they recommend when a new ad should be added. Create the container, ask google to fill it.

That said, there are other factors at play with ads, like ad tags for the niche content of the forum and whether Adsense has enough paying line items for the slot with a blank ad that match the criteria set.

For niche forums, paying ad slots may not always be available, and thus blank ad spots appear.

Other individuals using ads outside Discourse also complain of the blank ad issue, so this isn’t entirely tied to only Discourse.

If you do have a blank ad showing on your community, I have been able to find solutions by checking my browser console for errors and acting on these errors. If there are no errors, check your Adsense dashboard for why blank ads are displaying.


Blank ads is a very common issue. It seems like it is beyond my understanding. or maybe google just doesn’t like the nth placement.

1 Like

I would guess this would be a problem with big topics as it would load all the topic at once when entering it (time + lot to download), but I get your point. It may be great for testing purposes (one more thing people having the problem can try to better understand where it comes from).

Great idea. It may be even easier than to test with CodeFund.

All you said is very helpful. Maybe it is Google that doesn’t send an ad.

I would love to hear some return from the tests done by people having the problem.


I tested your site with Vivaldi (because now I’m on Linux) and everything is fine. All ads are displayed well. When you see a “blank ad” remember that Google has strange behavior regarding “many ads per page”. Some time ago, with Adsense you should not be placed in more than 3 ads per page. At this point that changed, but the Adsense bot (if you use automatic Adsense) doesn’t place ads everywhere. So there is such blank advertising.


That is not how Discourse works, however. Only the visible section of the topic is loaded.