13 Years × BAT RomaniaAnti-Illicit Trade · The build
How it works

How we built
the crawler.

Illicit cigarettes, untaxed, smuggled, menthol, counterfeit, are increasingly sold and promoted online. Here is how we turn that noise into evidence, at machine scale, with human-grade judgment.

01

The problem

Sellers hide in plain sight: coded words (“bomboane” = candy = cigarettes), wrong categories (a Rothmans listing filed under “agricultural machinery parts”), and a jump to private chat to close the deal.

A human analyst can’t watch fourteen channels around the clock. And a plain keyword filter either misses the coded posts or drowns in false positives, a “TIGAR” tyre listing, a vintage pack for collectors.

02

The idea, a wide net, then an intelligence that decides

We built a two-stage engine.

  • The netA Romanian-language lexicon, a few hundred terms across eight families (brand, illicit vocabulary, foreign origin, bulk units, delivery, private-chat redirects…), with fuzzy matching for typos, leetspeak and slang. Deliberately over-inclusive: it would rather flag too much than miss a coded post.
  • The judgmentEvery flagged post is then read by Claude (Sonnet), which does what a keyword can’t: decode the slang, rule out the false friends (tyres, vape, collectibles), read the intent (is this a sale?), and keep only genuine offers. This is what turns recall into precision.
03

From a hit to a case

A confirmed hit doesn’t stay an isolated line. Four layers turn it into intelligence:

  • Seller graphThe same phone number, handle, outbound link or photo across several listings collapses into one seller, exposing recurrence and cross-platform activity.
  • Pack authenticationA vision check on the photos for the tells of illicit product: missing or foreign tax stamp, Cyrillic text, non-compliant warning, banned menthol.
  • Chain of evidenceA timestamped screenshot, a SHA-256 hash and a custody log, so each case is admissible when handed to BAT Legal or the authorities.
  • Risk scoringA weighted 0-100 score mapped to Low / Medium / High / Urgent, with hard triggers (counterfeit, youth-access, large-scale distribution) that force the top levels.
04

Compliant by design

The continuous crawl honors robots.txt; a confirmed listing is then captured as targeted, permissible evidence for the rights-holder. Observation is passive, we read public posts and join groups as an ordinary member, but we never engage a seller, never buy, never solicit. Sellers are pseudonymised in reports; raw identifiers live only in the secured evidence log.

05

What it runs as

An automated pipeline scanning several times a day, producing a weekly monitoring report, an Excel evidence log, and < 24h alerts for the critical cases, with a monthly insight deck on top.

It gets sharper over time: any real listing a human spots that the engine missed is fed back as a new example, tightening both the lexicon and the AI’s judgment.

We don’t guess the black market.
We document it, at machine scale, with human-grade judgment, in a form BAT can act on.