What Is a Gnosis Safe Multisig, and Why a 1-of-1 Is Just One Key
A Gnosis Safe is a smart-contract wallet with a list of owners and a threshold. That is the whole idea. If a token's owner role points at a Safe with one owner and a threshold of 1, you have not found decentralisation. You have found a single key wearing a contract address. The distinction matters because the label "multisig" does a lot of unearned work in token documentation, and traders price it as if it means something.
This piece covers what a Safe is, how owners and threshold work, why a Safe 1-of-1 is functionally a single key, how to read getOwners() and getThreshold() yourself, and why a timelock is the stronger control. If you want the short version: read the two numbers before you read the chart.
What a multisig wallet actually is
A normal wallet on an EVM chain is an externally owned account. One private key, one signer, no code. Whatever that key signs, happens.
A multisig wallet is a contract. It holds assets, and it only moves them when a defined set of signers approves. The contract enforces the rule, not a policy document. The two parameters that define the rule are the owner set and the threshold.
Safe (formerly Gnosis Safe) is the most widely used implementation. It has been deployed across most EVM chains, its source is public, and its read methods are standard. That last point is what makes it useful for analysis: you do not have to trust a project's description of its own controls. You can call the contract and get the answer.
A Safe can hold any role a token contract recognises: owner, minter, treasury, guardian, upgrade authority. When a project says "the owner is a multisig", the correct follow-up is always the same. Which Safe, how many owners, and what threshold.
Owners and threshold: the two numbers that matter
getOwners() returns the list of addresses that can sign. getThreshold() returns how many of them must sign for a transaction to execute.
The threshold is the part people skip. A Safe with five owners and a threshold of 1 is not a five-person control. It is a one-person control with four spectators. A Safe with two owners and a threshold of 2 is a genuine two-party control, because neither owner can move anything alone.
Two more details matter as much as the numbers:
- Who the owners are. If the owner list is five fresh addresses with no history, the threshold tells you nothing about who is actually behind them. Owners that are themselves contracts, exchange deposit addresses, or a single entity's known wallets change the picture.
- Whether the owner set can change. The Safe's own rules govern how owners are added or removed. If one signer can rotate the owner set, the threshold is a temporary condition, not a structure.
A Safe is a tool. It is not a claim about governance quality. The tool tells you exactly what it was configured to do, and nothing more.
Why a Gnosis Safe 1-of-1 is a single key
A Safe with one owner and a threshold of 1 requires exactly one signature. That signature comes from exactly one private key. Functionally, it is the same as a plain wallet, with three differences that all make it worse for you as an observer:
- It looks better in a token's documentation.
- It costs more gas to use.
- Its control structure is hidden behind a contract call instead of visible as a plain address.
The third point is the one that costs traders money. A plain wallet address is obviously a single key. A Safe address is a contract, and "the owner is a contract" sounds like a safeguard until you check what the contract says. A Safe 1-of-1 can be re-keyed or emptied by whoever holds that one key, with no second signature and no on-chain warning beforehand.
This is not a hypothetical edge case. It is a common configuration, often because a team set up a Safe early, kept the default single-owner setup, and never revisited it. The label stuck. The control never changed.
If you are assessing a token and the privileged role resolves to a Safe 1-of-1, treat it exactly as you would treat a plain wallet. The risk is the same. The only difference is that the risk is harder to see, which is a reason to look harder, not a reason to relax.
How to check a Safe by hand
You need three things: the address holding the privileged role, the Safe's read methods, and a way to call them. Any block explorer with a Read Contract tab works, and so does a direct RPC call.
Step 1: find who holds the role
Open the token contract on the chain's block explorer and read the role. For a standard Ownable token that is owner(). For role-based contracts it is hasRole() with the relevant role hash, or a named getter for treasury, guardian or minter. Write down the address.
Step 2: check whether that address is a contract
If the address has no code, it is a plain wallet and you are done. If it has code, you need to know what the code is. getOwners() and getThreshold() exist on Gnosis Safe contracts. If those calls fail, the address is some other contract, and you have to work out what it does before you can say anything about who controls it.
Step 3: call getOwners and getThreshold
On a Gnosis Safe, both are public read calls with no arguments. getOwners() returns an array of addresses. getThreshold() returns a number. Read them together. One owner plus a threshold of 1 is a single key. Three owners plus a threshold of 2 is a real split. Also check whether any owner address is itself the token contract, a pool, or a burn address, because those are not signers in any meaningful sense.
Step 4: check for a timelock
If the role holder is a timelock contract rather than a Safe, the question changes. A timelock queues transactions and enforces a delay before they execute. The delay is the protection. During it, anyone watching the contract can see what is coming. A Safe has no such delay built in: once the threshold signs, the transaction lands in the next block.
On Robinhood Chain you can do all of this against the public RPC at https://rpc.mainnet.chain.robinhood.com, though it is rate-limited and Robinhood's own documentation says it is not for production use. The Robinhood Chain RPC guide covers the endpoint options, and Robinhood Chain explained covers the chain itself, including why 24 hours is roughly 860,000 blocks at its block time.
How SellTape does it in one message
Doing the above by hand takes a few minutes per token and a bit of care. SellTape compresses it into one Telegram message, and it does the part most people skip.
The contract scan section resolves privileged roles and reports what each one actually is: a plain wallet, a Safe with its threshold stated (a 1-of-1 is called out as a single key), a timelock, or some other contract. It also lists dangerous functions present in the bytecode, including mint, blacklist, pause, fee setters, the trading switch, upgrade and rescue, and it simulates whether the owner can change fees.
That sits alongside the holder map, which labels top holders as pool, staking vault, burn, Safe, contract or wallet, and separates the real float from supply that is not freely trading. The real float explainer goes into why a quoted market cap can overstate what is actually sellable.
The third part is the one no other tool does. SellTape splits the last 24 hours of selling across all pools of the token into protocol mint-and-sell, treasury-directed selling, unstakers, ordinary holders, wallets not checked for bot behaviour, and arbitrage bots. Those bots are not dumping; they move price between pools and reduce nobody's holdings, as covered in the arbitrage bots piece.
Every report carries a risk grade of LOW, ELEVATED, HIGH, CRITICAL or INCOMPLETE, plus the block number, UTC time and caveats. Missing data returns INCOMPLETE, never a low grade. You can see the format on the sample tape and the tiers on pricing.
Timelocks are the stronger control
A Safe answers the question "how many parties must agree". A timelock answers a different and more useful question: "how much warning do holders get".
Consider two configurations for a token's fee setter:
- A Safe 2-of-3. Two signers can change fees, and the change lands immediately.
- A timelock with a delay, controlled by the same team. The fee change is queued, visible on-chain, and executes only after the delay elapses.
The second is stronger for anyone holding the token, even though it may be controlled by fewer people. Warning time is what lets you act. A multisig with no delay gives you none.
The strongest setups combine both: a Safe holding the role, and a timelock between the Safe and the token. That gives you a multi-party requirement and a visible queue. When you see that, the controls are doing real work. When you see a Safe 1-of-1 with no timelock, the controls are decoration.
| Control | Who can act | What warning you get |
|---|---|---|
| Plain wallet | One key | None |
| Safe, 1 owner, threshold 1 | One key | None |
| Safe, 2 of 3 owners | Any two signers | None |
| Timelock contract | Role holder, after the delay | The full delay |
Where the Safe shows up in the holder map
A Safe is not only a control address. It is often a large holder. Treasury Safes, vesting Safes and team Safes can hold a meaningful share of supply, and that supply is not part of the real float.
SellTape labels Safe addresses in the holder map so you can see how much supply sits behind a contract wallet and how much is genuinely circulating. This connects to something worth checking before you size a position: unlock schedules, which tell you when locked supply arrives, and the sell simulation in the contract scan, which is the closest thing to a honeypot check you can run without touching the token yourself.
A Safe holding a large treasury position is not automatically a problem. What matters is whether that Safe can sell, whether it has sold, and whether the threshold means one person or several. The first two are answered by the sell-by-source breakdown. The third is answered by getThreshold().
Common misreadings
- "The owner is a contract, so it is decentralised." Contracts do what their code says. A Safe 1-of-1 is a single key.
- "It is a multisig, so there are multiple signers." There are multiple owners. Whether multiple signers are required is the threshold.
- "The threshold is 2, so two people must collude." Only if the two owners are genuinely independent. Check who they are.
- "A passing sell simulation means the token is fine." A passing simulation is not proof. Code can be upgraded or fees changed later, which is exactly what a Safe 1-of-1 owner can do.
Tools like Token Sniffer, GoPlus, Honeypot.is, Bubblemaps and DexScreener each answer part of this. None of them reports the owner's threshold as a single-key finding, and none splits sell flow by source. The comparison piece covers where each one stops.
Key takeaways
- A Gnosis Safe is a smart-contract wallet defined by its owner list and its threshold.
- A Safe with one owner and a threshold of 1 is a single key with a contract address.
getOwners()andgetThreshold()are public read calls. Use them before you trust the word "multisig".- A timelock gives you warning time, which a Safe does not.
- SellTape resolves the role holder, states the threshold, and splits 24 hours of selling by source in one Telegram message.
Scan a token free in Telegram at t.me/SellTapeBot.
SellTape is an information service, not financial advice.