USDC & USDT Smart Contract Blacklist Functions
Technical documentation of how Tether (USDT) and Circle (USDC) freeze addresses on-chain — the exact contract functions, events, and what each one does. Paste any address above to check its live blacklist status.
ETH & TRON: blacklist + sanctions check. BTC: sanctions only.
Live on-chain data from the official USDT & USDC contracts on TRON and Ethereum, updated continuously.
How It Works
The issuer (Tether or Circle) submits a blacklist transaction naming a TRON or Ethereum address.
The smart contract flags the address so it can no longer send or receive the token.
The contract emits an event — AddedBlackList / DestroyedBlackFunds (USDT) or Blacklisted (USDC) — recorded permanently on-chain.
USDTBanList indexes these events in real time and alerts subscribers within seconds.
Features
addBlackList(address) — USDT freeze
Tether Limited calls addBlackList(_evilUser) on the USDT contract (TRC-20 and ERC-20) to freeze an address. It emits the AddedBlackList event. The address can no longer transfer USDT. On Ethereum, the call goes through Tether’s multisig, so a submit precedes the on-chain execution.
removeBlackList(address) — USDT unfreeze
removeBlackList(_clearedUser) reverses a freeze and emits RemovedBlackList. Used after legal review or when an address is cleared. The reading getBlackListStatus(address) returns the current state.
destroyBlackFunds(address) — USDT burn
destroyBlackFunds(_blackListedUser) permanently burns the entire USDT balance of an already-blacklisted address and reduces total supply. It emits DestroyedBlackFunds. This is irreversible — tokens cannot be recovered. Used in criminal seizures.
blacklist(address) / unBlacklist(address) — USDC
Circle calls blacklist(_account) on the USDC (FiatToken) contract to freeze an address and unBlacklist(_account) to release it, emitting Blacklisted / UnBlacklisted. isBlacklisted(address) reads the state. USDC has no burn equivalent of destroyBlackFunds — frozen USDC is locked, not destroyed.
How USDT & USDC Blacklist Functions Work On-Chain
Both USDT and USDC are centrally administered stablecoins: the issuer keeps a privileged role in the smart contract that lets it freeze any holder. This is the mechanism behind every “Tether froze a wallet” headline. The functions are simple, but the difference between the two issuers matters a great deal in practice.
Tether’s USDT contract exposes three blacklist functions. addBlackList(address) freezes; removeBlackList(address) unfreezes; and destroyBlackFunds(address) burns the frozen balance outright, permanently shrinking supply. The burn step is what makes USDT freezes final — once destroyBlackFunds runs, the funds are gone. On Ethereum these calls are gated by a multisig, which is why a “submit” transaction is visible before execution; that gap is the window in which a fast holder can sometimes move funds before the freeze lands.
Circle’s USDC contract is more conservative. blacklist(address) and unBlacklist(address) are the only two levers, and there is no destroyBlackFunds analogue — a frozen USDC address is locked but its balance is never burned. Circle also restricts itself to freezing in response to law enforcement orders and sanctions designations (such as the OFAC SDN list), rather than at its own discretion. The result: roughly 570 USDC addresses have ever been blacklisted, versus more than 9,000 for USDT.
For exchanges, payment processors, and OTC desks, knowing these functions is operational, not academic. Receiving tokens from an address that later gets blacklisted does not freeze your wallet, but it taints the funds and can flag you in compliance screening. The only way to react before a freeze executes is to watch the on-chain events these functions emit — AddedBlackList, DestroyedBlackFunds, Blacklisted — in real time, which is exactly what USDTBanList does.
Frequently Asked Questions
What is the addBlackList function in the USDT smart contract?
What does destroyBlackFunds do?
What is the USDC blacklist function called?
Is there a wipeBlacklistedAddress function in USDC?
Can a blacklisted address be unfrozen?
How can I monitor these blacklist functions in real time?
Related Tools
Monitor USDT & USDC Blacklist Events in Real Time
Get instant alerts when addresses are banned, unbanned, or funds are destroyed.