This FAQ covers the metrics and data joins behind a cannabis ecommerce dashboard that tracks fulfillment health, channel economics, and retention rather than traffic alone.

Why are standard ecommerce metrics insufficient?

Sessions, product views, add-to-cart rate, checkout start rate, conversion rate, and average order value only describe the digital funnel. Cannabis ecommerce also runs on live inventory, fulfillment workflow, payment constraints, and purchase limits, plus the channel economics behind each order. Leave those out and a dashboard can report growth while fulfillment quality and margin are slipping.

Which operational KPIs should be included?

The operational layer measures whether the store can actually fulfill what the menu sold:

  • Out-of-stock rate. Orders with at least one unavailable line item divided by submitted orders.
  • Substitution rate. Orders with at least one substituted line item divided by submitted orders.
  • Cancellation rate by reason. Confirmed orders canceled for out-of-stock, payment failure, ID verification, customer rejection, delivery zone, or no-show.
  • Sync failure frequency. Failed POS-to-menu sync incidents, duration, and products affected.
  • Ready-time SLA. Orders ready within the promised pickup or delivery preparation window.
  • No-show rate. Packed orders not completed by the customer, broken down by pickup and delivery.

What formulas should be used?

out_of_stock_rate = orders_with_unavailable_line / submitted_orders
substitution_rate = orders_with_substituted_line / submitted_orders
cancellation_rate = canceled_orders / confirmed_orders
sync_failure_rate = failed_sync_jobs / total_sync_jobs
ready_time_sla = orders_ready_on_time / fulfilled_orders
no_show_rate = no_show_orders / packed_orders

Which economic KPIs should be included?

The economic layer keeps owned ecommerce, marketplace, and in-store sales separate:

  • Owned-site revenue share. Owned-site online revenue divided by total online revenue.
  • Marketplace dependency ratio. Marketplace online revenue divided by total online revenue.
  • Fully loaded marketplace margin. Marketplace gross revenue minus commissions and marketplace-driven discount cost.
  • Discount rate by channel. Discount dollars divided by gross revenue for owned, marketplace, email, paid search, and organic traffic.
  • Tender mix. Revenue and order count by cash, debit, pay-by-bank, and other supported tender types.
  • Fulfillment labor cost per order. Picking and handoff labor cost divided by fulfilled ecommerce orders.

Which retention KPIs should be included?

The retention layer runs on customer-level purchase history rather than anonymous session data:

  • Days to second order. Median number of days between first and second completed order.
  • Repeat purchase rate. Customers with two or more completed orders divided by customers with at least one completed order.
  • Cohort retention by acquisition channel. Repeat purchase rate grouped by first-order source.
  • Owned-channel revenue share. Revenue from email, direct, organic search, and other owned channels divided by total online revenue.
  • Lapsed-customer reactivation rate. Lapsed customers who return after a winback campaign divided by contacted lapsed customers.

What data model is required?

Everything hinges on a stable order ID that can join ecommerce, POS, marketplace, CRM, payment, and fulfillment records. The minimum fact table carries the identifiers, the order status and cancellation reason, the money fields, the three timestamps, and the line-item substitution flags:

order_id
customer_id
channel
store_id
fulfillment_type
payment_method
order_status
cancellation_reason
gross_revenue
discount_amount
commission_amount
submitted_at
ready_at
completed_at
has_unavailable_line
has_substitution

How often should the dashboard run?

Refresh operational metrics daily and alert on threshold breaches. Channel economics and retention can refresh weekly. Save the monthly review for trend lines and ignore isolated daily noise.

What is the minimum viable dashboard?

Start with five metrics: out-of-stock rate, sync failure incidents per week, marketplace dependency ratio, discount rate by channel, and days to second order. Add detail only after the joins behind those metrics are reliable.