Troubleshooting campaign publishing

Top 10 post-publish issues — stuck in progress, campaign not on platform, ad rejected, delivery issues, currency mismatch, with fixes.

Written By Salvatore Sinigaglia

Last updated About 4 hours ago

Top 10 post-publish issues — stuck in progress, campaign not on platform, ad rejected, delivery issues, currency mismatch, with fixes.

Troubleshooting campaign publishing

Beyond pre-publish validation errors, broader issues happen after Publish is clicked. Top 10 with cause + fix. For platform-specific issues see meta-108 Meta, gog-106 Google, ttk-103 TikTok.

Who is this for

Mediabuyers hitting issues post-publish: stuck publishes, ads not delivering, rejections, ad-platform-side errors. The "I clicked Publish, now what" troubleshooter.

1. Publish stuck "in progress" > 5 min

Symptom: clicked Publish in Campaign Creator OR Bulk Launch row stuck on Pending/In Progress.

Cause:

  • SQS worker backed up
  • Source platform API slow
  • Token issue (refresh needed)

Fix:

  • Wait 5-10 more min (workers may be queueing)
  • Check /bulk-launch/status/:workerRunId for status detail
  • Refresh Wevion's Ads Manager — if campaign visible there, it published; just status display lag
  • If still stuck after 30 min: contact support with workspace ID + bulk_run_id (if Bulk Launch)

2. Publish succeeded in Wevion, campaign not visible on platform

Symptom: Wevion's Ads Manager shows campaign created (green badge), but Meta/Google/TikTok native ad manager doesn't show it.

Cause:

  • Token issue: campaign published with stale token, platform rejected silently
  • Sync delay: 15-30 min for platform-side sync
  • Wrong ad account in dropdown (campaign published to different account than you thought)

Fix:

  • Verify the account_id in Wevion's Ads Manager campaign detail matches the account you opened in native UI
  • Refresh native ad manager after 15 min
  • If still missing: check connector card status (yellow = reconnect needed)
  • Force resync via account card menu

3. Bulk Launch row failed

Symptom: row shows red status badge with error message.

Cause: per-row issue — most common:

  • account_id from disconnected account
  • Missing required field per-platform (e.g. fan_page_id missing on Meta row)
  • Permission denied on platform (token lacks Ads management on that account)

Fix:

  • Click row → see specific error
  • Fix the cell value
  • Click Retry on that row
  • For systemic issues (multiple rows failing for same reason): fix template + retry all

4. Ad rejected by platform post-publish

Symptom: campaign published successfully + activated, but specific ad shows rejected after platform review (4-24h typical).

Cause:

  • Policy violation: misleading claim, prohibited product, image with text-rule issue
  • Trademark misuse: competitor name in copy
  • Restricted content: alcohol, gambling, healthcare without registration
  • Quality issue: poor creative, broken landing page

Fix:

  • Check rejection reason in native ad manager (Meta Ads Manager → ad detail → status)
  • Edit ad: fix copy / replace creative / verify landing page
  • Republish via Wevion's relaunch flow (apps/backend/src/services/meta-relaunch-ads-service.ts)
  • For ambiguous rejections: appeal via Meta Business Help

5. Wrong currency in budget

Symptom: set budget $50/day in Wevion, but platform shows €50 or different.

Cause: ad account's currency is immutable (set at creation). The $50 was interpreted in the account's native currency.

Fix:

  • Check ad account currency: Wevion's /connect/{platform} → account detail
  • For mixed-currency portfolio: budgets stay native; cross-channel rollup uses workspace currency
  • To change currency: create new ad account in desired currency (Meta Business Manager); migrate campaigns

6. Campaign launched but not delivering

Symptom: campaign active, but 0 impressions / 0 spend after 24-48h.

Cause:

  • Audience too narrow (low fill rate)
  • Bid too low (no auction wins)
  • Ad in extended review (rare, > 72h)
  • Pixel + conversion event not firing (Sales objective needs active conversion event)
  • Account suspended on platform side

Fix:

  • Expand audience (verify reach estimate)
  • Increase bid (let LOWEST_COST run without bid cap initially)
  • Check native ad manager for review status
  • Verify pixel firing on landing page (Pixel Helper)
  • Check ad account status on platform

7. Duplicate campaigns published

Symptom: same campaign appears twice in native ad manager.

Cause:

  • Clicked Publish twice (double-click)
  • Bulk Launch row included same campaign config in two rows
  • Migration / import duplicated

