How to prevent users of your app with admob click bombing?

I think someone is clicking my ads intentionally or just tripping since November to January i’m losing a lot of earnings for invalid activities . Maybe its not a big amount but in my country its big. I just have 1 banner at the bottom it is not prone for accidental clicks.
FYI: My app is not an earning app.

Can i use this image not to show the ads anymore to the person who clicked the ad ?

1 Like

i try this method, and it kind of works for me,
enable the eCPM floor in your admob panel and set it as the image below,

higher price = less advertisement
Lower price = more ads,

this way users will not get too many ads


I think the best thing to do is counting clicks and if it goes over a certain number show to the user an alert… if he continues clicking he will be banned


With “banned” i mean that on app initialize a full screen non dismissable popup, which explains why the user got banned, appears


you can also file a report to google about the invalid activity of your ad unit, so google will not ban your account or application

"ban your account " ban my account ? which is not my fault. :slight_smile: i will try @techcvr for ecpm and counting clicks to notify user

oh shoot… i forgot to type ‘Not’. my bad… :rofl:

–previous comment edited–


This block “ad opened” really mean the ad was clicked? I thought it meant the ad was showing on screen,not that the user clicked the banner.

Yes its different. Enable/load ad shows the add on the screen.

@techcvr no worries i know it’s a typo error :slight_smile:

i think a good solution is, to load the ads only if the user is not on a black list or so. Make a list in firebase for user which are clicked to much on your banners or so. The app should check, before load the ads, if the user id or so is on the black list. If the user id is on the black list your ad does not load any ads for him.
I think this is a simoke method to check if the user is allowed to see ads. And to put the usr automiatic on the black list make a counter. if the user clicks 3 times in 1 hour or so on your ad, he get at first a warning. If he clicks the next 48 hour again on a ad he will come on a ban list and you can write google a mail with the email adress of the user before google block your accout.


if you are using interstitial ads then you can simply enable the ad frequency capping your ad settings like the image below.


i can implement this method to banners as well by using timers and click counter.

can you post a sample blocks "if the user clicks 3 times in 1 hour or so on your ad, he get at first a warning. If he clicks the next 48 hour again on a ad he will come on a ban list " without firebase just within the app. if its ok.


i think you cant use timer with admob ads, its against google policy…

timer for the 1hour not for the admob component

1 Like

it is not allowed to start the ad with a timer but to check if the people click in one hour a more than 3 times on the ad is allowed, why not

1 Like

@plang58 @techcvr @FUTUREDEV can you take a look at this?
i followed this Button Click Count - #7 by Taifun

testuserblock.aia (4.0 KB)

this my first time to use tinydb i will using firebase soon :slight_smile:

i would make it so:

2 variables

  1. global ad to true
  2. global click to 0

when ad opend then do.
use a if block
if timer = enabled then do
set global click to global click +1 and
and use a if block
if global click= 3 then do
set global ad to false

when screen initialze the do
use a if block
if global ad = true than load admob …
and set timer for showing ads to true (1 hour or so)

you can play around with the tiny fb to safe the global click into it or safe it into a online db. when screen initoialze set global click to load tinydb global click.

You have to setup it on your app how you need it like on the way you load ads. at screen initialze or maybe when you load a layout or so.

i hope i could help you with that. You should learn hot to work with tiny db and how to count clicks

1 Like

i just finished this i also used this tutorial from Italo

Thank you sir @plang58 i will try to do what you said. I have learned something new today :+1:

1 Like

The operation + cannot accept the arguments: , [java.util.GregorianCalendar[time=1549203116831,areFieldsSet=true,lenient=true,zone=Asia/Manila,firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2019,MONTH=1,WEEK_OF_YEAR=6,WEEK_OF_MONTH=2,DAY_OF_MONTH=3,DAY_OF_YEAR=34,DAY_OF_WEEK=1,DAY_OF_WEEK_IN_MONTH=1,AM_PM=1,HOUR=10,HOUR_OF_DAY=22,MINUTE=11,SECOND=56,MILLISECOND=831,ZONE_OFFSET=28800000,DST_OFFSET=0]], [20000]
Note: You will not see another error reported for 5 seconds.

i encountered this error?

put this work like this plus one instead of zero