Home >
Paid Traffic Sources >
Facebook & Instagram
Offer iFrames on Facebook (48)
05-27-2011 08:59 AM
#1
tijn (Moderator)
Offer iFrames on Facebook
Wouldnt it be awesome if you could do this!!

http://apps.facebook.com/todayswinners/
Instead of linking your visitors from your FB ad to an external site, keep them on facebook!
This guide will show you how you can create your own Facebook Application and embed "any" content you want within Facebook.
Be carefull though to stay within the terms of facebook. They ban apps very quickly that dont!
The benefit?
Your users will trust the content more and are more likely to follow through on your "call to action".
Heres the example
Lets say I want to promote an iphone 4 email submit offer.

Here is the facebook app with the offer embedded
http://apps.facebook.com/todayswinners/
Here are the steps to make that happen
1. Setup your site
Create a folder on one of your domains. This folder will include the iframed page.
Ill give you the code later. For now just create an index.php file in that folder with the test content listed below.
Test in your browser that this page is loading fine.
Code:
http://yourdomain.com/folder/
2. Become a developer
Now that you have your basic site setup you need to setup your app.
Dont worry - ill show you how and its not that difficult.
Ill even give you the sourcecode for the app at the end of this post.
Go to this page on facebook
http://www.facebook.com/developers/
If this is your first app, you need to become a developer first by accepting the App permissions.
3. Create & configure your app
Next, click the "+ Setup a New App" to start creating your application
First thing is to choose the title of your app. Note that if you decide to create ads on facebook for your app that this is the title of the Ad!
Dont worry - its easy to change later.
Also accept the facebook terms & conditions (read it if you dont want to get banned)
Then click create application after which your asked to enter a quick CAPTCHA to make sure your not a bot.
Next you need to enter a bunch of information in the Edit your app screen.
Here are the fields you need to complete for this simple app example:
About
- Description: Enter a simple description about your app
- Icon: upload a 16x16 icon
- Logo: upload a 75x75 logo
- Email: enter your email address
You dont need a privacy policy / terms of service to test your app, but i recommend you create and add it when you are starting to drive significant traffic.
Facebook have automated bots that check apps without privacy policies and will ban them much quicker if you dont have this.
Under the manage user section you can add more users. I recommend that you at least add 1 other person as Admin in case your profile gets banned. That way you can always keep access to the insights and data.
Next - click on the Website tab.
Website
- Site url: note down the main section url referred to under the end of Step 1 (
http://yourdomain.com/folder/). Make sure this end with a folder and not an actual page like index.php
- Site domain: enter yourdomain.com
Facebook integration
- Canvas page: this is important as it will be the url to your app page. You wont be able to use capitals, spaces and words like FREE. (Secret tip - research I did a while back identified that facebook app pages rank very very well in Bing)
- Canvas url: enter here the same url as the Site url in the previous step (
http://yourdomain.com/folder/)
- iFrame size: click auto resize
I wont cover Page Tabs in this tutorial, but Ill make sure I come back and show you how to use that cause once your app is setup, using facebook pages as your landing page will be considerably quicker and easier to setup.
Thats all - just press "Save Changes" and if you did everything ok, you should see something like this:
4. Test whether your app is loading
Before you continue, make sure your app is loading fine.
Just go to your Canvas Page url - in the case of this app its:
http://apps.facebook.com/todayswinners/
You should see your facebook interface loading with the words "app canvas page" in the body. If you clicked the link above you will see the offer. Make sure you load your own canvas url.
5. Setup your code
Open up your index.php file on your server and copy and paste the following code:
[PHP]<?
$offer = 'http://yourofferurl.com';
?>
<html>
<head>
<title>Daily Winner</title>
<style>
html {
margin: 0;
padding: 0;
overflow: hidden;
}
body {
margin: 0 auto;
padding: 0;
height: 100%;
overflow: hidden;
float:right;
width: 760px;
}
#frame {
border: 0px;
margin: 0px;
padding: 0px;
width: 945px;
height: 550px;
overflow: hidden;
}
h1, h2 {
font-family: "lucida grande",tahoma,verdana,arial,sans-serif;
color: #444;
text-align: center;
}
</style>
</head>
<body>
<h1>Congratulations! You Are Todays Winner</h1>
<iframe id="frame" frameborder=0 src="<?= $offer ?>" scrolling="no" align="right"></iframe>
<h2>Features: HD Video Recording, Front and Rear Cameras, 9 x faster, FaceTime</h2>
</body>
</html>[/PHP]
This is just the core template.
Of course you can change this if your familiar with HTML, CSS and PHP.
What happens is that Facebook load this page into an iframe (blue line). The page shows some content, and creates another iframe (green line) which loads the offer URL. Then ive added some further content below it.
Ill walk you through the key sections now.
Offer URL
The URL to load into the 2nd iframe (green border) is set in the $offer valiable like so:
Code:
$offer = 'http://www.realdealgiveaway.com/rd_p?p=310133&c=51004-rdgipad2iphone4_728_hibrand&a=%25SUBID%25';
You can instead include in here your campaign URL from prosper or cpvlab and let it rotate different offers.
Page Title
The title tag doesnt matter for facebook as the page is iFramed and Facebook uses the App Title for the page title.
Style section
This page uses CSS styles to format the way the page looks. There are some important things in there to make sure no scroll bars are shown and the right content is visible on the app canvas.
Note that the app canvas is 760px wide.
To hide any scrollbars, you use "overflow: hidden" on the html, body and #frame elements.
This causes problems with most offer landing pages which are more like 800 or even 1200px.
The way to overcome this is to play with width and height settings of the #frame element.
Code:
#frame {
border: 0px;
margin: 0px;
padding: 0px;
width: 945px;
height: 550px;
overflow: hidden;
}
but set set the body width to 760px:
Code:
body {
margin: 0 auto;
padding: 0;
height: 100%;
overflow: hidden;
float:right;
width: 760px;
}
Depending on which section of the offer page you want to make visible in facebook, you set the float style to left, center, or right;
All other CSS formatting is really just for the look and feel and you can play around with those as much as you like.
iFrame html element
The last important section in the code is the inclusion of the iframe. To make sure it has no borders or scrollbars set frameborder=0 and scrolling=no.
Code:
<iframe id="frame" frameborder=0 src="<?= $offer ?>" scrolling="no" align="right"></iframe>
6. Choose and load your offers
Because the offer will be iframed, you need to make sure that it does not include any framebreaking code. You can check that on this site:
http://traffichoopla.com/FrameBreakerTest.php
Just make sure you enter the final url of the offer landing page and set it in index.php as the $offer variable mentioned in the previous section.
Code:
$offer = 'http://yourofferurl.com';
7. Tweak formatting of the iframe
Now load up your canvas url which looks something like
http://apps.facebook.com/todayswinners/ but with your app canvas title.
Its likely that you need to play around with the #frame width and height settings, and the 'float: right' setting for the body to ensure the right sections are visible.
Done!
Shout if anything is not clear or not working for you. Ill do my best to guide you and fix any issues you might have.
Cheers Stackers!
05-27-2011 09:35 AM
#2
The Angry Russian (Moderator)
TIIIGGHHTTT... Best part is after approval you can put in whatever you want on the back end.
Have you found this helps approval rates?
05-27-2011 10:08 AM
#3
Mr Green (Administrator)
My lord! That is an awesome tutorial. I've always had this in my to do list but never got round to it.
Would be great to split test a Facebook hosted lander vs your own hosted lander.
Great post!
05-27-2011 10:20 AM
#4
wildfing (Member)
i'm very surprised with this.... iv'e done it times before with framing inside apps on coupons / submits the lot... still fb seem to kain the app very very quick, but i'll look into it again
just for reference, stick to guidelines and tos - http://developers.facebook.com/policy/ and also http://www.facebook.com/ad_guidelines.php
05-27-2011 10:26 AM
#5
ppvnewbie (Member)
If you do to much shady stuff with this, do they ban your developer account as well?
05-27-2011 10:58 AM
#6
wildfing (Member)
No... first time around i think they just ban the app but i guess it's how against the tos it is. I tried one before with coupon related stuff and just had app banned.
If you were doing these spammy app's i.e msg friends / walls etc then yes you'll have your account banned and any connected accounts banned
05-27-2011 11:16 AM
#7
tijn (Moderator)
Yep - key thing to stop you from getting band is to stick within terms and dont include stuff you would be uncomfortable explaining to your mother!
Also - when you launch the app - make sure you include proper privacy policy and Terms - both in the app config and the footer of the page.
Most apps got banned because they did not have this.
Also avoid user complaints. The robots and reviewers come looking when you get too many and its a sure fire way to get banned.
Best part is after approval you can put in whatever you want on the back end.
If you could cloak the reviewers then that would be great
05-27-2011 11:56 AM
#8
wildfing (Member)
Dunno how mine was banned... i assume that the bot's look for affid's? or network urls?? i'm really not sure????
05-27-2011 12:05 PM
#9
tijn (Moderator)
i think it has a lot to do with unnatural app or page growth. im sure fb have all sorts of stats and benchmarks to identify 'abusive' apps quickly. maybe even just bouncerate. Ie - if it was a really engaging app users would remain on that page for a long time and not leave FB.
05-27-2011 12:31 PM
#10
scitox ()
Been doing this for weeks already, it's awesome :-).
Also, think bigger guys: designing your presell (dating) LP's within the apps results in HUGE conversion rates. People think "hey if I see this information on Facebook, it must be true!".
Ad -> Presell LP within FB -> Offer = $$$
05-27-2011 01:15 PM
#11
duballa (Member)
You're using Facebook ads to drive traffic to this then?
I would be hella astounded to find out FB was approving ads pointing to apps that did this. Maybe you can explain how you are getting your ads for this method approved in some detail.... Are you putting dummy content on the page and then changing it after the ads are approved?
I have vast amounts of experience spamming FB and with their API, and have made $xxx,xxx with similar setups to this, so I can definitely testify that it works... But my traffic was always driven virally from within FB.
05-27-2011 01:19 PM
#12
duballa (Member)
Also... I think you should probably check with your network to make sure your offer is OK to be iframed before attempting this... would suck to lose your hard earned profits!
On that note, I have had this conversation with AMs before, and 90% of them don't understand what I'm trying to convey... they hear the word "iframe" and know nothing about what that actually entails, but have been told in their training or whatever that "iframe = bad"... So be very clear that you are not trying to frame in just the email submit section of the LP or whatever, and that you plan to still display the whole offer (less blackhat, if even)
05-27-2011 01:26 PM
#13
duballa (Member)

