iFrames are a pretty old web design element that have been used for, well, basically anything imaginable. When they first appeared, you would often see them stuck off to the side or across the top of a page, holding navigation for the content below. Later, they would be used as wrappers for a site, to show navigation and advertising. Some sites used them to “display” advertising while minimizing the actual visibility of the ads, earning views without actually showing the user the ads. They were also often used by engines like Swagbucks to display ads to people while those people browsed other sites, monetizing browsing and giving some revenue share to the people doing the browsing.
These days, iFrames have generally fallen out of style. They’re fairly detrimental to SEO, so the only time you see them these days is in strange niche sites, corporate internal networks, and education portals. Oh, and exploitative sites that layer ads over other peoples’ content in hopes of monetizing it. There’s actually something of an arms race going on between sites that use iFrames to monetize content they don’t own and services that want to stop it using framebusters.
iFrames are also antithetical to modern design standards. They’re forced to render in a fixed size, and it takes a lot of jumping through coding hoops to get them to work on a variable site design. Responsive design and iFrames simply don’t work well together.
iFrames aren’t always detrimental to SEO, but you can think of them as a warning sign. Google will pay extra attention to any site using them if it’s been updated more recently than 2010, and may take extra care to audit your links and your actions. They’ll pay special attention to the content both in and around the iFrame, to make sure you’re not doing something you shouldn’t be.
And, well, one of those things you shouldn’t be doing is using Google AdWords with iFrames. They don’t like it, for a number of reasons.
Google’s Official Word
Google has a lot of ad policies, and it’s easy to skip over individual points when you’re trying to get the overall gist of the whole thing.
They only have one small section about iFrames, which I’ve quoted entirely here:
“Is it violating program policy if I place ads on iFrame webpages in my software? Yes, it does violate our policies. Firstly, you’re not allowed to place ads in a frame within another page. Exceptions to our policies are permitted only with authorization from Google for the valid use of iFrames. Secondly, you’re not allowed to put ads in your software, e.g., if you control both a page with ads and an app that loads that page, we will take actions against it.”
The important part here is that you’re not allowed to have ads on the page inside an iFrame. This is because the typical use case was to make a tiny iFrame in some corner of a website and load ads essentially off-screen, where the user technically loads them and thus earns you a view, but they don’t see them. This not only hurts the user experience, it hurts advertising as a whole. Advertisers who go looking at the sites where their ads are displayed, seeing that, will question why they’re spending money on zero visibility. They’ll quit paying for Google ads, and Google suffers, and when advertisers stop paying, publishers stop getting paid.
What about ads in the frame surrounding the content? One of the various “get paid to browse” business models seen with Swagbucks and other companies is to run their own custom iFrame, which has ads and affiliate links to products, surrounding the content you’re browsing.
The problem with this is that person A is monetizing the content of person B. Person A, the Swagbucks site in this case, doesn’t have permission from person B to monetize their content. They can’t, because they’re allowing free browsing. The “person B” could be anything from Google to Facebook to Amazon to John’s Blog About Trains. There’s no way person A could go to every site on the web and ask permission to monetize, or even enforce it when someone says they can’t.
All About Utilization
Now, Google says they can give permission to sites to use ads in iFrames, but they don’t give a process for applying for this permission, nor do they state how it will come about. In fact, I haven’t heard of anyone actually getting permission. The “permission” tends to just be Google not taking action against you, but at the same time, it’s impossible to tell the difference between tacit permission and just “haven’t gotten around to punishing you yet.”
The fact is, you can use Google ads both in the internal content and in the external frame, if you’re doing it properly. It’s only improper utilization that is likely to earn you a penalty, and we’re not talking about an SEO penalty here. I’ll talk more about penalties later.
So there are two places an ad can be in an iFrame website; the external frame and the internal content page.
On the external frame, ads can be placed so long as they’re visible and follow all of the rules of typical sidebar or top bar ads. You can’t try to hide them or otherwise obscure them. They should be above the fold, since users are more likely to scroll the content page than the frame, so below the fold content in the frame is essentially hidden content. You should use the right kind of ad unit, so that it displays properly.
The problem with using an ad in the frame of a page is that most Google ads work via the context of the content of the page. The ad applet reads the content of the page and analyzes it for keywords, and then the ads that display are relevant to those keywords. There are other factors as well, like keyword and site blacklists, but it still relies on context. With the external frame, it’s likely that all you have is the navigation content of your site, and maybe a footer. There’s very little information to give context to the ad applet, so it can’t serve appropriate ads. You can try to game this by adding keywords, but then you’re just keyword stuffing, and that can tank your SEO.
Then you come to ads in the internal content page. In this case, you can easily use ads the same way you would on any other website. The ads need to be visible, they can’t be obscured or violate any of the other display rules. There’s that one pesky display rule up above, but if you’re using ads appropriately, Google is liable to give you a pass. Of course, it’s perfectly in their rights to not do so, and they can punish you if they choose to do so.
How can you avoid this punishment? Well, the simple answer is to get rid of frames. If you’re using a frame for navigation, I have to ask you, why? There is a good, simple solution for navigation, and it’s used on practically every website these days. It’s a solved problem. There isn’t much reason to try to reverse the course of web design to use an iFrame when you don’t have to.
In fact, I would argue that today, in the year 2017, there is absolutely no good reason to use an iFrame. In order to support this claim, I would direct you to the HTML5 reference documentation on W3.org. Specifically, you can go to this page and read about the obsolete elements of HTML that have been removed for HTML5. Among them is the frame, frameset, and noframes set of elements. They aren’t deprecated, they’re straight-up removed. W3 considers them to be damaging to accessibility and user experience, and thus they have been all but removed from modern web standards. The only reason they still work is because browsers are compatible with older versions of HTML in addition to HTML5, because removing compatibility would break websites unnecessarily.
The Escalation of Google Penalties
When you violate an AdWords or AdSense policy, you don’t suffer on your website in terms of SEO. Your site isn’t going to be removed from the search results, and in fact it won’t fluctuate one way or another. Google’s penalty of choice in these situations is a notice of violation of the Ads terms, with a link to an example of what you violated and a short description of how you violated it. In order to get you to actually fix the violation, Google blacklists that URL and any other URL with the problem they detected. Ads won’t display until you fix the problem. At the very least, your ad will be disapproved.
Often, webmasters will get this kind of notice and they will fix the issue on the page and file for restoration of their ad ability. However, the link they send you is generally just an example. If you have the same problem on other pages on your site, or even on all of them in the case of a frame-based site, you’re going to have to fix every instance of the issue before they will restore your ability to run ads.
For reference, if this does happen to you and you want to appeal, you can file for that appeal here.
If you file for an appeal and are denied again, unfortunately, this generally means your account is closed. Google doesn’t want to spend endless time on cycles of low-effort appeals to get the absolute minimum amount of work in, so they give you a one-strike-you’re-out policy. They have a way to appeal your account being disabled, but it’s also a one-time thing. It only works if you legitimately have tried everything and it wasn’t error, negligence, or willful actions that resulted in your failure to resolve the issue the first time around. If that appeal is denied as well – you can file for it here – you’re done for permanently. You’re added to an ignore list, functionally, and if you try to make another Ads account to circumvent the ban, you can find that account closed as well.
One thing to note is “but other people do it and they aren’t punished” isn’t a valid defense. If you see other people doing what you were flagged as a violation for doing, the correct course of action is to report them and get them flagged as well.
So, to summarize everything:
- The use of iFrames is obsolete and should be removed from any website you want to consider modern. While Google can index them, there’s actually a pretty strong chance that you’ll eat an SEO penalty for using out of date code anyway.
- Using ad code in iFrames is generally against the Google ad policies, though in some circumstances you can get away with it for some length of time.
- If you’re squeaking by using ad code in iFrames, don’t consider it permanent. It’s entirely possible that Google simply hasn’t taken notice, but they will eventually find you and decide to suspend your account until you remove the frames.
- If you are flagged for an ad violation, you have one chance to get it right. If you don’t fix the issue appropriately, your account will stay locked pretty much indefinitely. There’s very little chance of recovering it after the initial appeal.
At the end of the day, there’s only one correct way to use iFrames: Don’t.