Help & Documentation

Getting Started

  1. Export your data โ€” Get a CSV export from Headset, Cultivera, or your retailer POS system. The file must have a column called "Name" containing the product names.
  2. Upload & enrich โ€” Go to Enrich CSV and upload your file. Processing happens instantly in your browser.
  3. Download results โ€” Click the green download button to get your enriched CSV with 8 standardized columns added.
  4. Fix mistakes โ€” Go to Review Queue to correct any unmatched or wrong categorizations.

Output Columns

Every enriched CSV has these columns appended:

ColumnDescriptionExample
BrandParent brand nameSUPER FOG
LineProduct lineFIRE
Product CategoryForm factor / device typeJEFE
Sub CategoryLine + product type comboFIRE - Jefe
StrainCannabis strain nameFATSO
CoreRelease designationCORE
WeightProduct weight2g
Units per PackNumber of units in package1

How Matching Works

The system uses a multi-tier matching pipeline. Each row is checked against these tiers in order โ€” the first match wins:

Tier 2: SKU Lookup

If the row has a SKU column, look up the Cultivera SKU code directly. 100% confidence.

Tier 5: Pattern Matching

Search for known strain names and product keywords in the product name. Uses n-gram substring matching with word-boundary scoring.

Tier 6: Fuzzy Match

If no exact pattern matches, use fuzzy string similarity to find the closest canonical product.

Tier 7: AI (LLM)

Last resort โ€” ask Claude to extract product fields from the messy name. Cached so the same name is never re-processed.

FAQ

Is my data sent to a server?

No. All matching happens in your browser. The CSV never leaves your computer. We optionally save anonymized match statistics to improve accuracy over time, but the raw data stays local.

What if a product isn't matched?

Unmatched products show up with confidence 0%. Go to the Review Queue to correct them. Your corrections become training data that improves future matches.

Can I add new strains or brands?

Yes โ€” use the Rules page to create pattern-matching rules for new products. In the future, you'll also be able to edit the strain catalog directly.

How accurate is it?

100% on our test dataset (400 rows from NYC Cannabis Exchange). Accuracy on your specific data depends on how many of your product names match known patterns. New corrections improve it continuously.

Technical Details

Catalog: 127 known strains, 91 Cultivera SKUs, 4 brands, 10 lines

Matching engine: TypeScript (client-side) + Python (backend)

Frontend: Next.js on Cloudflare Pages

Source code: private GitHub repository