Credits missing or charged twice

Updated Oct 20263 min read

If your balance is lower than you expect, or something looks charged twice, there's almost always an explanation in your usage history or ledger. Here's how to find it.

1. Look at what ran

Open Usage history. It lists everything you ran this month with what it cost, newest first, and the month's total at the top. Use the type filters to narrow it down. See Read your usage history.

Remember that work started outside the app counts too: API calls, Claude or Cursor through MCP, Clay columns, n8n workflows, captures and watchers running in the background.

2. Check the usual explanations

Your monthly credits reset. Plan credits are replaced by the new allocation at the start of each billing cycle; unused ones don't roll over. Pack credits never expire. If your balance dropped on your renewal date, this is why. See Monthly credits vs credit packs.

Your plan ended. When a cancelled subscription reaches the end of its last paid period, the remaining plan credits expire. Pack credits stay.

Credits are held while work runs. Some actions hold the most they could cost while they run, then return what wasn't used. For example, an email search holds the price of a found email and returns it if nothing is found. Wait for the work to finish; the balance settles.

Background work kept going. Captures, watchers saving post engagers, and monitors saving commenters and likers spend credits as they find people, within the limits you set. Check Signals and your lists for anything still running.

A larger job than expected. A list with many found emails or resolved catch-alls costs more than one with many misses. Open the job to see its counts.

3. "Charged twice"

These look like double charges but aren't:

  • The same address verified twice with a fresh check forced. A re-check within 180 days is free, but not when you skip the cache (Re-check in the app, or skip_cache: true in the API and Clay): that runs a new check and charges for the new result. Asking to resolve a catch-all that was never resolved is also a new, charged check; one resolved earlier comes back free.
  • Two tools running the same list. For example a Clay table and an n8n workflow both verifying the same addresses.
  • A retried request that started a second job. For API jobs, send an Idempotency-Key header so a retry returns the first job instead of starting another. See Long-running jobs.
  • A hold and its refund. In the ledger, a hold and its refund appear as two lines. Together they add up to the real cost.

4. A top-up hasn't arrived

Credits from a pack or plan should appear shortly after payment. If they haven't after a few minutes:

  1. Reload Credits & billing.
  2. Check that the payment went through: look for the receipt in your email.
  3. If you paid and the credits still aren't there, contact us with the receipt.

When to contact us

If you've checked the above and something still doesn't add up, email support@filtrat.io with:

  • the date or date range;
  • what you expected the balance to be, and what it is;
  • the job, list or row you think was charged wrongly (a screenshot of usage history helps);
  • for a payment, the receipt.

We'll go through the charges with you.

Was this helpful?
Still stuck?

Email support@filtrat.io with the list or job name and what you expected to see.

Contact support
MYKHAILO BURIAK · NIP: 8982334042 · REGON: 544788490 · ul. Mieszczańska 18/40, 50-201 Wrocław, Poland© 2026 filtrat.io