Detection as Code

Elastic Security vs Sekoia.io

Elastic Security totals 7.60 and Sekoia totals 3.46 on the 10 point detection-as-code rubric (sources read 2026-11-03 and 2026-11-04). Elastic Security leads by 4.14 points. The pair turns on testing: Elastic Security documents it in full, and Sekoia documents it only in part, or as a vendor claim.

The difference that decides this pair

The largest weighted gap on the rubric is rule health: Elastic Security scores 9.0 against 3.0 for Sekoia.io, which is 1.08 of the 10 point total.

Sekoia tests a Sigma pattern against historical data in a rule testing view, with results that are not saved as a report; Elastic Security, by contrast, ships Python unit tests for rules in the detection-rules repo and can run a rule manually over a past time range. dac-reference.readthedocs.io read 2026-11-03 docs.sekoia.com read 2026-11-03

Rubric side by side

Elastic Security totals 7.60 and Sekoia.io totals 3.46 out of 10.

Rubric criteria for Elastic Security and Sekoia.io, scores out of 10. A plus marks a criterion where Sekoia.io scores higher, a minus where Elastic Security does.

MarkerCriterionWeightElastic SecuritySekoia.io
-Rule languages and conversion paths157.04.0
-Git-native workflow and CI/CD188.03.5
-Testing157.03.5
-Coverage analytics125.03.5
-Rule health189.03.0
-Versioning and rollback88.03.0
-Content library size and freshness89.04.0
-Pricing transparency68.03.0
Total1007.603.46

The 33 capabilities as a diff

Read it as a diff from Elastic Security to Sekoia.io: 19 of 33 rows differ. A plus marks a row where Sekoia.io documents more (5 rows), a minus a row where Elastic Security documents more (14 rows). Rows with no marker match.

Capability rows for Elastic Security and Sekoia.io, grouped. Changed rows are shaded and carry a marker.

MarkerCapabilityElastic SecuritySekoia.io
Languages
Sekoia.io documents moreSigma nativeElastic Security, Sigma native: not documentednot documentedSekoia.io, Sigma native: documenteddocumented
Sigma conversionElastic Security, Sigma conversion: not documentednot documentedSekoia.io, Sigma conversion: not documentednot documented
YARA-LElastic Security, YARA-L: not documentednot documentedSekoia.io, YARA-L: not documentednot documented
SPLElastic Security, SPL: not documentednot documentedSekoia.io, SPL: not documentednot documented
KQLElastic Security, KQL: not documentednot documentedSekoia.io, KQL: not documentednot documented
Elastic Security documents moreEQL or ES|QLElastic Security, EQL or ES|QL: documenteddocumentedSekoia.io, EQL or ES|QL: not documentednot documented
PythonElastic Security, Python: not documentednot documentedSekoia.io, Python: not documentednot documented
Visual builderElastic Security, Visual builder: not documentednot documentedSekoia.io, Visual builder: not documentednot documented
YARAElastic Security, YARA: not documentednot documentedSekoia.io, YARA: not documentednot documented
Elastic Security documents moreLucene or KQL-likeElastic Security, Lucene or KQL-like: documenteddocumentedSekoia.io, Lucene or KQL-like: partialpartial
Source control and CI
Elastic Security documents moreGit syncElastic Security, Git sync: documenteddocumentedSekoia.io, Git sync: not documentednot documented
Elastic Security documents morePR deployElastic Security, PR deploy: partialpartialSekoia.io, PR deploy: not documentednot documented
Elastic Security documents moreCLIElastic Security, CLI: documenteddocumentedSekoia.io, CLI: not documentednot documented
Rule APIElastic Security, Rule API: documenteddocumentedSekoia.io, Rule API: documenteddocumented
Elastic Security documents moreCI examplesElastic Security, CI examples: partialpartialSekoia.io, CI examples: not documentednot documented
Elastic Security documents moreEnv promotionElastic Security, Env promotion: partialpartialSekoia.io, Env promotion: not documentednot documented
Testing
Elastic Security documents moreUnit testsElastic Security, Unit tests: documenteddocumentedSekoia.io, Unit tests: partialpartial
ReplayElastic Security, Replay: documenteddocumentedSekoia.io, Replay: documenteddocumented
Elastic Security documents moreSynthetic eventsElastic Security, Synthetic events: partialpartialSekoia.io, Synthetic events: not documentednot documented
Sekoia.io documents moreBacktest reportsElastic Security, Backtest reports: not documentednot documentedSekoia.io, Backtest reports: partialpartial
Test coverageElastic Security, Test coverage: not documentednot documentedSekoia.io, Test coverage: not documentednot documented
Coverage analytics
ATT&CK mapElastic Security, ATT&CK map: documenteddocumentedSekoia.io, ATT&CK map: documenteddocumented
Elastic Security documents moreGap viewElastic Security, Gap view: documenteddocumentedSekoia.io, Gap view: partialpartial
Data sourcesElastic Security, Data sources: partialpartialSekoia.io, Data sources: partialpartial
Log source healthElastic Security, Log source health: partialpartialSekoia.io, Log source health: partialpartial
Rule health
Sekoia.io documents moreNoisy rulesElastic Security, Noisy rules: not documentednot documentedSekoia.io, Noisy rules: partialpartial
Elastic Security documents moreBroken rulesElastic Security, Broken rules: documenteddocumentedSekoia.io, Broken rules: partialpartial
Elastic Security documents moreField driftElastic Security, Field drift: partialpartialSekoia.io, Field drift: not documentednot documented
Elastic Security documents moreRule costElastic Security, Rule cost: documenteddocumentedSekoia.io, Rule cost: partialpartial
Sekoia.io documents moreLifecycleElastic Security, Lifecycle: partialpartialSekoia.io, Lifecycle: documenteddocumented
Library
Sekoia.io documents moreLibrary countElastic Security, Library count: partialpartialSekoia.io, Library count: documenteddocumented
Elastic Security documents moreCommunityElastic Security, Community: partialpartialSekoia.io, Community: not documentednot documented
CadenceElastic Security, Cadence: partialpartialSekoia.io, Cadence: partialpartial

documenteddocumentedpartialpartialnot documentednot documented

Sources for the rows that differ

Verdict by buyer type

Which of the two fits each kind of team.

BuyerVerdict
Elastic estateElastic Security is the better fit: it runs the estate natively and ships a detection_rules CLI for rules as TOML files; Sekoia documents no Elastic path.
a team starting from scratch with SigmaSekoia is the better fit: it runs native Sigma YAML, correlation rules included, but documents no CI workflow; Elastic Security documents no Sigma conversion path on the pages read.
Microsoft Sentinel estateNeither Elastic Security nor Sekoia documents a path for this buyer, so it does not separate them.

When to pick each

Elastic Security: Pick Elastic Security when testing is the deciding need: it ships Python unit tests for rules in the detection-rules repo and can run a rule manually over a past time range. It also leads on CI and deployment.

Sekoia.io: Pick Sekoia when rule languages matters more to you than testing, where Elastic Security documents more: it runs native Sigma YAML, including event_count, value_count and temporal correlation, alongside its own SOL queries.

Profiles: Elastic Security, Sekoia.io. Alternatives: to Elastic Security, to Sekoia.io.