Start here
Getting Started
You have an offer. OrbitWise connects it to traffic in 50+ countries. From account creation to first impression: about 10 minutes. Here's what to do in what order.
50+
Countries
6
Ad Formats
98.1%
Fraud Block Rate
<50ms
Avg Bid Latency
24/7
AI Monitoring
4
Edge Regions
Quick start — five steps
Create your account
Sign up, verify your email, and complete account verification. Advertiser accounts are approved within 24 hours. A €10 trial credit is applied on first top-up.
Add balance
Top up via bank transfer, card, or crypto. All balances are held in EUR. Cards are credited immediately; bank transfers take 1–2 business days. Minimum deposit: €50.
Build a campaign
Use the Campaign Builder or let OrbitWise AI generate a complete campaign from a brief. Set your goal, audience, daily budget, and ad formats. The AI pre-populates targeting recommendations and bid estimates.
Install conversion tracking
Add the one-line pixel to your conversion page or configure a server-side postback URL. Attribution begins immediately. This signal drives AI bid optimization — conversion volume directly improves results.
Monitor and scale
Live stats are in the Performance dashboard with hourly granularity. Enable Autopilot to let the AI manage bid adjustments, budget reallocation across networks, and creative rotation continuously.
Launch your first campaign in under 10 minutes
Create your account, add balance, and go live. No contracts, no minimums beyond the first deposit. Cancel anytime.
Account setup
Account Structure
Four levels. Account holds billing and team access — it's the root. Campaign Groups are optional; skip them unless you're running multiple brands or separate teams. Campaigns hold goals and budget. Ads hold creative. One campaign per goal keeps reporting clean.
Account hierarchy — 4 levels
Root level — billing, access, and API keys are managed here
Optional organizational container — group campaigns by brand, vertical, or manager
Core execution unit — one campaign per goal, audience, and budget
Individual creative — one ad per creative variant or A/B test arm
User roles
| Role | Code | Access level |
|---|---|---|
| Super Admin | SUPER_ADMIN | Full platform access including billing, user management, all advertisers and publishers, system configuration, and audit logs. |
| Admin | ADMIN | All advertiser and publisher management. Can manage team members and API keys. Cannot modify billing or subscription plan. |
| Advertiser | ADVERTISER | Full campaign management: create, edit, pause, and delete campaigns. View analytics for own campaigns only. Cannot manage team. |
| Publisher | PUBLISHER | Publisher dashboard access: view inventory stats, fill rates, and revenue reports. No access to advertiser campaigns. |
| Viewer | VIEWER | Read-only access to all dashboards and analytics. Cannot create, edit, or pause any campaigns or settings. |
| API User | API_USER | Programmatic access only — no dashboard login. Permissions scoped to the API key's assigned role (Advertiser or Viewer). |
Billing & Balance
Top up account balance, view invoice history, download PDFs, manage payment methods. Top-up methods: credit card (instant), SEPA bank transfer (1 business day), crypto USDT/USDC (2 block confirmations).
Team Members
Invite team members by email. Assign roles per member. Each member gets individual login credentials. Activity is logged per user in the Audit Log. Revoke access immediately from the team settings panel.
API Keys
Generate named API keys with scoped permissions (read-only or full access). Each key is shown once at creation — store securely. Rotate keys at any time without downtime. Rate limit: 1,000 requests/minute per key.
Notification Preferences
Configure email and webhook notifications for: daily spend summary, campaign auto-pause events, fraud refund credits, low balance warnings (set threshold), and weekly performance digest.
Conversion Events
Define named conversion events (Purchase, Sign-Up, Lead, Download, etc.) with optional revenue values. Each event gets a unique pixel event code and a separate postback endpoint URL for S2S tracking.
Domain Blacklist
Account-level domain exclusions apply to all campaigns automatically. Separate from per-campaign blacklists. Useful for consistently excluding known low-quality or competitor domains.
RTB infrastructure
How OrbitWise Works
Every ad impression runs through the OrbitWise real-time bidding pipeline — from publisher bid request to served creative — in under 100 milliseconds. Edge nodes in Frankfurt, Singapore, Ashburn, and São Paulo ensure sub-50ms latency on all major markets.
Bid Request
<2ms
Traffic Check
<5ms
Supply Chain
<3ms
AI Bid Engine
<15ms
Creative Match
<10ms
Bid Response
<5ms
Event Tracking
async
Pricing models
| Model | Billed on | Best for | Optimization signal |
|---|---|---|---|
| CPM | Per 1,000 impressions | Brand awareness | Viewability, reach |
| CPC | Per click | Traffic, lead gen | CTR, landing engagement |
| CPV | Per completed video view | Video campaigns | View-through rate |
| CPA | Per conversion event | Performance campaigns | CPA, ROAS |
| CPD | Per day (flat rate) | Guaranteed placements | Reservation-based |
Coverage
Geographic Coverage
50+ countries. RTB infrastructure on four continents — median bid under 50ms. Target at country, region, city, or US DMA level. Each geo supports bid multipliers, so you're not just picking markets — you're pricing them.
| Region | Tier | Avg CPM — Display | Top verticals |
|---|---|---|---|
| United States | Tier 1 | €2.40–6.00 | Finance, iGaming, eCommerce |
| United Kingdom | Tier 1 | €1.80–4.50 | Finance, SaaS, Travel |
| Germany / DACH | Tier 1 | €1.60–4.00 | Automotive, Finance, SaaS |
| Brazil | Tier 2 | €0.40–1.20 | iGaming, eCommerce, Crypto |
| India | Tier 2 | €0.15–0.60 | eCommerce, EdTech, Finance |
| SEA (ID, TH, VN) | Tier 2 | €0.12–0.45 | Gaming, Apps, iGaming |
| Africa (ZA, NG, KE) | Tier 3 | €0.08–0.25 | Crypto, Apps, FMCG |
Ad specs
Ad Formats & Specifications
Six formats, each with its own inventory pool and user interaction pattern. Most creatives clear automated review in under an hour. iGaming, Crypto, Dating, and Supplements go to manual review — allow up to 4 hours.
Image-based ads served across the OrbitWise publisher network. The most widely supported format — available on desktop and mobile across all publisher categories.
| Sizes | 728×90, 300×250, 160×600, 300×600, 320×50 |
| File types | JPG, PNG, GIF, WebP, HTML5 (ZIP) |
| Max file size | 150 KB static · 500 KB animated |
| Animation | CSS or GIF · max 30 s · max 3 loops |
| Min CPM | €0.20 |
| Targeting | Geo, device, OS, browser, hour, audience |
Content-matched ads that blend with publisher page layouts. Consistently higher engagement than standard display — rendered by the publisher's own template engine.
| Title | 25 chars max |
| Description | 90 chars max |
| Image | 300×250 px min · 16:9 or 4:3 · JPG/PNG |
| Brand name | 25 chars max |
| CTA button | Optional · 15 chars max |
| Min CPM | €0.40 |
| Targeting | Geo, interest, contextual keyword |
Browser and in-app notifications delivered to opted-in subscribers regardless of whether they are currently browsing a publisher site. 100% viewability by design.
| Title | 30 chars desktop · 25 chars mobile |
| Message | 45 chars desktop · 35 chars mobile |
| Icon | 192×192 px PNG · max 30 KB |
| Banner image | 492×328 px · max 100 KB · desktop only |
| Min CPC | €0.003 |
| Targeting | Geo, OS, browser, subscriber recency |
Full-page traffic opened underneath the active browser window when a user clicks on a publisher page. Direct URL delivery — no creative file required.
| Landing URL | Any valid HTTPS URL |
| Trigger | Onclick, first click per session |
| Freq. cap | 1 per user per 24 h (default, adjustable) |
| Device types | Desktop and mobile (separate bid floors) |
| Min CPV | €0.001 |
| Targeting | Geo, OS, browser, carrier, ISP |
Full-screen ads displayed at natural page transitions — article breaks, game level loads, or content page changes. Skip-after timer enforced by the platform.
| Dimensions | 320×480 · 480×320 · 768×1024 · 1024×768 |
| File types | HTML5, JPG, PNG |
| Max file size | 500 KB |
| Skip timer | 3–5 seconds (set per campaign) |
| Min CPM | €0.80 |
| Targeting | Geo, device, app category, OS version |
Pre-roll, mid-roll, and post-roll ads served within video player content. VAST 4.2 compliant — compatible with all major video players and SSPs.
| Duration | 6 s (bumper) · 15 s · 30 s · 60 s |
| Formats | MP4 H.264 · WebM · VAST 4.2 tag |
| Resolution | 1920×1080 recommended · 640×480 min |
| Audio | AAC · normalized to −14 LUFS |
| Skip | After 5 s for ads longer than 15 s |
| Min CPV | €0.005 per completed view |
Targeting engine
Targeting Reference
OrbitWise Six dimensions, all active simultaneously — country, device type, OS, browser, connection, and placement. AND across categories, OR within them. Stack as many restrictions as needed; every combination is evaluated at bid request time, zero latency cost.
Geographic
Country
Target any of 50+ supported countries with include or exclude lists. Set bid multipliers (−80% to +200%) per country for granular spend control.
e.g. United States, Germany, BrazilRegion / State
Sub-national targeting within any supported country. Covers US states, German Bundesländer, UK regions, Canadian provinces, and equivalents globally.
e.g. California, Bavaria, OntarioCity
City-level targeting with optional 15 km radius expansion. Up to 1,000 cities per campaign. Performance data is available per city in Analytics breakdowns.
e.g. Berlin, Singapore, São PauloDMA
Nielsen Designated Market Areas for US campaigns only. 210 DMAs available covering all US markets. Can be combined with state targeting.
e.g. New York DMA (501), Los Angeles DMA (803)Device & Browser
Device Type
Desktop, mobile, tablet, connected TV (CTV), and smart TV. Each type has separate bid floors and available ad formats. Bid multipliers applied per type.
e.g. Mobile only — set Desktop −100%Operating System
Target by OS family and minimum/maximum version. Supports Windows, macOS, Linux, Android, iOS, ChromeOS. AND/OR logic supported within OS group.
e.g. Android ≥ 10, iOS ≥ 15, Windows 10+Browser
Chrome, Firefox, Safari, Edge, Samsung Internet, Opera, UC Browser. Target by browser version range. Useful for HTML5 creative compatibility.
e.g. Chrome ≥ 100, Safari ≥ 15Connection Type
Wi-Fi, 3G, 4G LTE, 5G, wired broadband. Useful for campaigns with heavy creatives or when targeting users with reliable data connections.
e.g. Wi-Fi + 4G LTE onlyBrowser Language
Target by browser's configured display language. Up to 20 language codes per campaign. ISO 639-1 format.
e.g. en, de, pt-BR, zh-CN, arNetwork
Mobile Carrier
Target or exclude specific mobile carriers across 180+ carriers globally. Particularly useful for carrier billing, apps, and mobile-first verticals.
e.g. T-Mobile US, Vodafone DE, Jio INISP
Internet service provider targeting for desktop and fixed-line broadband traffic. Useful for B2B targeting by corporate network ISP.
e.g. Comcast, BT Business, Deutsche TelekomIP Range (CIDR)
Target specific IPv4 CIDR ranges. Useful for B2B account-based targeting. Max 500 CIDR blocks per campaign. Requires manual approval for ranges wider than /16.
e.g. 203.0.113.0/24Audience
Custom Audience
Upload a CSV of hashed email addresses or device IDs (SHA-256). OrbitWise matches against publisher user pools. Match rates: 40–70% depending on traffic source and geo.
Upload customer email list (hashed)Retargeting
Re-engage users who previously visited your site and have the OrbitWise pixel installed. Segment by URL pattern (contains, equals, regex) or by pixel event type.
e.g. Cart abandoners, product page viewers, checkout startersLookalike Audience
AI-generated audience matching behavioral and contextual patterns of your seed audience (converters). Requires minimum 500 seed events for reliable modeling. Available at 1%, 3%, 5%, 10% similarity depth.
e.g. 3% lookalike of purchasers in DEInterest Segments
150+ IAB interest categories built from publisher page context and behavioral signals across the network. No PII required — cookieless compatible via contextual signals.
e.g. Finance > Investment, Travel > Luxury HotelsContextual
Keyword Targeting
Target pages containing specific keywords. Up to 500 keywords per campaign. Match types: exact (full phrase), broad (any word), and negative (exclude pages). Processed at bid request time via NLP classification.
e.g. +"travel deals" +flights -competitorIAB Category
Target inventory by IAB Content Category Taxonomy 2.2 (1,000+ sub-categories). Classified by a real-time page analysis model at the SSP layer before the bid request is sent.
e.g. IAB1-5 Comics, IAB4-11 Job Search, IAB19-6 Cloud ComputingDomain Whitelist
Restrict delivery to a manually curated list of approved publisher domains. Guarantees brand-safe placements. Note: whitelisting to <50 domains significantly reduces volume.
e.g. techcrunch.com, bloomberg.com, forbes.comDomain Blacklist
Exclude specific publisher domains from receiving your ads. Applied at campaign level. Account-level blacklist also applies globally to all campaigns.
e.g. competitor.com, mfa-site.netFrequency & Scheduling
Impression Frequency Cap
Limit how many times a unique user sees your ad within a time window. Options: per hour, per 24 hours, per 7 days, per campaign lifetime. Enforced server-side via a distributed cookie + fingerprint store.
e.g. Max 3 impressions per user per 24 hoursClick Frequency Cap
Prevent a single user from clicking your ad more than N times per period. Reduces attribution noise and protects against accidental re-clicks on mobile.
e.g. Max 1 click per user per 24 hoursDayparting
Restrict delivery to specific hours (0–23) and days of the week. Applied in UTC or in your selected advertiser timezone. Combine with bid multipliers: e.g. +40% on peak hours, −80% on off-peak.
e.g. Mon–Fri 09:00–18:00 advertiser TZStart / End Date
Set campaign flight dates. End date is optional — leave blank for always-on campaigns. Budget pacing resets at UTC midnight. Time zone is UTC for all system events.
e.g. 2026-03-01 → 2026-03-31Targeting AND / OR logic
| Between categories | Within a category | Example |
|---|---|---|
| AND (required) | OR (any match) | Geo=US AND Device=Mobile AND OS=Android OR iOS |
| All 6 dimensions active simultaneously | Up to 500 values per dimension | Country IN [US, CA, GB] AND Browser IN [Chrome, Safari] |
| Negative targeting applied last | Exclusions override inclusions | NOT Domain IN blacklist AND Geo IN [DE, AT, CH] |
Launch sequence
Campaign Builder
The six-step Campaign Builder walks through every setting from goal selection to creative upload. Alternatively, use the AI Campaign Wizard: enter a URL and a brief, and the AI pre-populates targeting, bid estimates, and ad copy suggestions in under 30 seconds.
- 01
Campaign Settings
Name your campaign and select the primary goal: Awareness (CPM), Traffic (CPC), Conversions (CPA / ROAS), or Video Views (CPV). Set flight dates (start required, end optional). Choose your base currency (EUR). Enable or disable AI Autopilot — you can toggle this later without restarting the campaign.
Campaign nameGoal / KPIStart dateEnd date (optional)AI Autopilot on/off - 02
Audience & Targeting
Select geo (country required, region and city optional). Add device, OS, browser, carrier, and language targeting if needed. Attach an audience segment (retargeting pixel, custom list, or interest). Configure frequency caps and dayparting schedule. Leave most filters broad on first launch — refine after data accumulates.
Geo — country / region / cityDevice type + OS + browserAudience segmentFrequency capDayparting schedule - 03
Budget & Bidding
Set a daily budget (minimum €5/day). Optionally set a lifetime cap. Choose pacing: Standard (even spread) or Accelerated (spend as fast as possible). Set your pricing model (CPM / CPC / CPV / CPA). For AI Auto-Bidding, enter your target CPA or ROAS — the engine calculates per-impression bids automatically. For manual bidding, enter a max CPM or CPC.
Daily budget (min €5)Lifetime cap (optional)Pacing modePricing modelTarget CPA / ROAS or max bid - 04
Network Deployments
Select which partner networks to activate (Partner Network A, B, C, or All). For each network, set a minimum and maximum daily allocation to prevent any single source from over-spending. The AI reallocates budget across active networks every 60 minutes based on performance.
Network selectionMin allocation per network (min €3/day)Max allocation per network - 05
Creative Upload
Upload creatives or link existing ones from your Creative Library. Match dimensions to the ad formats selected for each network. For HTML5 creatives, upload as a ZIP (max 500 KB) including an index.html at the root. For native ads, fill title, description, image, and CTA fields. Video creatives must be MP4 (H.264) or supplied as a VAST 4.2 tag URL.
Upload image / GIF / HTML5 ZIP / MP4Or enter VAST 4.2 tag URL for videoNative fields: title, description, image, CTA - 06
Review & Launch
The Review screen shows a summary of all settings, estimated daily impressions range, estimated CPA range, and any warnings (e.g. targeting too narrow, budget below network minimum). Creatives are submitted for automated review upon launch. Most categories are approved within 15–45 minutes. Restricted categories (iGaming, Crypto, Dating, Supplements) require manual review up to 4 hours.
Settings summaryEstimated reach & cost estimatesCreative review statusLaunch or Save as Draft
Campaign status lifecycle
| Status | Meaning | Next transition |
|---|---|---|
| DRAFT | Saved but not submitted. No creatives reviewed. | → IN_REVIEW on submit |
| IN_REVIEW | Creatives under automated or manual review. | → ACTIVE (approved) or REJECTED |
| ACTIVE | Delivering impressions. Spending from daily budget. | → PAUSED (manual) or AUTO_PAUSED |
| PAUSED | Manually paused. No delivery, budget preserved. | → ACTIVE (manual resume) |
| AUTO_PAUSED | System paused: budget depleted, CPA overage, or fraud event. | → ACTIVE after fix + manual resume |
| COMPLETED | Lifetime budget fully spent or end date reached. | Terminal state |
| REJECTED | Creative review failed policy check. | Edit creative → re-submit |
Creative guide
Creative Best Practices
Format-specific guidance from performance data across OrbitWise campaigns. Benchmarks reflect median performance across all verticals — your results will vary by audience and offer quality.
Display Banners
- Use 300×250 — it has 3× more inventory than any other size and the highest average CTR across all verticals.
- Animated GIF or CSS ads outperform static by 60–120% on average CTR — keep animation to max 3 loops.
- Include a contrasting CTA button in the bottom-right quadrant — it is the last area the eye visits.
- Keep text to less than 20% of ad area — heavy text triggers automated policy flags and reduces viewability scores.
- Test dark and light background versions — dark performs better in evening hours (18:00–22:00 local time).
Native Ads
- Headlines that raise curiosity or tell a micro-story outperform direct offers — 'How travelers cut hotel costs by 40%' beats 'Book hotels cheap'.
- Use real photography over illustrations — authentic product or lifestyle photos achieve 40% higher CTR on average.
- Keep description to 80–88 characters — truncation above 90 characters hurts engagement on mobile previews.
- Brand name must be visible, accurate, and match the landing page domain — policy violations result in immediate rejection.
- Run 3–5 headline variants simultaneously with AI creative rotation to find the top performer within 500 impressions.
Push Notifications
- Deliver the core message in the title — keep it under 30 characters on desktop, 25 on mobile to avoid truncation.
- Create urgency or scarcity in the message body: 'Only 3 left' or 'Offer ends tonight' consistently lift CTR 30–50%.
- Icon must be clean and recognizable at 192×192 px — complex logos with fine details render as blobs at notification size.
- Target subscribers acquired within the last 14 days — subscribers older than 30 days show 50% lower average CTR.
- Desktop Chrome users see a banner image (492×328): this field has a dramatic CTR impact — never leave it blank for desktop campaigns.
Pop-under / Onclick
- Landing page must load in under 2 seconds — every additional second of load time costs approximately 15% CVR.
- A pre-lander page (one-step interstitial before the main offer) improves CVR by 20–30% for most verticals.
- Keep frequency at 1 pop per user per 24 hours — the default. Increasing to 2/day typically halves CVR and raises refund rates.
- Separate desktop and mobile into distinct campaigns — users interact with pop-unders very differently across device types.
- Send traffic directly to the specific product or offer page, not the homepage — conversion drop-off multiplies at each extra navigation step.
Interstitial
- Design for the skip button scenario — 70% of users skip. The visible 5 seconds must communicate brand, offer, and CTA.
- Use a large, single-color background with high-contrast product image — complex backgrounds are processed as noise.
- Minimum 18px body text on mobile — at full-screen interstitial size, small text still looks cluttered and lowers recall.
- CTA button must meet minimum touch target (44×44 pt on mobile) — small CTAs are frequently missed or trigger accidental taps.
- 5-second skip timer outperforms 3-second in CVR by 18–30% even though slightly more users skip — the extra 2 seconds drive recall.
In-Stream Video
- Show brand and core message within the first 3 seconds — before the skip option appears for longer formats.
- Design for sound-off viewing: 80% of in-stream video plays without audio. Use captions, bold text overlays, or on-screen product demo.
- 15-second non-skippable ads achieve 30% higher brand recall than 30-second skippable ads in post-campaign studies.
- End card (final 3 seconds): show your URL and a single explicit CTA — 'Shop Now', 'Learn More', 'Download Free'.
- Encode at ≥ 2 Mbps for 1080p, normalized audio to −14 LUFS. Submit as MP4 H.264 or provide a VAST 4.2 tag for maximum player compatibility.
Guard system
Anti-Fraud & Traffic Quality
98.1% of invalid traffic is blocked before a bid is submitted. The remainder gets caught by the async ML layer post-delivery and credited back automatically. No dispute process, no claim to file.
98.1%
IVT Block Rate
<2ms
Check Latency
4
Validation Layers
100%
SIVT Refund
Cross-referenced against 12 IP reputation databases updated every 15 minutes. Known datacenter ranges, Tor exit nodes, and residential proxy pools are flagged using a Bloom filter at O(k) lookup time.
User-Agent parsing, JS environment consistency check, WebGL renderer fingerprint, and battery/screen metadata analysis. Detects headless browsers (Puppeteer, Playwright, PhantomJS) and bot emulation frameworks.
Validates OpenRTB SupplyChain (schain) objects and ads.cert signatures on every bid request. Unauthorized resellers and domain-spoofing attempts are rejected before a bid is submitted.
Sophisticated Invalid Traffic (click farms, CTV fraud, session replay bots) is detected by a gradient-boosted model trained on 90 days of labelled event data. Flagged events trigger automatic balance credit.
Advertise with confidence — zero charge for invalid traffic
Every impression passes 5 validation layers before your budget is touched. Invalid traffic is blocked and refunded automatically — no disputes, no process.
Split testing
A/B Testing
Test one thing at a time — that constraint isn't just good practice, it's the only way to know what actually moved the number. Three scopes: creative rotation within a campaign, campaign-level splits, and landing page variants via URL parameter.
Creative rotation modes
| Mode | How it works | Best for |
|---|---|---|
| Even rotation | Each creative receives equal impression share regardless of performance. Useful for collecting unbiased performance data. | Initial data gathering (first 1,000+ impressions) |
| Weighted | Manually set percentage split per creative (e.g. 70/20/10). Used when you have prior data suggesting one variant is stronger. | Scaling a known winner while continuing to test |
| AI Optimized | The system automatically shifts impression share toward the creative with the highest CVR, updating every 4 hours. | Maximizing performance once 200+ clicks recorded per variant |
| Champion/Challenger | 90% of traffic goes to the proven winner; 10% to new challengers. Minimizes risk while enabling continuous improvement. | Established campaigns with a strong baseline creative |
Statistical Significance
OrbitWise calculates Z-score significance automatically in the A/B test dashboard. A result is marked significant when p < 0.05 with 95% confidence. Do not make decisions on results below this threshold — they may be noise.
Minimum Sample Size
For CTR tests: minimum 1,000 impressions per variant. For CVR tests: minimum 100 clicks per variant. For CPA tests: minimum 30 conversions per variant. Results below these thresholds show an 'Insufficient data' warning.
One Variable Rule
Test only one element per experiment: either the headline, or the image, or the CTA, or the landing page — not multiple. Testing two variables simultaneously makes it impossible to identify which change drove the result.
When to Stop a Test
Stop when statistical significance is reached AND you have met minimum sample size. Never stop early because a variant looks promising — early leads frequently reverse. If no significance after 14 days, declare a draw and move on.
Landing Page Testing
Append a URL parameter to the destination URL per creative variant (e.g. ?variant=a vs ?variant=b). Your own analytics can segment conversions by parameter. The OrbitWise pixel fires on both variants — attribution works normally.
Campaign-Level Split Test
Duplicate a campaign and change exactly one setting (geo, pricing model, bid amount). Run both with identical budgets. Compare CPA in Analytics → Campaigns → side-by-side view after 7+ days of equal delivery.
Reporting
Reporting & Data Export
Reports are available at hourly granularity with a 3-hour data lag. Aggregate by any combination of dimensions. Export raw event data or aggregated stats via the dashboard or REST API.
Slice & filter by
| Dimension | Values | Notes |
|---|---|---|
| Date / Hour | ISO 8601, UTC | Hourly available from campaign start. Daily rollups auto-generated. |
| Campaign | All campaigns in account | Filter by status, date range, or campaign group. |
| Ad Format | display, native, push, pop, video… | Format-level breakdown within a campaign. |
| Network | Partner Network A / B / C | Whitelabeled — no external network names. |
| Creative | Per creative ID + name | Includes CTR, CVR, CPA per creative. |
| Placement | Publisher domain + placement ID | Exportable as CSV for blacklist management. |
| Country | ISO 3166-1 alpha-2 | Country-level CPA and CTR breakdown. |
| Region / City | Where available per country | City data available for US, DE, GB, BR, IN, and 18 others. |
| Device Type | desktop, mobile, tablet, ctv | Device performance comparison in side-by-side view. |
| OS | android, ios, windows, macos… | OS + version group breakdown. |
| Browser | chrome, safari, firefox, edge… | Browser-level performance. |
| Hour of Day | 0–23 UTC or advertiser timezone | Dayparting data — used to optimize hour-of-day bid multipliers. |
| Day of Week | Mon–Sun | Weekly pattern analysis. |
Getting data out
CSV Export
Dashboard → Analytics → Export → CSV. Select dimensions, metrics, and date range. Files include all selected columns, UTF-8 encoded, with headers.
JSON Export
Same as CSV but in JSON array format. Useful for importing into BI tools or data warehouses. Field names match the API response schema.
Stats API
GET /v1/stats/hourly with query params for campaign_id, start_date, end_date, and dimensions[] array. Returns paginated JSON. Max 10,000 rows per call.
Scheduled Reports
Set up recurring daily or weekly report emails: Dashboard → Reports → Schedule. Select recipient email(s), dimensions, and format (CSV or PDF summary).
Raw Event Export
POST /v1/events/export for raw impression, click, and conversion events with all metadata fields. Available for last 90 days. Max 100,000 events per request.
Webhook Stream
Configure a webhook endpoint to receive events in real time (see Webhook Events section). Ideal for feeding live data into custom dashboards or databases.
Attribution
Analytics & Conversion Attribution
Attribution starts the moment your pixel or postback is in place. Five models available — last-click through data-driven AI. Default windows: 30-day click, 1-day view. All configurable per campaign.
Pixel installation
<!-- OrbitWise Pixel — paste before </body> -->
<script async src="https://cdn.orbitwise.io/px.js" data-id="YOUR_ACCOUNT_ID"></script>
<!-- On conversion page: -->
<script>
owq('track', 'conversion', { revenue: 29.99, currency: 'EUR' });
</script>Server-to-server postback
GET https://track.orbitwise.io/postback
?click_id={CLICK_ID}
&revenue={REVENUE}
¤cy=EUR
← 200 OK { "status": "accepted", "event_id": "evt_..." }Attribution models
| Model | Logic | Best for |
|---|---|---|
| Last Click | 100% credit to final touchpoint | Direct response, lead gen |
| First Click | 100% credit to first touchpoint | Awareness measurement |
| Linear | Equal credit across all touchpoints | Multi-channel analysis |
| Time Decay | More credit to recent interactions | Short purchase cycles |
| Data-Driven AI | ML model trained on your conversion data | Advanced advertisers |
Bid engine
Bidding System
Second-price auction: you name a ceiling, the engine pays clearing price. The AI recalibrates per placement every hour based on conversion probability and competition — 22% average cost reduction vs manual bidding. Override anytime.
AI Auto-Bidding
The AI adjusts bids per placement every hour based on conversion probability, competition, and historical EPC. Average 22% cost reduction vs manual bidding in A/B tests.
Target CPA
Set a target cost-per-acquisition. The engine back-calculates optimal CPM/CPC bids for each placement and scales spend toward the highest-converting traffic sources.
Max ROAS
Optimize for return on ad spend. Requires conversion value tracking. AI maximizes revenue per EUR spent across all active placements.
Fixed Bid
Override AI and set a fixed CPM or CPC per campaign or per placement. Useful for whitelisted sites or when historical data gives high confidence in a specific price.
Dayparting
Restrict delivery to specific hours and apply bid multipliers by hour and day of week (+/− percentage). Applied on top of base bids without creating new campaigns.
Geo Bid Multipliers
Apply percentage multipliers to specific countries, regions, or cities. Fine-tune geographic spend allocation without fragmenting campaign structure.
Set a CPA target. Autopilot handles everything else.
Bid adjustments, budget reallocation across networks, creative rotation — Autopilot runs the optimisation loop while you work on something else.
Budget control
Budget Management
Daily cap is a hard ceiling — it's never exceeded. The AI moves budget between deployments every 60 minutes when Autopilot is on, but total daily spend stays within the limit you set.
Daily Budget
Maximum spend per calendar day (UTC). Hard cap — never exceeded. Budget resets at 00:00 UTC regardless of account timezone.
Lifetime Budget
Total spend ceiling for the entire campaign flight. Campaign pauses automatically when reached. Set to 0 for unlimited (relies on daily cap).
Network Allocation
Min and max budget per network deployment. Prevents any single source from consuming all spend. Set both bounds to enforce a fixed share.
Pacing
Standard (even hourly distribution) or Accelerated (spend as fast as possible each day). Standard recommended for most campaigns to avoid peak-hour price spikes.
Auto-Pause
Automatically pauses the campaign if CPA exceeds target by more than 50% for two consecutive hours. Requires active CPA target and conversion tracking.
Budget Reallocation
AI redistributes budget from underperforming to top-performing deployments every 60 minutes. Active when Autopilot is enabled. Net spend unchanged.
REST API
API & Integration
Bearer token auth, JSON responses, OpenAPI 3.1 spec atGET /api/docs. Rate limit is 1,000 req/min per key — check X-RateLimit-Remainingbefore bulk operations.
Authentication
curl https://api.orbitwise.io/v1/campaigns \ -H "Authorization: Bearer ow_live_••••••••••••"
Core endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /v1/campaigns | List all campaigns |
| POST | /v1/campaigns | Create a campaign |
| PATCH | /v1/campaigns/{id} | Update campaign settings |
| GET | /v1/campaigns/{id}/stats | Performance stats |
| GET | /v1/stats/hourly | Hourly aggregated stats |
| POST | /v1/events/conversion | Server-side conversion event |
| GET | /v1/creatives | List creatives |
| POST | /v1/creatives | Upload a creative |
Error codes
| HTTP | Code | Meaning |
|---|---|---|
| 400 | INVALID_REQUEST | Missing required field or invalid parameter value. Check the errors[] array in the response. |
| 401 | UNAUTHORIZED | Missing or invalid Authorization header. Verify your Bearer token. |
| 403 | FORBIDDEN | Valid token but insufficient scope. The key doesn't have permission for this action. |
| 404 | NOT_FOUND | Resource does not exist or belongs to a different account. |
| 409 | CONFLICT | Duplicate request (idempotency key already used) or state conflict (e.g. pausing an already-paused campaign). |
| 422 | UNPROCESSABLE | Request is syntactically valid but semantically invalid — e.g. budget below minimum. |
| 429 | RATE_LIMITED | 1,000 requests/minute exceeded. Check X-RateLimit-Remaining header. Retry after X-RateLimit-Reset. |
| 500 | INTERNAL_ERROR | Platform error. Includes a request_id field — provide this when contacting support. |
GET /api/docs. Generate keys at Dashboard → Settings → API Keys. Never expose API keys in client-side JavaScript.Real-time events
Webhook Events
HMAC-SHA256 signed, retried across 6 attempts over 24 hours, delivered within 500ms of the event firing. Up to 5 endpoints per account — subscribe to any combination of impression, click, conversion, fraud, budget, and campaign lifecycle events.
Fired when a creative is rendered and passes the viewability pre-check. Includes placement metadata and user geo/device signals.
Fired after a click passes the full fraud pipeline validation. Carries the click_id used for conversion attribution.
Fired when a conversion event is attributed to a campaign click or view. Includes the revenue value if provided.
Fired on any campaign status transition: ACTIVE → PAUSED, AUTO_PAUSED, COMPLETED, or REJECTED.
Fired when daily or lifetime budget is exhausted and campaign delivery stops automatically.
Fired when OrbitWise Guard confirms a fraudulent event and credits the charged amount back to account balance.
Example payload — conversion event
{
"event": "conversion",
"event_id": "evt_01HZ4R...",
"click_id": "clk_01HZ1K...",
"campaign_id": "cmp_01HY9A...",
"conversion_type": "purchase",
"revenue": 29.99,
"currency": "EUR",
"attribution_model":"last_click",
"timestamp": "2026-03-15T14:23:07.412Z"
}Signature verification
# OrbitWise signs each delivery with HMAC-SHA256
# Header: X-OrbitWise-Signature: sha256=<hex>
import hmac, hashlib
def verify_signature(payload: bytes, secret: str, sig_header: str) -> bool:
expected = hmac.new(secret.encode(), payload, hashlib.sha256).hexdigest()
return hmac.compare_digest(f"sha256={expected}", sig_header)Retry policy
| Attempt | Delay | Total elapsed |
|---|---|---|
| 1st retry | 30 seconds | ~30 s |
| 2nd retry | 5 minutes | ~5.5 min |
| 3rd retry | 30 minutes | ~36 min |
| 4th retry | 2 hours | ~2.6 h |
| 5th retry | 6 hours | ~8.6 h |
| Final | 16 hours | ~24 h — event marked failed |
Send Test Event button before going live.Performance guide
Campaign Optimization
Proven optimization sequence: let the campaign run through the learning phase, then iterate one variable at a time using real performance data. Premature optimization is the most common cause of poor campaign results.
Learning Phase (Days 1–7)
Let the AI accumulate at least 50 clicks and 5 conversions before adjusting bids or targeting. Changing settings within the first 48 hours resets the learning model entirely. Use broad targeting and standard pacing during this window.
Scale Incrementally After Proof
Once a campaign hits target CPA for 3 consecutive days, increase daily budget by 20–30% per increment. Doubling budget overnight can destabilize the AI bid model and temporarily inflate CPA by 40–60% until the model re-calibrates.
Creative Rotation Strategy
Run 3–5 creatives simultaneously with AI rotation enabled. Replace the bottom-performing creative when its CVR drops below 50% of the top performer's. Fresh creative every 7–10 days prevents CTR decay from audience fatigue.
Placement Blacklisting
After 200+ clicks per placement, identify placements with zero conversions and spend exceeding 2× target CPA. Add to campaign blacklist. Re-audit weekly — placement quality shifts as publisher audience changes.
Device Bid Multipliers
Analyze CPA by device type in Analytics → Breakdowns → Device. If mobile CPA is 2× desktop CPA, apply a −50% mobile bid multiplier. Conversely, amplify top device types with +30–50% multipliers to capture more volume at efficient cost.
Geo Performance Analysis
Sort Analytics by country and identify top-performing geos (lowest CPA, highest CVR). Set +30% to +50% bid multipliers on top geos. Pause geos with >200 clicks and 0 conversions unless the campaign goal is brand awareness.
Dayparting Optimization
After 2+ weeks of hourly data, check Analytics → Breakdowns → Hour of Day. If conversion rate is 3× higher during 19:00–22:00, apply a +60% bid multiplier for those hours. Reduce bids to −80% during zero-conversion hours rather than blocking them completely.
Budget Allocation Across Formats
Start with 60% display, 30% native, 10% push for most verticals. After 2 weeks, reallocate toward formats with lowest CPA. Push traffic typically converts differently (direct response, impulse) compared to display (intent funnel nurture).
Landing Page Impact
The highest single-variable impact is usually landing page improvement, not bid tuning. A 1% CVR increase (2% → 3%) has the same CPA impact as reducing your bid by 33%. Track bounce rate and scroll depth on landing pages alongside ad performance.
AI Autopilot Threshold
Enable Autopilot after the campaign has recorded 30+ conversions with stable delivery. Before that threshold, the AI has insufficient signal and can over-bid or under-bid erratically. Use Target CPA mode over Max Conversions mode for tighter initial cost control.
Metrics reference
Metrics Glossary
Every number in the dashboard — formula, numerator, denominator, and what a movement in either direction means. All values use fraud-filtered event data only. Nothing is estimated.
Impressions
IMPTotal number of times an ad was loaded and rendered. Counted server-side at the impression pixel fire — not at the ad request.
Clicks
CLKValidated user interactions with an ad. Duplicate clicks within 60 seconds and bot clicks filtered by the fraud pipeline are excluded.
Click-Through Rate
CTRPercentage of impressions that resulted in a validated click. Benchmark: 0.05–0.30% for display; 0.3–1.2% for native; 0.5–4.0% for push.
CTR = Clicks ÷ Impressions × 100
Conversions
CONVGoal completions recorded via pixel, postback, or server event. Counts all configured event types (purchase, sign-up, download, etc.) within the attribution window.
Conversion Rate
CVRPercentage of clicks that resulted in a conversion within the attribution window. Typical range: 0.5–5% depending on vertical and landing page quality.
CVR = Conversions ÷ Clicks × 100
Cost Per Click
CPCTotal spend divided by number of validated clicks. Used as both a pricing model (bidding by click) and an efficiency metric across all pricing models.
CPC = Spend ÷ Clicks
Cost Per Mille
CPMAmount spent per 1,000 impressions served. The standard pricing metric for brand awareness and reach-focused campaigns.
CPM = Spend ÷ Impressions × 1,000
Effective CPM
eCPMA normalized CPM that expresses any pricing model (CPC, CPA, CPV) as an equivalent CPM for cross-campaign comparison and publisher revenue calculation.
eCPM = Spend ÷ Impressions × 1,000
Cost Per Acquisition
CPAAverage cost to achieve one conversion. The primary efficiency metric for performance campaigns. Set as a target for AI auto-bidding.
CPA = Spend ÷ Conversions
Return on Ad Spend
ROASRevenue generated per EUR spent on advertising. ROAS of 3.0 means €3 revenue for every €1 spent. Requires revenue value in conversion events.
ROAS = Revenue ÷ Spend
Earnings Per Click
EPCRevenue generated per validated click. Useful for affiliate and lead-gen campaigns where click quality drives downstream value.
EPC = Revenue ÷ Clicks
Return on Investment
ROINet profit from advertising as a percentage of spend. Accounts for product margin — differs from ROAS which uses gross revenue.
ROI = (Revenue − Spend) ÷ Spend × 100
View-Through Rate
VTRPercentage of video ad starts that were completed to 100%. Also called Video Completion Rate (VCR). Benchmark: 65–85% for 15-second ads.
VTR = Completed Views ÷ Starts × 100
Cost Per View
CPVAmount paid per completed video view, charged only when the user watches past the configured threshold (25%, 50%, 75%, or 100%).
CPV = Spend ÷ Completed Views
Viewability
VB%Percentage of impressions meeting MRC viewability standards: 50% of ad pixels visible for 1 continuous second (display) or 2 seconds (video).
Viewable% = Viewable Imps ÷ Measured Imps × 100
Frequency
FREQAverage number of times a unique user has been served an impression within a given time period. High frequency (>10) indicates creative fatigue risk.
Freq = Impressions ÷ Unique Users Reached
Win Rate
WRPercentage of RTB auction bids that result in a won impression. Under 5% suggests under-bidding; over 80% suggests over-bidding and wasted margin.
Win Rate = Wins ÷ Bids Submitted × 100
Fill Rate
FRPercentage of bid requests that result in a submitted bid. Low fill rate (under 20%) indicates targeting or budget constraints limiting auction participation.
Fill Rate = Bids ÷ Bid Requests × 100
Industry terms
AdTech Glossary
Programmatic advertising has its own dialect. These are the terms you'll see in the dashboard and documentation — what they mean, not just what they stand for. Sorted alphabetically.
DSP
Demand-Side Platform. Software that lets advertisers buy digital ad inventory from multiple exchanges and SSPs via a single interface, in real time.
SSP
Supply-Side Platform. Technology used by publishers to manage, sell, and optimize their available ad inventory programmatically across multiple buyers.
DMP
Data Management Platform. A centralized system for collecting, organizing, and activating first-, second-, and third-party audience data.
Ad Exchange
A marketplace where publishers offer inventory and advertisers bid on it in real time. Connects multiple SSPs and DSPs in a single auction layer.
RTB
Real-Time Bidding. A programmatic auction mechanism where each ad impression is auctioned individually, from bid request to response, in under 100 ms.
OpenRTB
An open protocol standard by IAB Tech Lab defining the JSON communication format between DSPs and SSPs. Current version: OpenRTB 2.6.
VAST
Video Ad Serving Template. An XML-based IAB standard for serving video ads to any compliant video player. Current version: VAST 4.2.
VPAID
Video Player Ad Interface Definition. A JavaScript API enabling interactive video ads within video players. Being phased out in favor of SIMID.
Native Ad
An ad format that matches the visual design and editorial function of the surrounding publisher content — rendered by the publisher's own template engine.
Programmatic Direct
A programmatic transaction using a pre-negotiated deal between publisher and advertiser, bypassing open auction. Guarantees inventory at a fixed price.
PMP
Private Marketplace. An invitation-only real-time auction where premium publishers offer curated inventory to a select group of buyers via Deal IDs.
Deal ID
A unique identifier for a programmatic direct or PMP deal, passed in bid requests to enable targeted delivery to pre-negotiated reserved inventory.
Floor Price
The minimum bid a publisher will accept for an impression. Any bid below the floor is not considered eligible for delivery, regardless of bid amount.
Clearing Price
In a second-price auction, the price paid by the winner — typically €0.01 above the second-highest valid bid, not the winner's own maximum bid.
Second-Price Auction
The dominant RTB auction type: the winning bidder pays €0.01 above the runner-up bid. Incentivizes true-value bidding rather than strategic underbidding.
Bid Shading
An AI technique that reduces submitted bids below the advertiser's maximum in second-price auctions, lowering clearing prices and improving ROAS.
schain
SupplyChain Object (OpenRTB). A JSON field providing a full auditable record of every entity in the supply path for a given impression, per IAB spec.
ads.txt
Authorized Digital Sellers. An IAB-standard text file hosted at publisher domain root listing all parties authorized to sell that publisher's inventory.
sellers.json
An IAB-standard JSON file hosted by ad platforms listing all publishers/sellers they represent, enabling buyers to verify supply chain integrity.
TCF 2.2
Transparency & Consent Framework v2.2. IAB Europe's standard for GDPR consent management. Carries structured consent and legitimate-interest signals per purpose/vendor.
GIVT
General Invalid Traffic. Non-human traffic identifiable by standard filtration: known data center IPs, known crawlers, bots in public allow-lists.
SIVT
Sophisticated Invalid Traffic. Invalid traffic requiring advanced analytics: ad injection, click farms, sophisticated bots that mimic human browsing patterns.
IVT
Invalid Traffic. The umbrella term for all non-human or fraudulent advertising traffic, including both GIVT and SIVT categories.
Click Fraud
Artificially generated clicks on CPC ads, created by bots, competitors, or click farms to deplete advertiser budgets or inflate publisher revenue.
Ad Injection
A form of SIVT where malicious browser extensions or malware replace or insert ads on publisher pages without the publisher's knowledge or consent.
Viewability
MRC-defined standard for opportunity to be seen: 50% of ad pixels visible for ≥1 continuous second (display) or ≥2 seconds (video).
Brand Safety
The practice of ensuring ads don't appear next to harmful content. Standardized by the GARM (Global Alliance for Responsible Media) framework tiers.
GARM
Global Alliance for Responsible Media. An industry body defining Brand Safety Floor and Brand Suitability tiers for classifying unsafe and unsuitable content.
Frequency Cap
A hard limit on how many times a single user can see a specific ad within a time window (hourly, daily, weekly, or campaign lifetime).
Dayparting
Scheduling ad delivery to specific hours and days of the week. Can be combined with bid multipliers to intensify delivery during peak-performance windows.
Retargeting
Serving ads specifically to users who previously visited a website or triggered an event, tracked via pixel, SDK, or hashed ID match.
Lookalike Audience
An ML-modeled audience sharing behavioral and contextual characteristics with a seed audience (e.g. existing customers or converters).
Contextual Targeting
Targeting based on the content topic of the webpage where the ad appears — using NLP and IAB taxonomy classification at bid request time.
Attribution Window
The period after a click or view during which a downstream conversion can be credited to that interaction. Common defaults: 30-day click, 1-day view.
Support guide
Troubleshooting
Most delivery problems trace back to four root causes: pixel misconfiguration, budget depletion, creative rejection, or targeting that's too narrow to scale. Work through these before opening a ticket — support@orbitwise.io, reply within 4 hours.
Campaign not delivering impressions
Usually: targeting too narrow for available inventory, budget below per-network minimum, or creative still in review.
- 1Check campaign status is ACTIVE, not IN_REVIEW, PAUSED, or AUTO_PAUSED.
- 2Verify daily budget is at least €5 total and each network deployment has ≥ €3/day.
- 3Widen geo targeting — remove city or DMA level and target at country level first.
- 4Check Dashboard → Creatives → [id] — creative must show APPROVED status before delivery.
- 5Review whether combined targeting filters leave zero eligible inventory: device + OS + carrier narrowing is the most common culprit.
- 6Open the Delivery Diagnostic report: Dashboard → Campaigns → [id] → Diagnostics for a breakdown of bid request filtering reasons.
CPA is significantly above target
Usually caused by low landing page CVR, under-performing creatives, or non-converting placements.
- 1Sort placements by spend in Analytics — pause any placement with >1× target CPA spent and 0 conversions.
- 2Review creative CTR — below 0.05% CTR for display suggests poor ad-audience fit. Refresh creative.
- 3Enable AI Auto-Bidding with Target CPA set to 1.5× your acceptable CPA to give the AI initial headroom.
- 4Audit landing page: use Analytics → Tracking Health to check if pixel is firing consistently on the conversion page.
- 5A/B test two landing page variants — a 1% CVR improvement halves CPA more reliably than bid tuning.
- 6Exclude geos with >200 clicks and 0 conversions using geo exclusions, not by narrowing include list.
Conversion tracking not recording events
Pixel misconfiguration, SPA routing issues, missing click ID, or consent blocking.
- 1Open browser DevTools → Network tab, filter by 'track.orbitwise' — verify the pixel request fires on the conversion page.
- 2For single-page applications: call owq('track', 'conversion', {}) explicitly in your route change handler, not only on initial page load.
- 3For S2S postback: verify the click_id macro is being populated by your tracking link. Check raw postback log at Analytics → Postback Log.
- 4Verify event name in owq() matches exactly the event name configured in Dashboard → Settings → Conversion Events (case-sensitive).
- 5Test with pixel debug mode: append ?owdebug=1 to the landing page URL for verbose console output showing all pixel activity.
- 6Check TCF consent: if a user has denied consent (EU traffic), the pixel will not fire. This is correct behavior — not a bug.
Creatives rejected by review
Policy violations (prohibited content, misleading claims) or technical spec failures (file size, dimensions).
- 1Check rejection reason at Dashboard → Creatives → [id] → Review Notes — the specific violation code is shown.
- 2File size over limit is the most common technical reason: static images ≤ 150 KB, animated ≤ 500 KB, HTML5 ZIP ≤ 500 KB.
- 3Misleading health claims, exaggerated income promises, and fake news headlines are always rejected regardless of vertical.
- 4iGaming, Crypto, Dating, and Supplements require manual review — this is not a rejection, allow up to 4 working hours.
- 5After fixing the issue, re-submit from Dashboard → Creatives → [id] → Re-submit for Review. Each submission starts a fresh review cycle.
- 6For HTML5 creatives rejected as 'broken': ensure index.html is at the ZIP root and all asset paths are relative (not absolute).
API returning HTTP 429 Rate Limit errors
Default limit is 1,000 requests/minute per API key. Heavy polling or bulk operations without batching commonly trigger this.
- 1Check the X-RateLimit-Remaining response header before each request to monitor your remaining quota.
- 2Implement exponential backoff: on 429, wait 2^n seconds before retrying (2 s, 4 s, 8 s, up to 64 s).
- 3For stats polling: cache responses for a minimum 5 minutes — hourly data does not change more frequently than once per hour.
- 4For bulk campaign creation: use the batch endpoint POST /v1/campaigns/batch (up to 50 campaigns per call).
- 5Contact support@orbitwise.io to request a rate limit increase for high-volume integrations (provide your key's usage pattern).
Display banner CTR is very low (<0.03%)
Creative fatigue, poor visual hierarchy, wrong ad size, or mis-targeted audience.
- 1Rotate creatives — CTR typically drops 30–40% after day 7 with static creatives. Fresh creative is the single highest-impact change.
- 2Add 300×250 size if not already active — it has the highest inventory volume and typically 2–3× higher CTR than leaderboard or skyscraper formats.
- 3Switch from static to animated (GIF or CSS) — animated ads average 60–120% higher CTR. Keep animation to max 3 loops.
- 4Review placement performance: footer banner placements have inherently lower CTR than in-content placements. Review placement-level data in Analytics.
- 5Check audience targeting alignment — if the ad message doesn't match what the audience segment expects, CTR will suffer regardless of creative quality.
Account balance not updating after deposit
Different payment methods have different settlement times.
- 1Card and PayPal deposits: visible within 5 minutes. Hard refresh Dashboard → Billing if not visible.
- 2SEPA bank transfer: 1 business day. SWIFT international: 2–3 business days.
- 3Crypto (USDT/USDC on TRON/ETH): visible after 2 blockchain confirmations — approximately 5 minutes on TRON, 3 minutes on ETH.
- 4Available balance = total deposited minus total spend minus reserved budget (budget committed to currently active campaigns).
- 5If a card charge appears on your bank statement but balance is not updated after 1 hour, contact billing@orbitwise.io with the transaction ID.
Campaign delivery stops unexpectedly mid-flight
Auto-pause triggers: daily budget exhausted, CPA threshold exceeded, balance depleted, or fraud event detected.
- 1Check campaign status badge — AUTO_PAUSED shows a reason code tooltip (budget, cpa_overage, low_balance, fraud_hold).
- 2Verify account balance: Dashboard → Billing → Available Balance. Low balance auto-pauses all campaigns.
- 3Check if daily budget was fully spent — UTC midnight resets the daily cap, allowing delivery to resume automatically next day.
- 4Review CPA auto-pause setting: if actual CPA exceeds target by >50% for 2 consecutive hours, campaign auto-pauses.
- 5Check the Campaign Event Log: Dashboard → Campaigns → [id] → Event Log shows a timestamped record of all status changes with reason codes.
Legal & privacy
Compliance & Privacy
TCF 2.2, GDPR, CCPA, COPPA — enforced at the infrastructure layer, not via campaign settings. Consent strings are evaluated on every EU bid request. Standard compliance cases need zero custom engineering.
GDPR / TCF 2.2
Processes IAB TCF 2.2 consent strings on every EU bid request. Campaigns serve only to consented users. Explicit consent required — legitimate-interest signals are not used.
CCPA (US Privacy)
US traffic honors GPP opt-out signals. No sale of personal data. Data subject requests processed within 45 days via privacy@orbitwise.io.
COPPA (Children)
Sites and apps classified as children's content are automatically excluded unless the campaign has passed manual COPPA compliance review.
Data Retention
Raw event logs: 90 days. Aggregated stats: 24 months. IP addresses are truncated to /24 before storage. Retention period is configurable per account.
Brand Safety (GARM)
Inventory classified using GARM Brand Safety tiers. Set your level (Conservative, Standard, Permissive) per campaign. Custom domain block-lists at account level.
Ads.txt / Sellers.json
OrbitWise validates ads.txt and sellers.json on every domain before serving. Unauthorized resellers are excluded. Our Seller ID is listed in the public sellers.json.
Start your first campaign — live in 10 minutes
€50 deposit, 10 minutes to first impression. Prepaid credits — no monthly commitment, no hidden network fees. Credits roll over if unused.
FAQ
Frequently Asked Questions
Questions not covered here? Contact the team at support@orbitwise.io — typically replied within 4 business hours.