Fix:

  • Pause duplicate campaign in native ad manager
  • Archive or delete the duplicate (don't both spend)
  • Wevion's audit log can identify the publish events to trace

8. Activated but spend = $0 after 4 hours

Symptom: campaign active 4+ hours, spend still $0.

Cause:

  • Audience size: extreme narrowness limits auction participation
  • Bid: too low to win impressions
  • Creative review: still in platform's review queue
  • Day cap on account: account-level spend cap might block additional spend

Fix:

  • Check native ad manager for delivery status
  • Increase audience size and/or bid
  • Wait for review (up to 24h typical)
  • Check account-level spend limits

9. Campaign Creator preview looks fine, platform preview different

Symptom: Wevion's live preview shows the ad nicely, but Meta's preview shows differently (wrong crop, missing text, etc.).

Cause:

  • Aspect ratio mismatch between Wevion preview + platform actual
  • Text overlay positioning differs per platform
  • Wevion's preview is approximation, not pixel-perfect to platform

Fix:

  • Trust platform's preview (Meta Ads Manager native preview) for final verification
  • For aspect ratios: provide multi-aspect uploads matching each placement
  • Re-crop or re-design creative to match platform's safe zones

10. Meta returns generic error code

Symptom: Wevion shows error like "Meta API error 1234567".

Cause: passed through from Meta's API. Wevion may not have a friendly message for every code.

Fix:

  • Look up error code at Meta's Marketing API errors docs
  • Common Meta codes:
    • 100: Invalid parameter
    • 190: OAuth token expired (reconnect)
    • 200: Permission denied
    • 1487: Generic API error
    • 1815136: Ad creative blocked (policy)
  • For ambiguous codes: contact support with full error message + workspace ID

When to contact support

support@wevion.ai when:

  • Issue not in this list
  • Multiple attempts to fix didn't work
  • Suspected Wevion bug (data corruption, publish-state inconsistency)
  • Platform-side error you can't decode

Include:

  • Workspace ID
  • Campaign ID (and/or bulk_run_id)
  • Platform (Meta/Google/TikTok/etc.)
  • Approximate timestamp
  • Exact error message
  • What you've tried

Response: 1-2 business days; priority on Pro/Enterprise.

Useful diagnostics

Before contacting support:

  • /ads-manager → campaign detail → History tab + last error
  • /bulk-launch/status/:workerRunId for wave detail (per-row Failed status carries the error)
  • Audit log filter action: campaign.publish (or wavo.rest.bulk_launch.dispatch for bulk) + relevant resource_id
  • Browser DevTools → Network tab during Publish action → capture 4xx/5xx response
  • Native platform's ad manager error message (often more detailed than Wevion's surface)

Recovery patterns

Recovery 1: Failed Bulk Launch wave

  1. Identify failed rows in Bulk Launch status
  2. Group by error type (often patterns: same connector issue, same validation miss)
  3. Fix root cause once → retry all failed rows
  4. Verify all rows succeed before declaring wave done

Recovery 2: Campaign published wrong account

  1. Pause campaign in wrong account
  2. Wait for any incidental spend to register
  3. Create new campaign in correct account
  4. Archive the wrong-account one (don't delete; preserves audit)

Recovery 3: Ad rejected for policy

  1. Fix the violation (rewrite copy, replace creative)
  2. Republish (creates new ad, original archived)
  3. For repeat issues: review Meta's ad policies + train team

Best practices

Always use pause-first

cc-119 pause vs active. Catches issues pre-spend.

Monitor Bulk Launch wave status

After publishing a Bulk Launch wave: monitor status page until all rows complete (success or fail). Don't walk away.

Document failed launches in audit log notes

When investigating failures, leave notes (Wevion may support audit-log annotations). Future team members benefit.

Have a recovery checklist

For each campaign type, have a 5-min recovery checklist for the most common failure modes. Speeds incident response.

FAQ

My publish is stuck "in progress" — what should I do?

Wait 5-10 minutes, since Wevion's SQS workers may be queueing or the platform API is slow. Check /bulk-launch/status/:workerRunId for detail and refresh Wevion's Ads Manager — if the campaign appears there, it published and it's just status-display lag. If it's still stuck after 30 minutes, contact support with your workspace ID.

Wevion shows my campaign published, but it's not on the platform. Why?

This is usually a token issue, a 15-30 minute platform sync delay, or the campaign publishing to a different ad account than expected. Verify the account_id in Wevion's campaign detail matches the account open in the native UI, refresh after 15 minutes, and force a resync from the account card if it's still missing.

My budget shows the wrong currency — how do I fix it?

An ad account's currency is immutable, set at creation, so a "$50" budget is interpreted in the account's native currency. Check the currency in Wevion's /connect/{platform} account detail. To bill in a different currency, create a new ad account in that currency in the platform's Business Manager and migrate campaigns.

When should I contact Wevion support about a launch problem?

Contact support@wevion.ai when the issue isn't in the troubleshooting list, multiple fixes haven't worked, you suspect a Wevion bug, or you can't decode a platform-side error. Include your workspace ID, campaign or bulk_run_id, platform, timestamp, and exact error message. Response is 1-2 business days, prioritized for Pro and Enterprise plans.

FAQ

My publish is stuck "in progress" — what should I do?

Wait 5-10 minutes, since Wevion's SQS workers may be queueing or the platform API is slow. Check /bulk-launch/status/:workerRunId for detail and refresh Wevion's Ads Manager — if the campaign appears there, it published and it's just status-display lag. If it's still stuck after 30 minutes, contact support with your workspace ID.

Wevion shows my campaign published, but it's not on the platform. Why?

This is usually a token issue, a 15-30 minute platform sync delay, or the campaign publishing to a different ad account than expected. Verify the account_id in Wevion's campaign detail matches the account open in the native UI, refresh after 15 minutes, and force a resync from the account card if it's still missing.

My budget shows the wrong currency — how do I fix it?

An ad account's currency is immutable, set at creation, so a "$50" budget is interpreted in the account's native currency. Check the currency in Wevion's /connect/{platform} account detail. To bill in a different currency, create a new ad account in that currency in the platform's Business Manager and migrate campaigns.

When should I contact Wevion support about a launch problem?

Contact support@wevion.ai when the issue isn't in the troubleshooting list, multiple fixes haven't worked, you suspect a Wevion bug, or you can't decode a platform-side error. Include your workspace ID, campaign or bulkrunid, platform, timestamp, and exact error message. Response is 1-2 business days, prioritized for Pro and Enterprise plans.

Last updated: 2026-05-17