OAds
Native ad manager for WordPress. Run image, text-card, and HTML embed ads with per-section targeting, date scheduling, impression and click tracking, video event metrics, an advertiser self-serve portal, sellable ad plans, and a full analytics dashboard. All native, all on your server.
Test a zone.
See what fills it.
This is a UI simulation of OAds’ built-in zone inspector, showing you exactly what the tool looks and feels like inside your WP admin. When installed, it pulls live eligible-ad counts, click-through rates, impression totals, and active targeting rules from the ad delivery tables.
Inspect a section.
Read the inventory.
Simulated demo. Runs automatically as you scroll. The real plugin reads live data from your delivery tables.
Everything ads,
none of the network.
One plugin. No third-party ad networks unless you want them. No revenue share. Your inventory, your data, your server, your rules.
Click around.
It’s all real.
Six interactive previews of the actual OAds admin. No screenshots; these are working mock-ups of what ships in the plugin.
| Ad | Type | Section | Impr. | CTR |
|---|---|---|---|---|
| Spring sale banner | image | sidebar | 4,820 | 3.4% |
| Velluma launch | text | in-article | 6,140 | 2.8% |
| Studio mentoring | html | footer | 2,910 | 1.9% |
| Northrise webinar | image | header | 2,180 | 4.1% |
| Craftshop promo | text | sidebar | 7,330 | 3.7% |
| Zone | Size | Fill | Active ads |
|---|---|---|---|
| header | 728x90 | direct | 4 ads |
| sidebar | 300x250 | direct | 9 ads |
| in-article | 336x280 | direct | 7 ads |
| footer | 728x90 | house | 3 ads |
| modal | 500x500 | direct | 5 ads |
| Spring sale A/B | 2 variants · 12,440 impressions | active |
| Sidebar rotation | 5 ads · round-robin | active |
| House fallback | 3 ads · random | remnant |
| Disclosure label | Sponsored | active |
| Frequency cap default | 3 per visitor / day | active |
| AdSense fallback | configured | active |
| Portal notify email | ads@studio.io | active |
What you get
vs. what they sell you.
Most ad stacks for WordPress are either rev-share networks (AdSense) or plugin-plus-paid-add-on stacks (Advanced Ads, AdRotate). OAds is the whole thing in one install, with a one-time price and no revenue share.
| AdSense | Advanced Ads | AdRotate | OAds | |
|---|---|---|---|---|
| Native image ads (no third-party network) | no | ✓ | ✓ | Built in |
| Native text-card ads | no | paid add-on | ✓ | Built in |
| HTML embed ads (any creative) | ✓ | ✓ | ✓ | Built in |
| Per-section / per-zone targeting | ✓ | ✓ | ✓ | Built in |
| Date-range scheduling (start / end) | paid add-on | ✓ | ✓ | Built in |
| Impression tracking | ✓ | ✓ | ✓ | Built in |
| Click tracking | ✓ | ✓ | ✓ | Built in |
| Video event tracking (start / q1 / mid / q3 / end) | no | no | no | Built in |
| Advertiser self-serve portal | no | paid add-on | no | Built in |
| Sellable ad plans with pricing | revenue share | no | no | Built in |
| A/B rotation groups | no | paid add-on | ✓ | Built in |
| Round-robin rotation | no | ✓ | ✓ | Built in |
| Geo + time-of-day targeting | no | paid add-on | paid add-on | Built in |
| Frequency capping | ✓ | paid add-on | ✓ | Built in |
| Built-in analytics dashboard | separate console | ✓ | ✓ | Built in |
| REST API + WP-CLI surface | no | no | no | Built in |
| Data stays on your server | no | ✓ | ✓ | Yours |
| Pricing model | rev share (~32%) | Free + premium add-ons | Free + $53 yr | $49 once |
Clean public API.
Read the source.
PSR-4 namespaced classes, helper functions for the common stuff, REST endpoints for ad delivery, WP-CLI commands, and a hook surface that lets you extend any subsystem without forking.
// Render an ad zone in any template, theme part, or shortcode. // OAds picks an eligible ad based on section, schedule, frequency caps, and group rotation. use Orravo\OAds\Display; do_action('oads_zone', 'sidebar'); // Or call the renderer directly with options: Display::render_zone([ 'section' => 'in-article', 'fallback' => 'house', 'lazy' => true, 'disclosure' => 'Sponsored', ]);
Choose your plan.
Lifetime or monthly.
No tiers based on impression count. No revenue share. Pay once, install on the sites in your tier, get every future update free.