Originally Posted by
tijn
i think it has a lot to do with unnatural app or page growth. im sure fb have all sorts of stats and benchmarks to identify 'abusive' apps quickly. maybe even just bouncerate. Ie - if it was a really engaging app users would remain on that page for a long time and not leave FB.
99% of their system is automated, and relies on user reports primarily, from what I have seen spamming the shit out of those bastards. It got really tightened up 6 months or so ago (and progressively tighter) as the API spam got more and more out of control.
I think it really has very little to do with unnatural app growth, or if they do check on this metric it's certainly not the most important factor... It wouldn't be very reliable, too much stuff, both legit and not, spreads like a wildfire there each new day, making sure they don't delete someone's legit work would mean manually reviewing ALL OF IT... They simply don't have the live human resources to do this.
So the point is.... Don't make your shit obviously shady!! If users don't report it, you will be good to go like, forever
05-27-2011 01:41 PM
#14
polarbacon (Moderator)

Originally Posted by
scito
Been doing this for weeks already, it's awesome :-).
Also, think bigger guys: designing your presell (dating) LP's within the apps results in HUGE conversion rates. People think "hey if I see this information on Facebook, it must be true!".
Ad -> Presell LP within FB -> Offer = $$$
So just curious.....when you say "Ad" are you sending FB traffic? Or are we talking ppv(pop), display(banner)?
05-27-2011 02:35 PM
#15
scitox ()

