@@ -12,6 +12,7 @@ Use these queries as starting points for analysis in BigQuery. Replace `your_pro
1212<Tip >
1313** Query Standards:**
1414- Always include ` is_order_sm_valid = TRUE ` for order-based analyses
15+ - If you have multiple stores, add ` sm_store_id = 'your-sm_store_id' ` to filter for a specific store's data
1516- Use ` your_project.sm_transformed_v2.* ` for standard tables
1617- Use ` your_project.sm_experimental.* ` for MTA tables
1718</Tip >
@@ -778,24 +779,24 @@ If you want table-level freshness/coverage metadata, start with: [`dim_data_dict
778779 SELECT
779780 COUNT (DISTINCT sm_order_key) AS orders_missing_utms,
780781 SUM (order_net_revenue) AS order_net_revenue_missing_utms,
781- COUNTIF(sm_zero_party_attribution_source IS NOT NULL AND TRIM (sm_zero_party_attribution_source) != ' ' ) AS orders_with_zero_party,
782+ COUNTIF(sm_zero_party_attribution_source IS NOT NULL AND TRIM (sm_zero_party_attribution_source) NOT IN ( ' ' , ' (none) ' ) ) AS orders_with_zero_party,
782783 SAFE_DIVIDE(
783- COUNTIF(sm_zero_party_attribution_source IS NOT NULL AND TRIM (sm_zero_party_attribution_source) != ' ' ),
784+ COUNTIF(sm_zero_party_attribution_source IS NOT NULL AND TRIM (sm_zero_party_attribution_source) NOT IN ( ' ' , ' (none) ' ) ),
784785 NULLIF(COUNT (DISTINCT sm_order_key), 0 )
785786 ) AS pct_with_zero_party,
786- COUNTIF(order_discount_codes_csv IS NOT NULL AND TRIM (order_discount_codes_csv) != ' ' ) AS orders_with_discount_code,
787+ COUNTIF(order_discount_codes_csv IS NOT NULL AND TRIM (order_discount_codes_csv) NOT IN ( ' ' , ' (none) ' ) ) AS orders_with_discount_code,
787788 SAFE_DIVIDE(
788- COUNTIF(order_discount_codes_csv IS NOT NULL AND TRIM (order_discount_codes_csv) != ' ' ),
789+ COUNTIF(order_discount_codes_csv IS NOT NULL AND TRIM (order_discount_codes_csv) NOT IN ( ' ' , ' (none) ' ) ),
789790 NULLIF(COUNT (DISTINCT sm_order_key), 0 )
790791 ) AS pct_with_discount_code,
791- COUNTIF(sm_order_landing_page IS NOT NULL AND TRIM (sm_order_landing_page) != ' ' ) AS orders_with_landing_page,
792+ COUNTIF(sm_order_landing_page IS NOT NULL AND TRIM (sm_order_landing_page) NOT IN ( ' ' , ' (none) ' ) ) AS orders_with_landing_page,
792793 SAFE_DIVIDE(
793- COUNTIF(sm_order_landing_page IS NOT NULL AND TRIM (sm_order_landing_page) != ' ' ),
794+ COUNTIF(sm_order_landing_page IS NOT NULL AND TRIM (sm_order_landing_page) NOT IN ( ' ' , ' (none) ' ) ),
794795 NULLIF(COUNT (DISTINCT sm_order_key), 0 )
795796 ) AS pct_with_landing_page,
796- COUNTIF(sm_order_referrer_domain IS NOT NULL AND TRIM (sm_order_referrer_domain) != ' ' ) AS orders_with_referrer_domain,
797+ COUNTIF(sm_order_referrer_domain IS NOT NULL AND TRIM (sm_order_referrer_domain) NOT IN ( ' ' , ' (none) ' ) ) AS orders_with_referrer_domain,
797798 SAFE_DIVIDE(
798- COUNTIF(sm_order_referrer_domain IS NOT NULL AND TRIM (sm_order_referrer_domain) != ' ' ),
799+ COUNTIF(sm_order_referrer_domain IS NOT NULL AND TRIM (sm_order_referrer_domain) NOT IN ( ' ' , ' (none) ' ) ),
799800 NULLIF(COUNT (DISTINCT sm_order_key), 0 )
800801 ) AS pct_with_referrer_domain
801802 FROM missing_utms;
@@ -809,14 +810,16 @@ If you want table-level freshness/coverage metadata, start with: [`dim_data_dict
809810 -- Assumptions: timeframe=last_90_days | metric=orders+net_revenue | grain=referrer_domain | scope=valid_orders_only_missing_utms
810811 WITH base AS (
811812 SELECT
812- COALESCE(NULLIF( LOWER (TRIM (sm_order_referrer_domain)), ' ' ), ' (none) ' ) AS referrer_domain,
813+ LOWER (TRIM (sm_order_referrer_domain)) AS referrer_domain,
813814 sm_order_key,
814815 order_net_revenue
815816 FROM ` your_project.sm_transformed_v2.obt_orders`
816817 WHERE is_order_sm_valid = TRUE
817818 AND order_cancelled_at IS NULL
818819 AND DATE (order_processed_at_local_datetime) >= DATE_SUB(CURRENT_DATE (), INTERVAL 90 DAY)
819820 AND COALESCE(NULLIF(LOWER (TRIM (sm_utm_source_medium)), ' ' ), ' (none) / (none)' ) = ' (none) / (none)'
821+ AND sm_order_referrer_domain IS NOT NULL
822+ AND TRIM (sm_order_referrer_domain) NOT IN (' ' , ' (none)' )
820823 )
821824 SELECT
822825 referrer_domain,
@@ -999,7 +1002,7 @@ If you want table-level freshness/coverage metadata, start with: [`dim_data_dict
9991002 AND DATE (order_processed_at_local_datetime) >= DATE_SUB(CURRENT_DATE (), INTERVAL 90 DAY)
10001003 AND COALESCE(NULLIF(LOWER (TRIM (sm_utm_source_medium)), ' ' ), ' (none) / (none)' ) = ' (none) / (none)'
10011004 AND sm_order_landing_page IS NOT NULL
1002- AND TRIM (sm_order_landing_page) != ' '
1005+ AND TRIM (sm_order_landing_page) NOT IN ( ' ' , ' (none) ' )
10031006 ),
10041007 parsed AS (
10051008 SELECT
0 commit comments