Know What’s Not Billable
Several response statuses are free — you’re not charged when these fire:| Status | Why It’s Free |
|---|---|
message_too_short | Under 10 words — no extraction attempted |
message_too_long | Over 10,000 characters — rejected before processing |
blocked_keyword | Hard stop keyword matched |
country_not_allowed | Non-US country code |
ip_country_not_allowed | IP resolved to non-US |
language_not_allowed | Non-English detected |
Pass the country Parameter
If you know the user’s country, pass it in the country parameter. ChatAds will reject non-US traffic for free. Without it, ChatAds falls back to the ip parameter for geo-detection — and if neither is provided, it assumes US and processes the request, meaning you’ll pay for a no_offer result on traffic that was never going to convert.
Pass the ip Parameter
If you’re serving international traffic, pass the user’s IP address in the ip parameter. ChatAds will detect non-US traffic and reject it for free. Without ip or country, ChatAds assumes US and processes the request — meaning you’ll pay for a no_offer result on traffic that was never going to convert.
Turn On Brand-Only Mode
When Brand Only is enabled, ChatAds checks for brand-like words in the message before processing. If no brand is detected, the request returns early with statusno_brand_found. This is billed like other processed requests.
Pros:
- Branded matches tend to convert better since users already have a product in mind
- Higher precision — only surfaces offers when a specific brand is mentioned
- Lower fill rate — generic product mentions like “yoga mat” or “running shoes” won’t match
- Misses opportunities where a generic term could have resolved to a popular product
Check billed in the Response
Every response includes a data.billed field. Use it to track how many of your requests are actually costing you money. If you see a high ratio of billed: true with returned: 0, review the tips above to reduce waste.
Next Steps
Targeting
Configure filters to reduce irrelevant matches
Why No Offers?
Diagnose empty responses