Originally Posted by
polarbacon
So just curious.....when you say "Ad" are you sending FB traffic? Or are we talking ppv(pop), display(banner)?
Yes, the idea is to keep the user within Facebook while preselling the offer.
You have to be creative with the LP though, as in make it look like it's a legit ad. What I've done for dating is create 2/3 questions which the users would have to answer, e.g.:
- Male or female? (auto selected male ofc.)
- Interested in? (auto selected female)
Then when they'd hit the button they'd see "who's online right now and want to chat with them right away". Really does look legit and had them approved. After approval I added some pictures around this form to make it look more attractive. Give it a go :-).
05-27-2011 02:46 PM
#16
stacksofgreen (Member)
Was wondering, does this add to your social % when advertising via facebook ads?
I know that it did when a people "Liked" your page, but I don't see a like button anywhere you can click like.
If it does add Social%, all I know is that your clicks become cheaper
05-27-2011 02:57 PM
#17
tijn (Moderator)

Originally Posted by
stacksofgreen
Was wondering, does this add to your social % when advertising via facebook ads?
I know that it did when a people "Liked" your page, but I don't see a like button anywhere you can click like.
If it does add Social%, all I know is that your clicks become cheaper
The page i created here is just a simple example to demonstrate the idea. Like buttons can be included, as could facebook comments, share, and other social plugins.
Maybe the topic of a future tutorial, but you could use your app to create tabs for facebook pages and get it to load a different offer/ad in the iframe depending on the page its on. Downside is the 520px width of a facebook page, but in return is less hasstle to setup once your app is up and running.
And yes - i agree - just iframing an offer might not survive long if you drive oodles of traffic.
But
Most apps that I know off that got banned were either banned because they did not have the privacy policy set / linked from the page, or they used excessive wall posting / app inviting (kind of these forced viral features).
05-27-2011 05:46 PM
#18
klax (Member)

