Anonymous teams, without a call
Pseudonymous is fine. Unreachable is not.
Two domains, one discipline. On-chain: invariants for lending protocols and yield vaults, designed so an alert means something and you know what to do when it lands. In the SIEM: we currently run detection engineering for a US client on Splunk, writing and tuning content their analysts keep switched on.
These are different problems with different vocabulary. Pick the one that describes your week.
Audit finished, code shipped, and the monitoring plan is a Tenderly account nobody has configured. We design the invariants worth watching for lending protocols and yield vaults, implement them, and write the runbook that goes with each alert.
On-chain monitoring SIEM · MSSP and internal SOCSigma as the source of truth, compiled to your platform, mapped to ATT&CK, validated against the technique rather than a sample string, and tuned until the false-positive rate is one your analysts will tolerate.
SIEM detection engineeringEach one is a claim about the protocol that should always hold. The bar shows where the value sits against its limit; the number is always shown, because a bar on its own is not an answer.
Illustrative, not live. These are the shapes of invariant we write for lending protocols, with plausible values. Your set would be derived from your own contracts, and the thresholds argued for rather than assumed.
Thirteen of the patterns we check by hand, running in your browser as you type. Nothing is uploaded. The code never leaves this tab. It catches the shapes below; it cannot catch what actually matters most, which is why a person still reads your code.
Open the full scanner: all 13 patterns documented
What this is. Thirteen pattern checks derived from our own review checklist: reentrancy ordering, tx.origin auth, unprotected selfdestruct and initialisers, block-derived randomness, unchecked call returns, spot-price oracles, signature replay, unsafe downcasts, pre-0.8 arithmetic, unbounded payout loops, exact balance checks and timestamp gating.
What this is not. It does not compile your code, follow data across functions, model economics, or understand intent. A clean result here means thirteen patterns did not match, nothing more. Every finding we have ever reported that mattered came from a person reading the code, not from this.
A snapshot is a real review of one contract, not a teaser and not a full audit. Here is exactly where the line sits, so nobody is surprised.
Fixed fee agreed before work starts. No hourly drift. Every paid tier includes one free re-review after your fixes land.
| Tier | Scope | Price |
|---|---|---|
Snapshot Real findings on one contract, in 72 hours |
1 contract · ≤200 LoC | Free72 hours |
Single contract Full manual review of one contract, all severities |
≤500 LoC | $400–7003–5 days |
Project audit Whole codebase, PoC exploits for high and above, re-review |
≤1,500 LoC | $1,500–2,5007–10 days |
Protocol audit Multi-contract, architecture, oracle and governance review |
1,500+ LoC | $4,000–6,0002–3 weeks |
Continuous Review on every commit, for teams shipping weekly |
Rolling scope | From $800/moRetainer |
Ranges reflect complexity, not negotiation. You get a fixed number before we start.
Full pricing detail and estimator →
We publish a worked explanation of every vulnerability class we look for: real code, real exploits, real fixes. It’s the closest thing to sitting in on a review.
The contract sends value before updating its books, so the receiver calls back in and withdraws against a balance that has not moved.
A function that changes ownership or balances is reachable by anyone, because the modifier was never applied.
Arithmetic wraps instead of reverting, so zero minus one becomes an enormous number and the guard is always true.
A transfer fails and returns false rather than reverting, so the books are debited for value that never moved.
Authorisation checks who signed the transaction, not who called it, so any contract the owner touches inherits their authority.
Foreign code runs against your storage, so a write the logic contract thinks is its own overwrites the proxy implementation.
Cheap audits attract people who want a logo rather than a review. Our name goes on every report, so we screen before we accept, and we publish the rules rather than applying them quietly.
Pseudonymous is fine. Unreachable is not.
We won’t issue a report that implies otherwise.
An audit compressed below its honest duration buys false confidence.
We sell a report with findings in it, not a seal.
We still run audits, they are simply no longer the headline. A review is the cheapest way to find out what your invariants should be.
Manual review of EVM contracts by a named auditor, with published pricing and a report you can hand to your community. Most usefully, it produces the list of things worth watching once the code is live.
Audit services Free · PublicWorked entries on the exploit classes we monitor for: what broke, the protocol mechanic behind it, and the invariant that would have caught it. This is the proof, and it is free to read.
Read the libraryWe read the contract, work out what should always hold, and send five invariants worth monitoring plus one thing your current setup would miss. Three working days, and a person does the reading.
The five invariants are the argument. If they are all obvious, you did not need us and now you know. If two of them had not occurred to you, that is worth more than anything this page could claim.
It also tells us whether your protocol is one we understand well enough to be useful on, which is the part most vendors skip before quoting.
Prefer to talk to a person first? Contact us.