DECTYL Book a pilot

Detection verification · Read-only

Your coverage looks complete. That's not the same as coverage that fires.

A share of the detections you already run are silently dead: enabled, green in the console, and structurally unable to fire. Dectyl adjudicates every rule in your SIEM against the reality of your telemetry, read-only, and tells you exactly which ones, why, and how long they have been that way.

The question your board will ask is no longer "do we have detections for this?" It's "which of these can actually fire, and how do you know?" Almost no one can answer that with evidence.

Read-only. Nothing installs. No log data leaves your environment.

Adjudication ledger Specimen · 3 of 847 rules
LSASS memory access from non-system process
index=wineventlog · field: TargetImage
CANNOT FIRE
Agent update renamed the field 214 days ago. The rule has been searching for a field that no longer exists. Console status: enabled, green.
Tor exit-node egress from server subnet
index=netfw · lookup: tor_exit_nodes.csv
CAN FIRE
Every dependency live: source ingested, fields present, lookup current as of this week. This is what CAN FIRE looks like: checkable, not assumed.
Impossible travel across privileged accounts
macro: `auth_events` · lookup: geo_ip_ranges.csv
INDETERMINATE
Nested macro, three levels deep, one level unresolvable read-only. We could guess. We don't. No verdict without evidence.
The problem

Coverage on paper isn't coverage that fires.

Detection rules die silently. A log source drops. An agent update renames a field. A lookup table goes stale. A shared macro gets edited. The rule stays in your console: deployed, green, quiet.

A rule can be mapped to a technique and still be unable to fire: the log source is missing, or the enrichment is dead. On every coverage heatmap that rule is a green cell. The heatmap cannot tell the difference.

Here is the trap. In the SOC, silence is the success state. A well-written rule rarely fires. So a dead rule and a healthy one look identical, and there is no alarm for the difference. Ingestion monitoring tells you the pipes are flowing. It cannot tell you the rules downstream still work.

SIEMs are sold on what they collect, never on what they can detect.

Your SIEM vendor has no incentive to grade its own detections. Someone independent has to.

Third-party evidence

This isn't only Dectyl saying it.

Independent industry research · 2025

A 2025 study analyzing more than 13,000 production detection rules across enterprise SIEM deployments found that roughly 13% were silently broken: enabled, green in the console, and structurally unable to fire. The same study found close to 79% of MITRE ATT&CK techniques sat unmonitored.

No console surfaces this on its own. It shows up only when someone checks every rule against what the environment can actually produce, which is the check Dectyl runs against your full rule set, not a sample.

The product

Every rule. One verdict. Receipts included.

Dectyl adjudicates your entire detection rule set against the reality of your telemetry and returns one of three verdicts per rule.

01

The adjudication runs against a representation of your detection stack (rules, log sources, enrichment tables) inside your environment. Read-only.

02

We reason over that model to determine which detections can actually fire, dependency by dependency.

03

You get a concrete list: these rules can't fire, and why. You can verify every finding yourself.

CAN FIRE

Every dependency verified present: log source ingested, fields live, lookups resolving.

CANNOT FIRE

Structurally dead, with the exact reason: the missing sourcetype, the renamed field, the broken macro. Evidence your engineers can check in under two minutes.

INDETERMINATE

We could not resolve it, and we say so. No verdict without evidence. Ever.

The output is a report your detection engineers will trust and your CISO can put in front of the board: what can fire, what can't, why, and what to fix first.

No vendor required

Don't take our word for it. Check five rules by hand.

Pick the five rules you are counting on most. For each one, run three searches. Paste them as written.

Field test worksheet
CHECK 01
Is the rule's log source still flowing?

Take the index and sourcetype the rule searches, then:

| tstats count where index=<INDEX> sourcetype=<SOURCETYPE> earliest=-7d by _time span=1d

Empty result, or days at zero: everything downstream of this source is dead.

Take the table the rule queries, then:

<TableName>
| where TimeGenerated > ago(7d)
| summarize events = count() by bin(TimeGenerated, 1d)

Empty result, or days at zero: everything downstream of this table is dead.

CHECK 02
Do the fields the rule filters on still exist?

Run the rule's base search (index/sourcetype only, no conditions), then:

index=<INDEX> sourcetype=<SOURCETYPE> earliest=-24h
| fieldsummary
| search field IN (<every field the rule filters or stats on>)
| table field count distinct_count

Any field missing from this table, or at count 0: the rule can no longer match what it was written to match.

Run once per field the rule filters or aggregates on:

<TableName>
| where TimeGenerated > ago(24h)
| summarize total = count(),
    populated = countif(isnotempty(<FieldName>))

Populated at zero while total is high: the rule can no longer match what it was written to match. Schema-level checks like getschema show the column exists even when nothing populates it, which is exactly the trap.

CHECK 03
Has the rule ever produced a result?
index=_internal sourcetype=scheduler savedsearch_name="<RULE NAME>" earliest=-90d
| stats sum(result_count) as results_90d count as runs_90d

Runs high, results zero: the rule executes on schedule and has matched nothing in ninety days. It might be healthy and quiet. It might be dead. The point is that this check cannot tell you which. That is the difference between monitoring and verification, and it is why check 3 needs checks 1 and 2, and why your rule set needs Dectyl.

SecurityAlert
| where TimeGenerated > ago(90d)
| where AlertName == "<RULE NAME>"
| summarize alerts_90d = count()

Zero alerts over ninety days: the rule might be healthy and quiet. It might be dead. The point is that this check cannot tell you which. That is the difference between monitoring and verification, and it is why check 3 needs checks 1 and 2, and why your rule set needs Dectyl.

SentinelHealth can confirm the rule is running, but only with health diagnostics enabled. A footnote, not a dependency.

If every check passes, you don't need us. If one fails, you have found a dead rule your console has been calling green, and you have the evidence in hand.

That is the scope conversation. Nothing else needs to leave your environment.

Different stack? Reply with your SIEM and the five rules. We'll send you the equivalent checks.

Trust architecture

Built to survive your security team's scrutiny.

NOTHING INSTALLS

No agents, no appliances, no attack simulation, no code executing in your environment. Verification without simulation: nothing executes, nothing risks production.

NO LOG DATA LEAVES

Adjudication needs rule logic and telemetry metadata, never your logs.

YOU KEEP THE ONLY COPY

Dectyl does not retain your rules or your verdicts. Your continuous detection assurance is yours alone.

Now scheduling

Now scheduling August pilots.

A free three-week read-only pilot: your full rule set adjudicated, every verdict backed by checkable evidence, delivered as a board-ready report. You keep the only copy.

The engagement runs the way assessments your team already accepts do: scoped up front with success criteria in writing, read-only throughout, three weeks end to end, a report your engineers can check and your CISO can sign.

If the report finds nothing your team didn't already know, you've spent three review calls and gained a board-ready attestation that your rules can fire: signed evidence, not absence of bad news.

Pilot report · summary page Specimen · not a finding
847
RULES ADJUDICATED
112
CANNOT FIRE
96
INDETERMINATE
639
CAN FIRE
Cannot fire, by cause
Log source not ingested41
Field renamed or absent33
Lookup stale or empty22
Macro broken or unresolved16
Every count expands to per-rule evidence in the full report. You keep the only copy.

Pilots run one at a time, three weeks each. Requested this week, the report is in your hands before your next board review, backed by the same evidence bar as the research in Finding 02.

Book the pilot

No call required. The email is pre-filled. Scope by reply.