WPThumbs
Themes Plugins By purpose By industry Best-of lists Fix it guides
Free Plugin by hafenstudios v2.5.0

Hafenstudios Ads

The ad manager that stays on your server: banner ads, AdSense, rotation, split testing, targeting, consent gating and local stats.

Hafenstudios Ads

The facts

Rating
5★ from 14
Active installs
100+
Price
Free
Last updated
28 Aug 2026
Added
Jul 2026
Requires WP
6.2
Tested up to
WP 7.1
Requires PHP
7.4
Downloads
2,015

Our analysis

AI-assisted

Hafenstudios Ads is a WordPress plugin designed for managing advertisements, including banner ads and AdSense units. It allows you to place ads precisely where you want them, rotate them, and target specific audiences while tracking performance metrics like impressions and clicks without sending data to external servers.

The plugin supports multiple ad blocks, automatic and manual placements, and offers features like split testing, weighted ad rotation, and device targeting. It also includes a template gallery for various ad formats and a built-in cookie consent banner, making it suitable for users who want to manage ads effectively on their WordPress sites.

Best for: This plugin is suitable for WordPress site owners looking to manage and optimise their ad placements effectively.

What it does well

  • Supports multiple ad placements and formats
  • No external data transmission; statistics stored locally
  • Includes features for split testing and ad rotation
  • Offers a gallery of 27 free ad templates
  • Device and post type targeting capabilities

Where it falls short

  • Limited information on premium features
  • No mention of support or documentation details

Verdict

Hafenstudios Ads provides a comprehensive solution for ad management within WordPress, focusing on privacy and control over ad performance.

From the developer

hafenstudios's own description of Hafenstudios Ads, lightly tidied.

Hafenstudios Ads is an ad manager for WordPress: place banner ads, AdSense units and any ad code exactly where you want them, rotate them, target who sees them, and keep an eye on impressions, clicks and CTR — without sending any analytics to an external server.

Create multiple ad blocks, insert them automatically before or after the content, after paragraph N or by shortcode, widget and Gutenberg block. Weighted ad rotation, split testing, device and post-type targeting, campaign scheduling and consent gating are built in.

Highlights

  • Split test two ad variants against each other: every variant with impressions, clicks and CTR, a data progress gauge, and a mark on the one that is ahead.
  • Weighted ad rotation, cache-proof: blocks sharing a group name rotate in automatic placements and via [adjet_ad_group name="header"]; the winner is picked in the visitor’s browser, so page caches cannot freeze the choice.
  • AdSense Wizard: Publisher-ID + Slot-ID are enough for responsive AdSense units, including in-article and multiplex formats.
  • Nothing leaves your server: no external calls, no phoning home, statistics stay in your own database.
  • Template gallery with 27 free templates: banners, native cards, testimonial, book/course card, seasonal deals, events, sponsor logo wall, notification bars, popups and a cookie consent banner with selectable cookie images.
  • Automatic placements before content, after content, after paragraph N, in the middle of the content, before the last paragraph, after heading N or after the first image.
  • Manual placement via shortcode [adjet_ad id="1"], widget or Gutenberg block.
  • Clean, focused admin interface with brand bar, weekly summary and clear navigation tabs.
  • Device targeting for desktop, tablet and mobile.
  • Post type targeting plus exclusions for posts, categories, tags and custom terms.
  • Optional “Advertisement” label with editable text.
  • Lazy loading via IntersectionObserver.
  • Consent-cookie gating for common consent tools.
  • Optional anonymous local impression and click statistics.
  • Campaign scheduling with optional start and end time.
  • One-click duplicate and pause/activate actions for faster workflow.
  • Code editor and admin-side live preview that does not execute scripts.
  • AdSense Wizard: Publisher-ID + Slot-ID are enough for responsive AdSense units.
  • Optional AdSense Auto Ads script loader with clear settings.
  • 30-day statistics chart (impressions and clicks) rendered inline, no external libraries.
  • Weekly summary above the ad block list: impressions, clicks and CTR since Monday, compared with the same weekday span of the previous week.
  • Least-privilege capability manage_adjet with an optional editor-access toggle.
  • Premium templates and features unlock with Pro.
  • REST API (adjet/v1) for ad blocks, stats and settings via Application Passwords.
  • Guided assistant with optional AI copy suggestions (bring your own Anthropic Claude key).
  • Built-in cookie-consent banner template with Google Consent Mode v2 support.
  • Native newsletter opt-in for SendFox, MailerLite, Brevo, Mailchimp and Kit (ConvertKit), bring your own token, with double opt-in.
  • First-run onboarding that routes you to AdSense, a template or your own HTML.
  • JSON import and export with file-size/type checks.
  • Uninstall routine that keeps your data unless you explicitly ask for it to be deleted.

Privacy

The plugin does not contact hafenstudios servers from the WordPress admin area or frontend. Optional statistics are stored locally in your own WordPress database. Third-party ad code pasted into an ad block may contact external services; configure your consent solution accordingly.

External services

