Skip to main content
Status: Planned Tier: Pro

Overview

Cannabis culture is deeply local. The strains that dominate in Denver are different from the ones trending in Los Angeles, which are different from what is popular in Portland. Dispensaries carry different inventory, local growers produce different cultivars, and regional preferences shape what gets shelf space. But today, there is no way for a consumer to see what is actually popular in their area. Leafly and Weedmaps show reviews from everywhere, mixed together. National popularity rankings tell you nothing about what is moving in your neighborhood. Neighborhood Ranks fixes this by aggregating anonymized order data from High IQ users in your region and surfacing the strains that are genuinely trending locally. “Blue Dream is #1 in Austin this month.” “Gorilla Glue just entered the top 5 in Denver.” “Wedding Cake is the fastest-rising strain in the Bay Area.” This is collective intelligence — the cannabis equivalent of “what your neighbors are buying” — built on real purchase data, not self-reported reviews or dispensary marketing.

What It Does

  • Regional strain rankings — The top 10-20 strains in your area, ranked by purchase frequency among High IQ users, updated weekly
  • Trending indicators — See which strains are rising or falling in local popularity. “Up 5 spots this week” or “New to the top 10”
  • Regional comparison — Compare your area’s rankings to national trends. “OG Kush is #3 nationally but #8 in your area”
  • High Family distribution — See the breakdown of High Families in your region’s top strains. “Austin leans 40% Relaxing, 20% Uplifting”
  • Neighborhood-level granularity — When user density allows, zoom in from metro area to neighborhood-level trends
  • Personal overlay — Your strains are highlighted in the rankings. “You have tried 4 of the top 10 in your area”
  • Discovery prompts — “The #1 strain in your area is one you have never tried. Want to learn more?”
  • Seasonal trends — Monthly and quarterly trend views showing how local preferences shift over time
  • Map integration — View regional rankings overlaid on the Dispensary Map

User Value

The “aha moment” is discovering that the strain everyone around you is buying is one you have never heard of — and it turns out to be from a local grower that your favorite dispensary carries. Neighborhood Ranks connects you to your local cannabis community through data, not social media.

How It Works

1

Location Determination

Your region is determined from your saved dispensary addresses (not GPS tracking). If you have dispensaries in Austin, TX, you see Austin-area rankings. No continuous location tracking is needed.
2

Data Aggregation

Order data from all High IQ users in the region is aggregated and anonymized on the server. Individual user data is never exposed. Only aggregate counts and rankings are computed.
3

Minimum Threshold

Rankings only appear when a region has enough users to ensure meaningful data and protect individual privacy. The minimum threshold is configurable (initial target: 50+ active users per metro area).
4

Weekly Refresh

Rankings update every Monday with the previous week’s data. Trend indicators compare the current week to the prior 4-week average.
5

Browse Rankings

Open Neighborhood Ranks from the Stats tab or the Discover section. See the ranked list with trend arrows, High Family badges, and personal overlay (which ones you have tried).

Technical Approach

Privacy-First Architecture

Privacy is the central design constraint. Cannabis purchase data is sensitive, and users must trust that their individual behavior is never exposed.
PrincipleImplementation
No individual data exposedOnly aggregated counts (strain purchased by N users) are stored in the rankings table. No user IDs in ranking data.
Minimum thresholdRankings for a region are only computed and displayed when the region has 50+ active users. Below this threshold, no data is shown.
No GPS trackingRegion is inferred from saved dispensary addresses, not continuous location tracking. Users can manually set their region.
Differential privacySmall random noise is added to ranking counts to prevent inference attacks on small datasets.
Opt-outUsers can opt out of contributing their order data to regional rankings. Their data is excluded from aggregation, and they can still view rankings.

Aggregation Pipeline

User Orders (Convex) → Nightly Aggregation Job

                    Region Detection (dispensary addresses)

                    Strain Count by Region (anonymized)

                    Differential Privacy Noise Addition

                    Rankings Table (Supabase)

                    Weekly Snapshot + Trend Calculation
The aggregation runs as a scheduled job (likely Trigger.dev) that:
  1. Queries all orders from the past 7 days
  2. Groups by region (metro area) and strain
  3. Counts unique users per strain per region (not order count, to prevent one heavy buyer from skewing rankings)
  4. Applies differential privacy noise
  5. Writes the anonymized ranking to a Supabase table
  6. Computes trend indicators by comparing to the 4-week rolling average

Region Definition

Regions are defined at the metro statistical area (MSA) level, which groups cities and suburbs into meaningful local markets:
Example RegionMSA NameCoverage
AustinAustin-Round Rock-GeorgetownAustin, Round Rock, Cedar Park, Georgetown, etc.
DenverDenver-Aurora-LakewoodDenver, Aurora, Lakewood, Boulder, etc.
Los AngelesLos Angeles-Long Beach-AnaheimLA metro area
If user density is high enough in a sub-region, neighborhood-level rankings become available (zip code clusters).

Data Model

TablePurpose
regional_rankingsWeekly snapshot of strain rankings per region
regional_trendsComputed trend data (rising, falling, new, stable)
region_metadataRegion definitions, user counts, threshold status

Tier Impact

TierAccess
FreeNot available
ProFull regional rankings, trend indicators, personal overlay, map integration, seasonal trends

Dependencies

  • Order data in Convex — built and live
  • Dispensary directory with addresses — built and live
  • Strain database for profile lookups — built and live
  • Trigger.dev for scheduled jobs — built and live
  • Region inference from dispensary addresses (geocoding + MSA mapping)
  • Aggregation pipeline (Trigger.dev scheduled task)
  • Differential privacy implementation
  • Rankings storage schema (Supabase)
  • Trend calculation logic
  • Rankings UI (list view with trend indicators)
  • Dispensary Map integration for regional overlay
  • Sufficient user base per region (50+ users minimum)

Open Questions

  1. User base chicken-and-egg — This feature is only valuable with sufficient local users. In which metro areas do we have enough users to launch first? Should we launch in a single city as a beta and expand?
  2. Time window — Weekly rankings update every Monday. Is this too infrequent? Daily rankings would be more dynamic but require more users per region to be statistically meaningful. Monthly rankings are more stable but feel stale.
  3. Dispensary influence — If one dispensary in a region runs a sale on Blue Dream, the regional rankings spike for Blue Dream. Is that useful information (“it is available and discounted”) or noise (“it is artificially popular”)? Should we weight by unique dispensaries, not just unique users?
  4. National vs. local — Should we also show national rankings as a baseline comparison? This adds context (“OG Kush is #3 nationally but #8 in your area”) but might make local rankings feel less special.
  5. Gamification — Should we show the user’s contribution? “You are 1 of 127 users shaping Austin’s rankings this week.” This builds community but may make users uncomfortable knowing they are contributing data, even though it is anonymized.
  • User Reviews — Qualitative community data complements quantitative ranking data
  • Dispensary Map — Rankings overlaid on the map show where trending strains are available
  • Smart Suggestions — Regional popularity can be a signal in the recommendation engine
  • Collections & Rankings — The existing ELO-based strain rankings (personal, not regional)