> For the complete documentation index, see [llms.txt](https://docs.tomoads.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tomoads.com/help/troubleshooting.md).

# Troubleshooting

Use this guide to fix common advertiser and publisher issues before opening a support ticket.

## Campaign Stuck In Pending Review

New or edited campaigns stay in **Pending Review** until TomoAds reviews them. Draft campaigns are not reviewed until you submit them.

Check the following:

* The campaign was submitted, not just saved as a draft.
* The creative follows TomoAds policies.
* The destination URL works and matches the campaign.
* The budget, schedule, and targeting are complete.

If the campaign was rejected, read the rejection reason, make the requested changes, and resubmit. If review takes much longer than expected, open a ticket with your campaign name and a screenshot of the campaign status. Include the campaign ID only if it is visible in your dashboard.

## Ads Not Showing

Low or zero impressions usually means setup, eligibility, or demand needs attention.

Publisher checks:

* The property is **Verified**.
* The placement is **Active**.
* Website and Mini App placements have the TomoAds tag installed from the placement setup instructions.
* Telegram bot message ads are using the setup details shown in the dashboard.

Advertiser checks:

* The campaign is **Active** and approved.
* The budget and schedule allow delivery.
* The selected format matches the publisher inventory.
* Targeting is not too narrow.

Setup checks:

* Browser extensions or network tools are not blocking ad content during testing.
* Telegram Mini App ads are tested inside a real Telegram client.
* Your site or bot has real traffic.

If verified, active placements still show no impressions after real traffic, open a support ticket with the campaign name, property URL or bot handle, placement name, screenshots, and what you already tested. Include IDs only if they are visible in your dashboard.

## Verification Keeps Failing

Verification can fail if the token or record is not live yet. Fix the issue and click **Verify** again.

| Method              | What must work                                                                                                |
| ------------------- | ------------------------------------------------------------------------------------------------------------- |
| Verification file   | The verification file opens publicly on your domain and shows the exact verification code from the dashboard. |
| DNS TXT             | The TXT record from the dashboard is visible in public DNS.                                                   |
| Verification script | The verification script from the dashboard is installed on a live page under the registered path.             |
| Telegram bot        | The bot handle identifies a real Telegram bot.                                                                |

Common fixes:

* Re-copy the verification code or setup step from the dashboard.
* Remove extra text, HTML, or whitespace from the verification file.
* Wait for DNS propagation.
* Allow public access through your CDN, firewall, or hosting provider.
* Load the live page after installing the verification script.

See [Property Verification](/for-publishers/property-verification.md). If another publisher has already verified the property and you believe that is wrong, contact support.

## Impressions But No Earnings

Impressions and billable events are not always identical. For example, video reward ads require the watch to complete, and Telegram click ads require a verified click.

Also check:

* New earnings may be in a hold period before becoming available.
* Some activity may not qualify for earnings, such as repeated or incomplete events.
* Your floor price may be higher than available advertiser bids.
* Publisher earnings can differ from advertiser spend because platform fees and payout timing apply.

If you have sustained billable activity but no earnings appear after the expected reporting delay, open a support ticket.

## Payout Delayed Or Stuck

Before requesting a payout, confirm:

* Your available balance meets the payout minimum shown in the dashboard.
* Any required payout onboarding is complete.
* Your wallet or payout destination is valid for the selected method.
* You do not already have another payout in progress.
* Your account is in good standing.

Deposits and payouts can also wait on payment provider or network confirmation. If a payout remains in processing longer than the dashboard timeframe, open a ticket with the payout request details and a screenshot of the status.

## Telegram Bot Will Not Register

TomoAds usually identifies your bot from its username. If that fails, the dashboard may ask for the bot's numeric ID.

Use Telegram's official tools or your bot setup screen to confirm the bot ID.

Important:

* Use the bot's ID, not your personal Telegram user ID.
* Do not share the full BotFather token. After saving, confirm the property shows **Verified** and the placement setup screen shows the expected next steps.

## Opening A Support Ticket

Include:

* Account email.
* Relevant campaign name, property URL or bot handle, placement name, or payout request.
* The exact dashboard message or screenshot you saw.
* What you already tried.

Do not include bot tokens, private credentials, private setup values, or full payment credentials in public channels. Include IDs only if they are visible in your dashboard and helpful for support.

## Related

* [Property Verification](/for-publishers/property-verification.md)
* [Billing and Payouts](/account/billing-and-payouts.md)
* [Support and Help](/account/support-and-help.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.tomoads.com/help/troubleshooting.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
