A core structural condition relevant to predicting rug pulls is the presence of a transfer function that restricts sell transactions through require() checks tied to a whitelist or other permission mapping. Mechanically, this pattern allows buy transactions to succeed while reverting sell attempts from non-whitelisted addresses, effectively trapping tokens in buyer wallets. This mechanism can be implemented by checking the sender or recipient against an allowlist before permitting transfer, causing sell transactions to fail at gas cost without altering balances. The honeypot pattern exemplifies this behavior, creating an illusion of liquidity and normal price action despite blocked exits. Detecting this requires direct contract inspection since on-chain trading history alone may not reveal failed sell attempts.
This pattern becomes risk-relevant primarily when the whitelist or permission list is modifiable by the contract owner post-launch, enabling selective blocking of sells after initial purchases. If the owner can dynamically add or remove addresses from the allowed sellers list, buyers may be trapped indefinitely, which aligns with rug pull mechanics. Conversely, the pattern can be benign in cases where the whitelist is fixed at deployment or controlled by decentralized governance, serving compliance or regulatory purposes. For instance, projects operating in jurisdictions with strict KYC requirements may enforce allowlists to restrict transfers legally. Without owner-modifiability, the structural capability to block sells is limited, reducing the likelihood of malicious exit blocking.
Additional signals that would shift the assessment include the presence of owner-controlled adjustable sell tax parameters, which can be raised suddenly to disincentivize selling without outright blocking it. The existence of a pause function or blacklist capability callable by the owner also heightens exit risk by enabling forced halts or selective blocking of addresses. Conversely, explicit renouncement of mint and freeze authorities on tokens can reduce concerns about supply inflation or transfer freezes, respectively, which might otherwise compound exit risk. Transparent, immutable contract code with multisig or timelocked upgrade mechanisms further mitigates risk by limiting sudden, unilateral changes to transfer permissions or tax parameters.
When this whitelist-based transfer restriction pattern combines with other common conditions like upgradeable proxies lacking timelocks or owner-controlled pause functions, the range of outcomes can extend from soft honeypots—where sells are discouraged by high taxes or temporary blocks—to hard rug pulls where sells are permanently reverted for most holders. The presence of active mint authority alongside transfer restrictions can enable sudden inflation that dilutes token value while trapping holders. In contrast, if the whitelist is immutable, authorities renounced, and no pause or blacklist functions exist, the pattern’s risk profile diminishes significantly. Thus, the interplay of multiple contract features determines whether this structural pattern signals a likely rug pull or a legitimate operational control.