The plugin works fully without any external service. Every integration below is optional and only ever runs when you explicitly enable it:

  • Google AdSense (frontend): if you configure an AdSense ad unit or enable Auto Ads, the frontend loads Google’s adsbygoogle.js from pagead2.googlesyndication.com to display ads. Terms: https://www.google.com/adsense/localized-terms — Privacy: https://policies.google.com/privacy
  • Anthropic Claude (admin only, bring-your-own-key): the optional AI buttons send data to the Anthropic API (api.anthropic.com), each only after you enter your own Anthropic API key in the settings and click that button; no key, no request, never automatic. What each button sends: the “AI suggestions” button in the ad assistant sends the template’s field labels, your site name/description and any brief you type to generate draft ad copy; the “Suggest alt text” button sends the selected ad image (from your media library as encoded image data, otherwise as its URL) to describe it; the “Let the AI read the numbers” button on the statistics page sends aggregated daily totals, weekly totals and per-block impression/click counts. No visitor data, IP addresses or e-mail addresses are ever sent. The key is stored encrypted and used server-side only. Terms: https://www.anthropic.com/legal/commercial-terms — Privacy: https://www.anthropic.com/legal/privacy
  • SendFox (bring-your-own-token): if you connect SendFox in the settings and use the “Newsletter (SendFox)” template, visitor email addresses submitted through that form are sent to the SendFox API (api.sendfox.com) to be added to your list. This happens only when you have connected a SendFox access token. The token is stored encrypted and used server-side only. Terms: https://sendfox.com/tos — Privacy: https://sendfox.com/privacy
  • MailerLite (bring-your-own-token): if you connect MailerLite in the settings and use the “Newsletter (MailerLite)” template, visitor email addresses submitted through that form are sent to the MailerLite API (connect.mailerlite.com) to be added to your group. This happens only when you have connected a MailerLite API token. The token is stored encrypted and used server-side only. Terms: https://www.mailerlite.com/legal/terms-of-service — Privacy: https://www.mailerlite.com/legal/privacy-policy
  • Brevo (bring-your-own-token): if you connect Brevo in the settings and use the “Newsletter (Brevo)” template, visitor email addresses submitted through that form are sent to the Brevo API (api.brevo.com). With a double opt-in template and redirect URL configured in the settings, the signup uses Brevo’s double opt-in endpoint (/contacts/doubleOptinConfirmation) and Brevo sends the confirmation mail; without them the contact is created directly and no confirmation mail is sent, which the form’s success message states honestly. This happens only when you have connected a Brevo API key. The key is stored encrypted and used server-side only. Terms: https://www.brevo.com/legal/termsofuse/ — Privacy: https://www.brevo.com/legal/privacypolicy/
  • Mailchimp (bring-your-own-token): if you connect Mailchimp in the settings and use the “Newsletter (Mailchimp)” template, visitor email addresses submitted through that form are sent to the Mailchimp API (<dc>.api.mailchimp.com, the data center encoded in your API key) to be added to your audience with status “pending”, which triggers Mailchimp’s double opt-in. This happens only when you have connected a Mailchimp API key. The key is stored encrypted and used server-side only. Terms: https://mailchimp.com/legal/terms/ — Privacy: https://www.intuit.com/privacy/statement/
  • Kit, formerly ConvertKit (bring-your-own-token): if you connect Kit in the settings and use the “Newsletter (Kit)” template, visitor email addresses submitted through that form are sent to the Kit API (api.kit.com) to create or update the subscriber and add them to your chosen Kit form; if the form has double opt-in enabled, Kit sends its confirmation email. This happens only when you have connected a Kit v4 API key. The key is stored encrypted and used server-side only. Terms: https://kit.com/terms — Privacy: https://kit.com/privacy

Security

The plugin uses capability checks, nonces for form actions, sanitization on save and escaping on output. Raw ad code is only stored unchanged for users with the unfiltered_html capability.

Localization

  • Source language: English.
  • Included translations: German, Spanish, French and Dutch — complete and shipped with the plugin.

Support

This plugin is developed and maintained by hafenstudios. For direct support you can reach us by e-mail at moin@hafenstudios.com or by phone at +49 174 3935796. You are also welcome to use the plugin support forum on WordPress.org.

Read the full description on the official page →

Tagged as

Alternatives

Other plugins for ads and banners.

Ad Inserter

Manage Google AdSense ads, banners, ad rotation, sticky widgets, AMP ads, ads.txt, tracking, header and footer...

Free 300k+ installs 4.9★ (2,428)
Advanced Ads

The only complete toolkit for all ad types. Grow your revenue with AdSense, Amazon—or any affiliate network. G...

Free 100k+ installs 4.9★ (1,461)
Quads Ads Manager for Google AdSense

Ads &amp; AdSense plugin supporting Media.net, DFP, ads.txt, Web Stories ads, click fraud protection, revenue...

Free 20k+ installs 4.9★ (1,087)
Ads.txt Manager

Create, manage, and validate your ads.txt and app-ads.txt from within WordPress, like any other content asset.

Free 100k+ installs 4.7★ (15)
Quick Adsense

Quick Adsense offers a quicker &amp; flexible way to insert Google Adsense or any Ads code into a blog post.

Free 20k+ installs 3.9★ (74)
Actirise

Premium advertising solution to grow your WordPress site revenue with no code and real-time insights.

Free 200+ installs 5★ (13)