Originally Posted by
duballa
Also... I think you should probably check with your network to make sure your offer is OK to be iframed before attempting this... would suck to lose your hard earned profits!
On that note, I have had this conversation with AMs before, and 90% of them don't understand what I'm trying to convey... they hear the word "iframe" and know nothing about what that actually entails, but have been told in their training or whatever that "iframe = bad"... So be very clear that you are not trying to frame in just the email submit section of the LP or whatever, and that you plan to still display the whole offer (less blackhat, if even)
^^^^^^
This
05-30-2011 06:47 AM
#19
movingshadow (Member)
tested this on the weekend, what i can say so far:
- you can send traffic via fb ads, no problem until now. my ads all get approved and i am getting _some_ traffic.
- use externalURL in ads in order to be able to adjust ad titles otherwise it will take the app title which could be a p.i.t.a. if you have a dynamic app 
- nice thing is that the pages are visible even if 1 is not logged in
- if you have problems with scrollbars, check out this (choose auto resize canvas in the app): http://picturepush.com/public/5759375
stuff i have to solve/test:
- how do i get HUGE traffic (that's why i am here...) and what will happen then? 
- will the app get indexed? (nice kw in title tag + authority = eternal happiness)
- will the app survive a revision? how far can i go?
- etc.
btw. i suppose if you are building good stuff and not try to fuck people facebook will not ban you and your app and you won't have problems with ads.
cheers, ms.
05-30-2011 07:25 AM
#20
movingshadow (Member)
btw. you don't need to get an app aproved to send traffic to it (or maybe i get this 1 wrong?).
05-30-2011 10:08 AM
#21
tijn (Moderator)

Originally Posted by
movingshadow
- use externalURL in ads in order to be able to adjust ad titles otherwise it will take the app title which could be a p.i.t.a. if you have a dynamic app

Great idea
Re: sites getting indexed - i know from some testing i did that apps.facebook.com urls rank very well in bing.
on google - they are indexed but dont show that high (yet).
its also worth noting that the google keyword tool can extract keywords from facebook URLs and show the most relevant terms. That to me says that google is indexing but maybe discounting the 'weight' of the facebook domain as not many are showing in the top 10.
keep testing cause google cant ignore the strength of facebook for much longer
05-30-2011 10:25 AM
#22
jamesruhles (Member)
So theoretically, if you have a legit lead gen offer(that's main purpose isn't to screw over the customers), and a compliant privacy policy etc, you could have the presell page right there on facebook? This is awesome!
05-30-2011 11:33 AM
#23
movingshadow (Member)

Originally Posted by
jamesruhles
So theoretically, if you have a legit lead gen offer(that's main purpose isn't to screw over the customers), and a compliant privacy policy etc, you could have the presell page right there on facebook? This is awesome!
not just a presell page.
you can theoretically pull in entire webpages, apps etc. it's all on YOUR server ;-)
facebook is just creating trust -> it's like a big fat "powered and officially supported by facebook" badge on your website.
05-30-2011 12:06 PM
#24
hippo (Member)
Is it allowed by offer advertisers? I thought iframing is not allowed and it can hurt if then advertiser say he's not gonna pay for that traffic
05-30-2011 12:23 PM
#25
movingshadow (Member)
depends on the advertiser i guess, just ask or read their TOS (i think somebody wrote about this topic earlier in this post?)
it will definitely hurt you if you send traffic and they close your account so be careful
i wouldn't directly iframe a page... just build your own. it's basically just another form of a landing page...
06-08-2011 07:42 AM
#26
adityan (Member)
how do you track this? suppose i am creating 5 ads, normally I would just add subid but, I dont see how is that possible here without creating 5 different apps/LP ?
06-08-2011 11:45 PM
#27
disciple (Member)
You you mention having a privacy policy, are you talking just on the iFramed page we pull through?
Or is there a special standard for PP pages on apps, beyond this?
06-09-2011 12:01 AM
#28
tijn (Moderator)

Originally Posted by
hippo
Is it allowed by offer advertisers? I thought iframing is not allowed and it can hurt if then advertiser say he's not gonna pay for that traffic
What advertisers are most worried about is iframes being used to hide their terms and for example hide everything but the email input field.
When talking to your AMs just dont use the word iframe because alarm bells will start ringing.
06-09-2011 12:06 AM
#29
tijn (Moderator)

Originally Posted by
adityan
how do you track this? suppose i am creating 5 ads, normally I would just add subid but, I dont see how is that possible here without creating 5 different apps/LP ?
Some tracking software, like cpvlab, use cookies to store the subid. So when you create you add you would link to your campaign URL which would then redirect to your fb app url.
If you want to incl subid in the url you can do this too.
You can pass variables to your landing page. You can include any &var=text on the main url like this:
apps.facebook.com/yourapp/?var=test
which will get passed to your pages. you can then use $_REQUEST in php to retrieve it.
Lastly for facebook page tabs there is also a way and that is to append &app_data which will be passed to your tab page. You will need to decode the request (tutorial on facebook) to then access the data.
06-09-2011 12:07 AM
#30
tijn (Moderator)

Originally Posted by
disciple
You you mention having a privacy policy, are you talking just on the iFramed page we pull through?
Or is there a special standard for PP pages on apps, beyond this?
If you iframe the offer like this i would try and grab the url of the full privacy policy of the advertiser. Then include that link in the privacy policy field of your app settings.
06-09-2011 01:56 PM
#31
joshtodd ()
I've made xxx,xxx in a month with a similar method, the potential is just about limitless with this. Facebook doesn't review or approve apps as long as you don't want them to be listed in their App Directory. You don't care about that since you are going to be sending paid traffic to them. Make sure you don't use your personal FB account to set these apps up because you don't want to get your account banned if people think your app is too spammy (which will happen eventually).
To set up a lot of apps, you are going to need Phone Verified Accounts (PVAs). The best place I've found to buy these is http://facebookfriendadder.com/PVA.html. You just need the basic ones, no profile pics or anything fancy. Don't buy more than you are going to use right away because they do get banned after a week or so of just sitting there.
The beauty of apps is that they have to opt-in (click Allow) before they can see the content. With a little work, you can setup a database that captures their email address automatically when they click Allow (and it discloses to them that this is going to happen). That way you get a little bit of value from everyone that clicks Allow, whether they convert or not. If you are pushing a lot of paid volume to your app(s), you can gather xxx,xxx email addresses in no time.
If you don't care at all about user experience and/or getting your app banned, you can put a content locker on your app. Be creative and come up with some type of app that people would really want to use, and then put Blam/CPALead/LeadBolt locker on it before they can use it. This is what people are doing when you see the wall posts that say, "See who is viewing your FB profile" and the like. These apps don't really exist, but people are gullible and they will fill out an IQ offer to find out. I wouldn't recommend going with that particular app because it will be banned within an hour of setting it up. The idea is to be creative, take a unique angle, and bank it before people are figuring out what is going on.
Oh and since this is sort of a black hat method, Facebook likely isn't going to approve FB ads for it. So just send PPV traffic to it instead. Lead Impact is better than TrafficVance for this because TV bans Facebook.com and has very little traffic on deeper urls. With LI just get creative on your urls and there is a shit ton of traffic.
06-15-2011 11:26 AM
#32
bool (Member)
Thanks for an excellent tutorial! I like how you explained everything step by step.
I have a question about iframing the landing page. It tried to iframe one quite long landing page (1247px by 1912px) but I struggle to make it all visible. How do you sort it out if a target page is too big to fit into the app? Thanks!
06-16-2011 02:11 AM
#33
tijn (Moderator)

Originally Posted by
bool
I have a question about iframing the landing page. It tried to iframe one quite long landing page (1247px by 1912px) but I struggle to make it all visible. How do you sort it out if a target page is too big to fit into the app? Thanks!
You will need to use the Facebook Javascript Api for that. These links explain it:
http://developers.facebook.com/docs/...ce/javascript/
and
http://developers.facebook.com/docs/...setAutoResize/
Here is the code you need to include in your page:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'YOUR APP ID HERE', status: true, cookie: true,
xfbml: true});
FB.Canvas.setAutoResize();
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
06-16-2011 05:13 AM
#34
theguvna ()
Nice method... outside of collecting the email, what's the advantage of using an app install vs. a locked fan page? The basic method of locking a fan page where people need to "like" it then iframe an offer afterward would be similar right?
06-16-2011 08:11 AM
#35
tijn (Moderator)
yeah you could do that but then your 'realestate' is limited to 520px which is not wide enough for most offers. benefit though is that you could run with 1 app but mutiple pages and show different offers on each page
08-04-2011 06:52 AM
#36
aleonardo (Member)
I am confused, your sample above is an incentive based ad to collect emails and I just read the FB TOS and they say no incentives for e-mail, data, etc. Am I missing something here?
08-06-2011 11:59 PM
#37
beyondads (Member)
Tip:
To keep your apps that you're sending traffic to from getting reported by users and taken down quickly....... create a fake "report" button that makes it look like the user can report the app and their concern gets sent.
08-07-2011 12:39 AM
#38
maynzie (Moderator)
I have heard this dramatically decreases click costs?
Is this reality or a fantasy
?
Cheers Tijn but another extreme post!
08-07-2011 06:22 AM
#39
tijn (Moderator)
@aleonardo
i think its a gray area. you could interpret the ToS such that your not allowed to do email optins on facebook pages. but thats happening all over the place right now and fb does not seem to have an issue with it.
at the end of the day its risky. for sure.
@beyondads
that is one awesome tip!! thanks
@maynzie
i have heard (i dont do fb ads myself) that ads to fb pages / apps have lower cpc then ads to external websites. i dont have any stats by how much though.
08-11-2011 05:18 PM
#40
kphed (Member)
quick question about a fb social plugin (comments)
http://postimage.org/image/ycfnd1wk/
on the left, the user must click "add a comment" to populate the comments field
on the right, the comment section is open & ready for commenting without having to click the "add a comment" button.
Any advice on getting the comment field open upon entering the page?
THanks!
08-27-2011 06:08 PM
#41
harniti (Member)
I have heard this dramatically decreases click costs?
Is this reality or a fantasy ?
Cheers Tijn but another extreme post!
You heard it right.. !
10-11-2011 10:15 AM
#42
dario (Member)
After i've confirmed all the data i got this alert, because i left the https:// field empty
Warning
Secure Canvas URL will be required on October 1, 2011.
BTW the http:// page canvas is showing anyway
10-11-2011 01:05 PM
#43
tijn (Moderator)
yeah it will show for people that dont have secure browsing switched on on facebook. but users that have secure browsing switched on wont be able to view it.
06-03-2012 12:24 AM
#44
neyphil (Member)
Does this strategy still work?
09-08-2012 09:30 AM
#45
browndog (Member)
^^^^ I would also like to know.
09-14-2012 04:45 PM
#46
neyphil (Member)
Tijn? Do you know the answer perhaps?
09-21-2012 11:49 PM
#47
muse (Member)
Daaang!! This is the shit. Thanks for sharing
09-22-2012 09:12 AM
#48
tijn (Moderator)
I havent tried it in a while, but i dont see why it wouldnt
Especially the new timeline page tabs are extra cool for this now - less distractions.
your only problem is facebook banning your ass!
Home >
Paid Traffic Sources >
Facebook & Instagram