On my site, I have a section where people can view a large image along with a few options underneath it. I placed each option in its own table cell and I reserved one table cell for the advertisement. The example is shown below right under the navigation bar.

As you can see, the advertisement is an image about "Hacking adwords". It's a advertisement of the size 336x280 pixels inside its own div inside a table cell (between <td> and </td>). The margins around the ad is 12 pixels minimum like the rest of the ads are and the advertisement label on all ads are the same.

There is sufficient spacing between the ad unit and other text, and the unit couldn't possibly match up with other text in the table because the rest have a title in a box flushed to the top of the cell where as the advertisement has only the word "Advertisement" as a title in a completely different format.

This is the only ad unit in which I receive $0 RPM. I receive at least a couple cents RPM average on all other adsense ad units on my site.

Normally when I receive $0 RPM on a unit, it means something is terribly wrong with that unit.

Does Google not permit ads inside table cells? I haven't seen documentation on Google that states this.

sample page

  • While it's totally legal to put an Adsense advertisement in a frame, it may be against Googles Adsense TOS or policy. Most things dealing with online services are often not covered by laws, therefore "legality" doesn't come into the picture. And thanks to the person editing the question to make that distinction. Commented Sep 26, 2015 at 22:22
  • I'm not using frames tho. Commented Sep 26, 2015 at 23:18
  • Misspoke on frame/table, but the legality/law vs policy/TOS statement still holds true. If you break policy/TOS, they don't take you to court, they just turn off your service. Commented Sep 27, 2015 at 3:21

2 Answers 2


Some sources that think it's ok:

On the WordPress forum there is someone with issues, but the ads are not even showing up.

Overall it's worth to try to move away from using <table>s for layout purposes. Maybe the Google Adsense bot doesn't parse your HTML the way browsers do. Moving to a div solution may fix the 0$ RPM, and as a bonus it's likely to improve things on phones and tablets.

If you wanna stick with a <table>, you can try splitting it up vertically in two tables to see if you get better results.

  • I attempted to move the ad unit further down to its own div outside of the table with no luck. Commented Sep 26, 2015 at 21:54

There is one prohibited practice from the AdSense policies that could apply here:

Formatting content to mimic ads

Publishers may not implement Google ads in a manner that disguises the ads in any way. This includes formatting neighboring content to look similar to the ads. If a publisher places ads on non-Google search results pages, there must be a clear distinction between search results and ads. Review our AdSense for search policies for more information.

In the example below, the content is formatted very similarly to the ads and it's difficult to tell them apart. This implementation is not permitted.

It is not just the table that is a problem, its that the ads and content in the table and sized and arranged to make them difficult to distinguish.

Your implementation from your screenshot should be fine in my opinion. You have text that is wider than the ad and the ad is taller than many pieces of your content. Despite my opinion, Google may feel differently about it. If there is a policy violation with your ad layout, you usually get a notification about it when you log into AdSense.

  • The layout I've shown is an example of what one would see if they used a very large resolution screen. Commented Sep 26, 2015 at 21:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.