[{"data":1,"prerenderedAt":30650},["ShallowReactive",2],{"tutorial-ecommerce-pipeline\u002Fdashboards":3,"content-query-ExL07s4Soz":497,"content-query-CfBqQbZcXI":855},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"readingTime":11,"category":12,"tags":13,"difficulty":18,"module":5,"subSteps":19,"step":20,"journeys":21,"learnMore":24,"author":31,"body":35,"_type":491,"_id":492,"_source":493,"_file":494,"_stem":495,"_extension":496},"\u002Ftutorials\u002Fecommerce-pipeline\u002Fdashboards","ecommerce-pipeline",false,"","Build Ecommerce Dashboards","Use the Bruin Cloud AI agent to generate interactive ecommerce dashboards - revenue trends, customer cohorts, marketing ROI, and product performance - from natural language.","2026-04-09",5,"Tutorial",[14,15,16,17],"Bruin Cloud","Bruin AI","Dashboards","E-commerce","Beginner",true,6,[22,23],"Data Analyst","Data Engineer",[25,28],{"label":26,"url":27},"AI Dashboard Builder tutorial","\u002Flearn\u002Fbruin-dashboards",{"label":29,"url":30},"Bruin Cloud overview","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fcloud\u002Foverview.html",{"name":32,"role":33,"image":34},"Bruin Team","Bruin Data","\u002Fbruin-logo-2025.svg",{"type":36,"children":37,"toc":475},"root",[38,47,53,59,64,78,84,91,103,109,114,123,136,142,146,154,167,173,177,185,198,204,208,216,229,235,240,278,283,289,294,338,342,348,353,416,428,436],{"type":39,"tag":40,"props":41,"children":43},"element","h2",{"id":42},"what-youll-do",[44],{"type":45,"value":46},"text","What you'll do",{"type":39,"tag":48,"props":49,"children":50},"p",{},[51],{"type":45,"value":52},"Use the Bruin Cloud AI Dashboard Builder to create four ecommerce dashboards from natural language prompts. No SQL, no chart configuration - just describe what you want to see.",{"type":39,"tag":40,"props":54,"children":56},{"id":55},"why-this-step-matters",[57],{"type":45,"value":58},"Why this step matters",{"type":39,"tag":48,"props":60,"children":61},{},[62],{"type":45,"value":63},"Reports in a database are useful for analysts, but most people want dashboards. A founder wants to check revenue trends. A marketing manager wants ROAS by channel. A product lead wants to know which SKUs are underperforming.",{"type":39,"tag":48,"props":65,"children":66},{},[67,69,76],{"type":45,"value":68},"The AI Dashboard Builder creates charts from your report tables based on what you ask for. It reads your ",{"type":39,"tag":70,"props":71,"children":73},"code",{"className":72},[],[74],{"type":45,"value":75},"AGENTS.md",{"type":45,"value":77}," context, so it uses the right metrics and definitions.",{"type":39,"tag":40,"props":79,"children":81},{"id":80},"instructions",[82],{"type":45,"value":83},"Instructions",{"type":39,"tag":85,"props":86,"children":88},"h3",{"id":87},"_1-open-the-dashboards-page",[89],{"type":45,"value":90},"1) Open the Dashboards page",{"type":39,"tag":48,"props":92,"children":93},{},[94,96,101],{"type":45,"value":95},"Go to the ",{"type":39,"tag":97,"props":98,"children":99},"strong",{},[100],{"type":45,"value":16},{"type":45,"value":102}," section in Bruin Cloud. Make sure your pipeline has run at least once so the report tables have data.",{"type":39,"tag":85,"props":104,"children":106},{"id":105},"_2-executive-kpis-dashboard",[107],{"type":45,"value":108},"2) Executive KPIs dashboard",{"type":39,"tag":48,"props":110,"children":111},{},[112],{"type":45,"value":113},"Ask the AI agent:",{"type":39,"tag":115,"props":116,"children":117},"blockquote",{},[118],{"type":39,"tag":48,"props":119,"children":120},{},[121],{"type":45,"value":122},"Build an executive dashboard showing daily revenue, order count, AOV, and new vs returning customers for the last 30 days with week-over-week comparison.",{"type":39,"tag":48,"props":124,"children":125},{},[126,128,134],{"type":45,"value":127},"The agent generates SQL against your ",{"type":39,"tag":70,"props":129,"children":131},{"className":130},[],[132],{"type":45,"value":133},"reports.rpt_daily_kpis",{"type":45,"value":135}," table and creates line charts, KPI cards, and comparison metrics.",{"type":39,"tag":85,"props":137,"children":139},{"id":138},"_3-marketing-performance-dashboard",[140],{"type":45,"value":141},"3) Marketing performance dashboard",{"type":39,"tag":48,"props":143,"children":144},{},[145],{"type":45,"value":113},{"type":39,"tag":115,"props":147,"children":148},{},[149],{"type":39,"tag":48,"props":150,"children":151},{},[152],{"type":45,"value":153},"Show me marketing performance by channel - ROAS, spend, and attributed revenue for Facebook Ads and email, with a trend chart for the last 90 days.",{"type":39,"tag":48,"props":155,"children":156},{},[157,159,165],{"type":45,"value":158},"This pulls from ",{"type":39,"tag":70,"props":160,"children":162},{"className":161},[],[163],{"type":45,"value":164},"reports.rpt_marketing_roi",{"type":45,"value":166}," and creates a multi-channel comparison with spend efficiency metrics.",{"type":39,"tag":85,"props":168,"children":170},{"id":169},"_4-customer-cohorts-dashboard",[171],{"type":45,"value":172},"4) Customer cohorts dashboard",{"type":39,"tag":48,"props":174,"children":175},{},[176],{"type":45,"value":113},{"type":39,"tag":115,"props":178,"children":179},{},[180],{"type":39,"tag":48,"props":181,"children":182},{},[183],{"type":45,"value":184},"Create a cohort retention chart showing monthly customer retention rates for the last 6 cohorts, plus lifetime value by cohort.",{"type":39,"tag":48,"props":186,"children":187},{},[188,190,196],{"type":45,"value":189},"This uses ",{"type":39,"tag":70,"props":191,"children":193},{"className":192},[],[194],{"type":45,"value":195},"reports.rpt_customer_cohorts",{"type":45,"value":197}," to build a retention heatmap and LTV trend.",{"type":39,"tag":85,"props":199,"children":201},{"id":200},"_5-product-performance-dashboard",[202],{"type":45,"value":203},"5) Product performance dashboard",{"type":39,"tag":48,"props":205,"children":206},{},[207],{"type":45,"value":113},{"type":39,"tag":115,"props":209,"children":210},{},[211],{"type":39,"tag":48,"props":212,"children":213},{},[214],{"type":45,"value":215},"Show top 20 products by revenue with their cancellation rate, and a category-level revenue breakdown.",{"type":39,"tag":48,"props":217,"children":218},{},[219,221,227],{"type":45,"value":220},"This queries ",{"type":39,"tag":70,"props":222,"children":224},{"className":223},[],[225],{"type":45,"value":226},"reports.rpt_product_performance",{"type":45,"value":228}," to create a ranked product table and a category breakdown chart.",{"type":39,"tag":85,"props":230,"children":232},{"id":231},"_6-iterate-and-ask-questions",[233],{"type":45,"value":234},"6) Iterate and ask questions",{"type":39,"tag":48,"props":236,"children":237},{},[238],{"type":45,"value":239},"The AI agent is conversational. You can refine any dashboard:",{"type":39,"tag":241,"props":242,"children":243},"ul",{},[244,256,268],{"type":39,"tag":245,"props":246,"children":247},"li",{},[248,250],{"type":45,"value":249},"Click on a chart to bring it into context, then ask: ",{"type":39,"tag":251,"props":252,"children":253},"em",{},[254],{"type":45,"value":255},"\"Change this to a bar chart instead\"",{"type":39,"tag":245,"props":257,"children":258},{},[259,261,266],{"type":45,"value":260},"Ask follow-up questions: ",{"type":39,"tag":251,"props":262,"children":263},{},[264],{"type":45,"value":265},"\"Why did revenue dip last Tuesday?\"",{"type":45,"value":267}," - the agent analyzes the data instead of building another chart",{"type":39,"tag":245,"props":269,"children":270},{},[271,273],{"type":45,"value":272},"Add new charts: ",{"type":39,"tag":251,"props":274,"children":275},{},[276],{"type":45,"value":277},"\"Add a chart showing refund rate by product category\"",{"type":39,"tag":48,"props":279,"children":280},{},[281],{"type":45,"value":282},"Every chart is backed by a visible SQL query you can inspect and verify.",{"type":39,"tag":40,"props":284,"children":286},{"id":285},"what-just-happened",[287],{"type":45,"value":288},"What just happened",{"type":39,"tag":48,"props":290,"children":291},{},[292],{"type":45,"value":293},"You now have four interactive ecommerce dashboards that update as your pipeline runs daily:",{"type":39,"tag":295,"props":296,"children":297},"ol",{},[298,308,318,328],{"type":39,"tag":245,"props":299,"children":300},{},[301,306],{"type":39,"tag":97,"props":302,"children":303},{},[304],{"type":45,"value":305},"Executive KPIs",{"type":45,"value":307}," - daily revenue, orders, AOV, customer mix",{"type":39,"tag":245,"props":309,"children":310},{},[311,316],{"type":39,"tag":97,"props":312,"children":313},{},[314],{"type":45,"value":315},"Marketing Performance",{"type":45,"value":317}," - spend, ROAS, and revenue by channel",{"type":39,"tag":245,"props":319,"children":320},{},[321,326],{"type":39,"tag":97,"props":322,"children":323},{},[324],{"type":45,"value":325},"Customer Cohorts",{"type":45,"value":327}," - retention rates and LTV by cohort",{"type":39,"tag":245,"props":329,"children":330},{},[331,336],{"type":39,"tag":97,"props":332,"children":333},{},[334],{"type":45,"value":335},"Product Performance",{"type":45,"value":337}," - top products and category breakdown",{"type":39,"tag":339,"props":340,"children":341},"hr",{},[],{"type":39,"tag":40,"props":343,"children":345},{"id":344},"thats-the-full-stack",[346],{"type":45,"value":347},"That's the full stack",{"type":39,"tag":48,"props":349,"children":350},{},[351],{"type":45,"value":352},"Over the course of this module, you built:",{"type":39,"tag":241,"props":354,"children":355},{},[356,366,376,386,396,406],{"type":39,"tag":245,"props":357,"children":358},{},[359,364],{"type":39,"tag":97,"props":360,"children":361},{},[362],{"type":45,"value":363},"Data ingestion",{"type":45,"value":365}," from 5 SaaS sources (Shopify and your selected tools) into your data warehouse",{"type":39,"tag":245,"props":367,"children":368},{},[369,374],{"type":39,"tag":97,"props":370,"children":371},{},[372],{"type":45,"value":373},"A staging layer",{"type":45,"value":375}," that cleans, deduplicates, and joins data across all sources",{"type":39,"tag":245,"props":377,"children":378},{},[379,384],{"type":39,"tag":97,"props":380,"children":381},{},[382],{"type":45,"value":383},"Business reports",{"type":45,"value":385}," for revenue, cohorts, products, marketing ROI, and daily KPIs",{"type":39,"tag":245,"props":387,"children":388},{},[389,394],{"type":39,"tag":97,"props":390,"children":391},{},[392],{"type":45,"value":393},"A local AI analyst",{"type":45,"value":395}," that answers questions through Bruin MCP",{"type":39,"tag":245,"props":397,"children":398},{},[399,404],{"type":39,"tag":97,"props":400,"children":401},{},[402],{"type":45,"value":403},"A cloud AI analyst",{"type":45,"value":405}," your team can talk to in Slack or Teams",{"type":39,"tag":245,"props":407,"children":408},{},[409,414],{"type":39,"tag":97,"props":410,"children":411},{},[412],{"type":45,"value":413},"Interactive dashboards",{"type":45,"value":415}," built from natural language in Bruin Cloud",{"type":39,"tag":48,"props":417,"children":418},{},[419,421,426],{"type":45,"value":420},"The pipeline runs daily on schedule. Your team can ask questions without writing SQL. And the ",{"type":39,"tag":70,"props":422,"children":424},{"className":423},[],[425],{"type":45,"value":75},{"type":45,"value":427}," file improves every time you add to it.",{"type":39,"tag":48,"props":429,"children":430},{},[431],{"type":39,"tag":97,"props":432,"children":433},{},[434],{"type":45,"value":435},"Where to go from here:",{"type":39,"tag":241,"props":437,"children":438},{},[439,444,456,461],{"type":39,"tag":245,"props":440,"children":441},{},[442],{"type":45,"value":443},"Add more data sources as your stack grows",{"type":39,"tag":245,"props":445,"children":446},{},[447,449,454],{"type":45,"value":448},"Add new terms and caveats to ",{"type":39,"tag":70,"props":450,"children":452},{"className":451},[],[453],{"type":45,"value":75},{"type":45,"value":455}," as you discover them",{"type":39,"tag":245,"props":457,"children":458},{},[459],{"type":45,"value":460},"Build additional dashboards for specific teams (marketing, ops, finance)",{"type":39,"tag":245,"props":462,"children":463},{},[464,466,473],{"type":45,"value":465},"Check out the ",{"type":39,"tag":467,"props":468,"children":470},"a",{"href":469},"\u002Flearn\u002Fcore-concepts",[471],{"type":45,"value":472},"Bruin Core Concepts",{"type":45,"value":474}," module if you want to go deeper on pipelines, assets, and variables",{"title":7,"searchDepth":476,"depth":476,"links":477},2,[478,479,480,489,490],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":481},[482,484,485,486,487,488],{"id":87,"depth":483,"text":90},3,{"id":105,"depth":483,"text":108},{"id":138,"depth":483,"text":141},{"id":169,"depth":483,"text":172},{"id":200,"depth":483,"text":203},{"id":231,"depth":483,"text":234},{"id":285,"depth":476,"text":288},{"id":344,"depth":476,"text":347},"markdown","content:tutorials:ecommerce-pipeline:dashboards.md","content","tutorials\u002Fecommerce-pipeline\u002Fdashboards.md","tutorials\u002Fecommerce-pipeline\u002Fdashboards","md",{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"readingTime":11,"category":12,"tags":498,"difficulty":18,"module":5,"subSteps":19,"step":20,"journeys":499,"learnMore":500,"author":503,"body":504,"_type":491,"_id":492,"_source":493,"_file":494,"_stem":495,"_extension":496},[14,15,16,17],[22,23],[501,502],{"label":26,"url":27},{"label":29,"url":30},{"name":32,"role":33,"image":34},{"type":36,"children":505,"toc":841},[506,510,514,518,522,532,536,540,549,553,557,564,574,578,582,589,599,603,607,614,624,628,632,639,649,653,657,685,689,693,697,732,735,739,743,794,804,811],{"type":39,"tag":40,"props":507,"children":508},{"id":42},[509],{"type":45,"value":46},{"type":39,"tag":48,"props":511,"children":512},{},[513],{"type":45,"value":52},{"type":39,"tag":40,"props":515,"children":516},{"id":55},[517],{"type":45,"value":58},{"type":39,"tag":48,"props":519,"children":520},{},[521],{"type":45,"value":63},{"type":39,"tag":48,"props":523,"children":524},{},[525,526,531],{"type":45,"value":68},{"type":39,"tag":70,"props":527,"children":529},{"className":528},[],[530],{"type":45,"value":75},{"type":45,"value":77},{"type":39,"tag":40,"props":533,"children":534},{"id":80},[535],{"type":45,"value":83},{"type":39,"tag":85,"props":537,"children":538},{"id":87},[539],{"type":45,"value":90},{"type":39,"tag":48,"props":541,"children":542},{},[543,544,548],{"type":45,"value":95},{"type":39,"tag":97,"props":545,"children":546},{},[547],{"type":45,"value":16},{"type":45,"value":102},{"type":39,"tag":85,"props":550,"children":551},{"id":105},[552],{"type":45,"value":108},{"type":39,"tag":48,"props":554,"children":555},{},[556],{"type":45,"value":113},{"type":39,"tag":115,"props":558,"children":559},{},[560],{"type":39,"tag":48,"props":561,"children":562},{},[563],{"type":45,"value":122},{"type":39,"tag":48,"props":565,"children":566},{},[567,568,573],{"type":45,"value":127},{"type":39,"tag":70,"props":569,"children":571},{"className":570},[],[572],{"type":45,"value":133},{"type":45,"value":135},{"type":39,"tag":85,"props":575,"children":576},{"id":138},[577],{"type":45,"value":141},{"type":39,"tag":48,"props":579,"children":580},{},[581],{"type":45,"value":113},{"type":39,"tag":115,"props":583,"children":584},{},[585],{"type":39,"tag":48,"props":586,"children":587},{},[588],{"type":45,"value":153},{"type":39,"tag":48,"props":590,"children":591},{},[592,593,598],{"type":45,"value":158},{"type":39,"tag":70,"props":594,"children":596},{"className":595},[],[597],{"type":45,"value":164},{"type":45,"value":166},{"type":39,"tag":85,"props":600,"children":601},{"id":169},[602],{"type":45,"value":172},{"type":39,"tag":48,"props":604,"children":605},{},[606],{"type":45,"value":113},{"type":39,"tag":115,"props":608,"children":609},{},[610],{"type":39,"tag":48,"props":611,"children":612},{},[613],{"type":45,"value":184},{"type":39,"tag":48,"props":615,"children":616},{},[617,618,623],{"type":45,"value":189},{"type":39,"tag":70,"props":619,"children":621},{"className":620},[],[622],{"type":45,"value":195},{"type":45,"value":197},{"type":39,"tag":85,"props":625,"children":626},{"id":200},[627],{"type":45,"value":203},{"type":39,"tag":48,"props":629,"children":630},{},[631],{"type":45,"value":113},{"type":39,"tag":115,"props":633,"children":634},{},[635],{"type":39,"tag":48,"props":636,"children":637},{},[638],{"type":45,"value":215},{"type":39,"tag":48,"props":640,"children":641},{},[642,643,648],{"type":45,"value":220},{"type":39,"tag":70,"props":644,"children":646},{"className":645},[],[647],{"type":45,"value":226},{"type":45,"value":228},{"type":39,"tag":85,"props":650,"children":651},{"id":231},[652],{"type":45,"value":234},{"type":39,"tag":48,"props":654,"children":655},{},[656],{"type":45,"value":239},{"type":39,"tag":241,"props":658,"children":659},{},[660,668,677],{"type":39,"tag":245,"props":661,"children":662},{},[663,664],{"type":45,"value":249},{"type":39,"tag":251,"props":665,"children":666},{},[667],{"type":45,"value":255},{"type":39,"tag":245,"props":669,"children":670},{},[671,672,676],{"type":45,"value":260},{"type":39,"tag":251,"props":673,"children":674},{},[675],{"type":45,"value":265},{"type":45,"value":267},{"type":39,"tag":245,"props":678,"children":679},{},[680,681],{"type":45,"value":272},{"type":39,"tag":251,"props":682,"children":683},{},[684],{"type":45,"value":277},{"type":39,"tag":48,"props":686,"children":687},{},[688],{"type":45,"value":282},{"type":39,"tag":40,"props":690,"children":691},{"id":285},[692],{"type":45,"value":288},{"type":39,"tag":48,"props":694,"children":695},{},[696],{"type":45,"value":293},{"type":39,"tag":295,"props":698,"children":699},{},[700,708,716,724],{"type":39,"tag":245,"props":701,"children":702},{},[703,707],{"type":39,"tag":97,"props":704,"children":705},{},[706],{"type":45,"value":305},{"type":45,"value":307},{"type":39,"tag":245,"props":709,"children":710},{},[711,715],{"type":39,"tag":97,"props":712,"children":713},{},[714],{"type":45,"value":315},{"type":45,"value":317},{"type":39,"tag":245,"props":717,"children":718},{},[719,723],{"type":39,"tag":97,"props":720,"children":721},{},[722],{"type":45,"value":325},{"type":45,"value":327},{"type":39,"tag":245,"props":725,"children":726},{},[727,731],{"type":39,"tag":97,"props":728,"children":729},{},[730],{"type":45,"value":335},{"type":45,"value":337},{"type":39,"tag":339,"props":733,"children":734},{},[],{"type":39,"tag":40,"props":736,"children":737},{"id":344},[738],{"type":45,"value":347},{"type":39,"tag":48,"props":740,"children":741},{},[742],{"type":45,"value":352},{"type":39,"tag":241,"props":744,"children":745},{},[746,754,762,770,778,786],{"type":39,"tag":245,"props":747,"children":748},{},[749,753],{"type":39,"tag":97,"props":750,"children":751},{},[752],{"type":45,"value":363},{"type":45,"value":365},{"type":39,"tag":245,"props":755,"children":756},{},[757,761],{"type":39,"tag":97,"props":758,"children":759},{},[760],{"type":45,"value":373},{"type":45,"value":375},{"type":39,"tag":245,"props":763,"children":764},{},[765,769],{"type":39,"tag":97,"props":766,"children":767},{},[768],{"type":45,"value":383},{"type":45,"value":385},{"type":39,"tag":245,"props":771,"children":772},{},[773,777],{"type":39,"tag":97,"props":774,"children":775},{},[776],{"type":45,"value":393},{"type":45,"value":395},{"type":39,"tag":245,"props":779,"children":780},{},[781,785],{"type":39,"tag":97,"props":782,"children":783},{},[784],{"type":45,"value":403},{"type":45,"value":405},{"type":39,"tag":245,"props":787,"children":788},{},[789,793],{"type":39,"tag":97,"props":790,"children":791},{},[792],{"type":45,"value":413},{"type":45,"value":415},{"type":39,"tag":48,"props":795,"children":796},{},[797,798,803],{"type":45,"value":420},{"type":39,"tag":70,"props":799,"children":801},{"className":800},[],[802],{"type":45,"value":75},{"type":45,"value":427},{"type":39,"tag":48,"props":805,"children":806},{},[807],{"type":39,"tag":97,"props":808,"children":809},{},[810],{"type":45,"value":435},{"type":39,"tag":241,"props":812,"children":813},{},[814,818,828,832],{"type":39,"tag":245,"props":815,"children":816},{},[817],{"type":45,"value":443},{"type":39,"tag":245,"props":819,"children":820},{},[821,822,827],{"type":45,"value":448},{"type":39,"tag":70,"props":823,"children":825},{"className":824},[],[826],{"type":45,"value":75},{"type":45,"value":455},{"type":39,"tag":245,"props":829,"children":830},{},[831],{"type":45,"value":460},{"type":39,"tag":245,"props":833,"children":834},{},[835,836,840],{"type":45,"value":465},{"type":39,"tag":467,"props":837,"children":838},{"href":469},[839],{"type":45,"value":472},{"type":45,"value":474},{"title":7,"searchDepth":476,"depth":476,"links":842},[843,844,845,853,854],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":846},[847,848,849,850,851,852],{"id":87,"depth":483,"text":90},{"id":105,"depth":483,"text":108},{"id":138,"depth":483,"text":141},{"id":169,"depth":483,"text":172},{"id":200,"depth":483,"text":203},{"id":231,"depth":483,"text":234},{"id":285,"depth":476,"text":288},{"id":344,"depth":476,"text":347},[856,2376,7040,15036,28342,30292],{"_path":857,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":858,"description":859,"date":10,"readingTime":860,"category":12,"tags":861,"difficulty":18,"module":5,"subSteps":19,"step":868,"variants":869,"journeys":870,"learnMore":871,"author":881,"body":882,"_type":491,"_id":2373,"_source":493,"_file":2374,"_stem":2375,"_extension":496},"\u002Ftutorials\u002Fecommerce-pipeline\u002Fproject-setup","Set Up Your Project & Warehouse","Install Bruin CLI, initialize an ecommerce project, connect your data warehouse, and set up AI-assisted development with Claude Code and the Bruin MCP.",8,[862,863,864,865,866,867,17],"Bruin CLI","Claude Code","MCP","ClickHouse","BigQuery","Snowflake",1,[865,866,867],[22,23],[872,875,878],{"label":873,"url":874},"Bruin project structure (docs)","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fcore-concepts\u002Fproject.html",{"label":876,"url":877},"Connections reference","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fconnections\u002Foverview.html",{"label":879,"url":880},"Bruin MCP setup guide","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fgetting-started\u002Fbruin-mcp.html",{"name":32,"role":33,"image":34},{"type":36,"children":883,"toc":2359},[884,888,893,899,904,959,1008,1012,1017,1022,1038,1042,1048,1061,1141,1146,1156,1162,1173,1204,1230,1236,1241,1906,1912,1924,2182,2188,2200,2244,2249,2257,2262,2291,2297,2302,2326,2331,2339,2344,2348,2353],{"type":39,"tag":40,"props":885,"children":886},{"id":42},[887],{"type":45,"value":46},{"type":39,"tag":48,"props":889,"children":890},{},[891],{"type":45,"value":892},"Create a project, connect your data warehouse, and set up Claude Code with the Bruin MCP so it can help you build the rest of the pipeline.",{"type":39,"tag":40,"props":894,"children":896},{"id":895},"prerequisites",[897],{"type":45,"value":898},"Prerequisites",{"type":39,"tag":48,"props":900,"children":901},{},[902],{"type":45,"value":903},"Before starting, make sure you have these installed:",{"type":39,"tag":241,"props":905,"children":906},{},[907,935],{"type":39,"tag":245,"props":908,"children":909},{},[910,915,917,925,927,933],{"type":39,"tag":97,"props":911,"children":912},{},[913],{"type":45,"value":914},"Git",{"type":45,"value":916}," - ",{"type":39,"tag":467,"props":918,"children":922},{"href":919,"rel":920},"https:\u002F\u002Fgit-scm.com\u002Fdownloads",[921],"nofollow",[923],{"type":45,"value":924},"git-scm.com\u002Fdownloads",{"type":45,"value":926},". Verify with ",{"type":39,"tag":70,"props":928,"children":930},{"className":929},[],[931],{"type":45,"value":932},"git --version",{"type":45,"value":934},".",{"type":39,"tag":245,"props":936,"children":937},{},[938,942,944,951,952,958],{"type":39,"tag":97,"props":939,"children":940},{},[941],{"type":45,"value":862},{"type":45,"value":943}," - install from the ",{"type":39,"tag":467,"props":945,"children":948},{"href":946,"rel":947},"https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fgetting-started\u002Fintroduction\u002Finstallation.html",[921],[949],{"type":45,"value":950},"installation docs",{"type":45,"value":926},{"type":39,"tag":70,"props":953,"children":955},{"className":954},[],[956],{"type":45,"value":957},"bruin version",{"type":45,"value":934},{"type":39,"tag":48,"props":960,"children":961},{},[962,964,969,971,977,979,985,986,992,993,999,1001,1007],{"type":45,"value":963},"If you're new to Bruin, the ",{"type":39,"tag":467,"props":965,"children":966},{"href":469},[967],{"type":45,"value":968},"Core Concepts",{"type":45,"value":970}," module covers ",{"type":39,"tag":467,"props":972,"children":974},{"href":973},"\u002Flearn\u002Fcore-concepts\u002Fprojects",[975],{"type":45,"value":976},"projects",{"type":45,"value":978},", ",{"type":39,"tag":467,"props":980,"children":982},{"href":981},"\u002Flearn\u002Fcore-concepts\u002Fpipelines",[983],{"type":45,"value":984},"pipelines",{"type":45,"value":978},{"type":39,"tag":467,"props":987,"children":989},{"href":988},"\u002Flearn\u002Fcore-concepts\u002Fassets",[990],{"type":45,"value":991},"assets",{"type":45,"value":978},{"type":39,"tag":467,"props":994,"children":996},{"href":995},"\u002Flearn\u002Fcore-concepts\u002Fvariables",[997],{"type":45,"value":998},"variables",{"type":45,"value":1000},", and ",{"type":39,"tag":467,"props":1002,"children":1004},{"href":1003},"\u002Flearn\u002Fcore-concepts\u002Fcommands",[1005],{"type":45,"value":1006},"commands",{"type":45,"value":934},{"type":39,"tag":40,"props":1009,"children":1010},{"id":55},[1011],{"type":45,"value":58},{"type":39,"tag":48,"props":1013,"children":1014},{},[1015],{"type":45,"value":1016},"Every data pipeline needs two things: an orchestration tool and a destination. Bruin is the orchestrator - it defines what data moves where and when. Your data warehouse is the destination where all your Shopify and ecommerce data will land and get transformed.",{"type":39,"tag":48,"props":1018,"children":1019},{},[1020],{"type":45,"value":1021},"We'll use Claude Code throughout this tutorial to help create files, write SQL, run validations, and troubleshoot issues. Setting up the Bruin MCP early gives Claude Code direct access to your pipeline and warehouse from Step 2 onward.",{"type":39,"tag":1023,"props":1024,"children":1025},"note",{},[1026],{"type":39,"tag":48,"props":1027,"children":1028},{},[1029,1031,1037],{"type":45,"value":1030},"If you already have a Bruin project, skip ahead to ",{"type":39,"tag":467,"props":1032,"children":1034},{"href":1033},"\u002Flearn\u002Fecommerce-pipeline\u002Fingest-data",[1035],{"type":45,"value":1036},"Step 2: Ingest Your Data",{"type":45,"value":934},{"type":39,"tag":40,"props":1039,"children":1040},{"id":80},[1041],{"type":45,"value":83},{"type":39,"tag":85,"props":1043,"children":1045},{"id":1044},"_1-initialize-a-project",[1046],{"type":45,"value":1047},"1) Initialize a project",{"type":39,"tag":48,"props":1049,"children":1050},{},[1051,1053,1059],{"type":45,"value":1052},"Create a folder for your project, initialize git, then run ",{"type":39,"tag":70,"props":1054,"children":1056},{"className":1055},[],[1057],{"type":45,"value":1058},"bruin init",{"type":45,"value":1060}," inside it:",{"type":39,"tag":1062,"props":1063,"children":1067},"pre",{"className":1064,"code":1065,"language":1066,"meta":7,"style":7},"language-bash shiki shiki-themes github-dark","mkdir ecommerce-analytics && cd ecommerce-analytics\ngit init\nbruin init empty ecommerce\n","bash",[1068],{"type":39,"tag":70,"props":1069,"children":1070},{"__ignoreMap":7},[1071,1105,1118],{"type":39,"tag":1072,"props":1073,"children":1075},"span",{"class":1074,"line":868},"line",[1076,1082,1088,1094,1100],{"type":39,"tag":1072,"props":1077,"children":1079},{"style":1078},"--shiki-default:#B392F0",[1080],{"type":45,"value":1081},"mkdir",{"type":39,"tag":1072,"props":1083,"children":1085},{"style":1084},"--shiki-default:#9ECBFF",[1086],{"type":45,"value":1087}," ecommerce-analytics",{"type":39,"tag":1072,"props":1089,"children":1091},{"style":1090},"--shiki-default:#E1E4E8",[1092],{"type":45,"value":1093}," && ",{"type":39,"tag":1072,"props":1095,"children":1097},{"style":1096},"--shiki-default:#79B8FF",[1098],{"type":45,"value":1099},"cd",{"type":39,"tag":1072,"props":1101,"children":1102},{"style":1084},[1103],{"type":45,"value":1104}," ecommerce-analytics\n",{"type":39,"tag":1072,"props":1106,"children":1107},{"class":1074,"line":476},[1108,1113],{"type":39,"tag":1072,"props":1109,"children":1110},{"style":1078},[1111],{"type":45,"value":1112},"git",{"type":39,"tag":1072,"props":1114,"children":1115},{"style":1084},[1116],{"type":45,"value":1117}," init\n",{"type":39,"tag":1072,"props":1119,"children":1120},{"class":1074,"line":483},[1121,1126,1131,1136],{"type":39,"tag":1072,"props":1122,"children":1123},{"style":1078},[1124],{"type":45,"value":1125},"bruin",{"type":39,"tag":1072,"props":1127,"children":1128},{"style":1084},[1129],{"type":45,"value":1130}," init",{"type":39,"tag":1072,"props":1132,"children":1133},{"style":1084},[1134],{"type":45,"value":1135}," empty",{"type":39,"tag":1072,"props":1137,"children":1138},{"style":1084},[1139],{"type":45,"value":1140}," ecommerce\n",{"type":39,"tag":48,"props":1142,"children":1143},{},[1144],{"type":45,"value":1145},"This creates the following structure:",{"type":39,"tag":1062,"props":1147,"children":1151},{"className":1148,"code":1150,"language":45},[1149],"language-text","ecommerce-analytics\u002F\n├── .bruin.yml            # project config - connections, environments\n└── ecommerce\u002F            # pipeline folder\n    ├── pipeline.yml      # pipeline config - name, schedule, defaults\n    └── assets\u002F           # where your data assets will live\n",[1152],{"type":39,"tag":70,"props":1153,"children":1154},{"__ignoreMap":7},[1155],{"type":45,"value":1150},{"type":39,"tag":85,"props":1157,"children":1159},{"id":1158},"_2-add-bruinyml-to-gitignore",[1160],{"type":45,"value":1161},"2) Add .bruin.yml to .gitignore",{"type":39,"tag":48,"props":1163,"children":1164},{},[1165,1171],{"type":39,"tag":70,"props":1166,"children":1168},{"className":1167},[],[1169],{"type":45,"value":1170},".bruin.yml",{"type":45,"value":1172}," stores your connection credentials (database passwords, API keys). You don't want these in git.",{"type":39,"tag":1062,"props":1174,"children":1176},{"className":1064,"code":1175,"language":1066,"meta":7,"style":7},"echo \".bruin.yml\" >> .gitignore\n",[1177],{"type":39,"tag":70,"props":1178,"children":1179},{"__ignoreMap":7},[1180],{"type":39,"tag":1072,"props":1181,"children":1182},{"class":1074,"line":868},[1183,1188,1193,1199],{"type":39,"tag":1072,"props":1184,"children":1185},{"style":1096},[1186],{"type":45,"value":1187},"echo",{"type":39,"tag":1072,"props":1189,"children":1190},{"style":1084},[1191],{"type":45,"value":1192}," \".bruin.yml\"",{"type":39,"tag":1072,"props":1194,"children":1196},{"style":1195},"--shiki-default:#F97583",[1197],{"type":45,"value":1198}," >>",{"type":39,"tag":1072,"props":1200,"children":1201},{"style":1084},[1202],{"type":45,"value":1203}," .gitignore\n",{"type":39,"tag":48,"props":1205,"children":1206},{},[1207,1212,1214,1220,1222,1228],{"type":39,"tag":70,"props":1208,"children":1210},{"className":1209},[],[1211],{"type":45,"value":1058},{"type":45,"value":1213}," may already add this for you - check your ",{"type":39,"tag":70,"props":1215,"children":1217},{"className":1216},[],[1218],{"type":45,"value":1219},".gitignore",{"type":45,"value":1221}," to confirm. When you deploy to production, connections are configured securely in ",{"type":39,"tag":467,"props":1223,"children":1226},{"href":1224,"rel":1225},"https:\u002F\u002Fcloud.getbruin.com",[921],[1227],{"type":45,"value":14},{"type":45,"value":1229}," instead of the local file - we'll set that up in Step 5.",{"type":39,"tag":85,"props":1231,"children":1233},{"id":1232},"_3-connect-your-data-warehouse",[1234],{"type":45,"value":1235},"3) Connect your data warehouse",{"type":39,"tag":48,"props":1237,"children":1238},{},[1239],{"type":45,"value":1240},"Pick the tab that matches the warehouse you selected on the overview page.",{"type":39,"tag":1242,"props":1243,"children":1246},"variant-tabs",{":variants":1244,"group":1245},"[{\"id\":\"clickhouse\",\"label\":\"ClickHouse\"},{\"id\":\"bigquery\",\"label\":\"BigQuery\"},{\"id\":\"snowflake\",\"label\":\"Snowflake\"}]","warehouse",[1247,1417,1742],{"type":39,"tag":1248,"props":1249,"children":1250},"template",{"v-slot:clickhouse":7},[1251,1256,1294,1318,1323,1366,1371,1404],{"type":39,"tag":85,"props":1252,"children":1254},{"id":1253},"clickhouse",[1255],{"type":45,"value":865},{"type":39,"tag":48,"props":1257,"children":1258},{},[1259,1261,1268,1270,1275,1276,1281,1282,1287,1288,1293],{"type":45,"value":1260},"If you don't have a ClickHouse instance yet, go to ",{"type":39,"tag":467,"props":1262,"children":1265},{"href":1263,"rel":1264},"https:\u002F\u002Fclickhouse.com\u002Fcloud",[921],[1266],{"type":45,"value":1267},"clickhouse.com\u002Fcloud",{"type":45,"value":1269}," and sign up for the free tier. Create a new service and copy the ",{"type":39,"tag":97,"props":1271,"children":1272},{},[1273],{"type":45,"value":1274},"host",{"type":45,"value":978},{"type":39,"tag":97,"props":1277,"children":1278},{},[1279],{"type":45,"value":1280},"port",{"type":45,"value":978},{"type":39,"tag":97,"props":1283,"children":1284},{},[1285],{"type":45,"value":1286},"username",{"type":45,"value":1000},{"type":39,"tag":97,"props":1289,"children":1290},{},[1291],{"type":45,"value":1292},"password",{"type":45,"value":934},{"type":39,"tag":1062,"props":1295,"children":1297},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},"bruin connections add\n",[1298],{"type":39,"tag":70,"props":1299,"children":1300},{"__ignoreMap":7},[1301],{"type":39,"tag":1072,"props":1302,"children":1303},{"class":1074,"line":868},[1304,1308,1313],{"type":39,"tag":1072,"props":1305,"children":1306},{"style":1078},[1307],{"type":45,"value":1125},{"type":39,"tag":1072,"props":1309,"children":1310},{"style":1084},[1311],{"type":45,"value":1312}," connections",{"type":39,"tag":1072,"props":1314,"children":1315},{"style":1084},[1316],{"type":45,"value":1317}," add\n",{"type":39,"tag":48,"props":1319,"children":1320},{},[1321],{"type":45,"value":1322},"When prompted:",{"type":39,"tag":241,"props":1324,"children":1325},{},[1326,1341,1356],{"type":39,"tag":245,"props":1327,"children":1328},{},[1329,1334,1336],{"type":39,"tag":97,"props":1330,"children":1331},{},[1332],{"type":45,"value":1333},"Type:",{"type":45,"value":1335}," ",{"type":39,"tag":70,"props":1337,"children":1339},{"className":1338},[],[1340],{"type":45,"value":1253},{"type":39,"tag":245,"props":1342,"children":1343},{},[1344,1349,1350],{"type":39,"tag":97,"props":1345,"children":1346},{},[1347],{"type":45,"value":1348},"Name:",{"type":45,"value":1335},{"type":39,"tag":70,"props":1351,"children":1353},{"className":1352},[],[1354],{"type":45,"value":1355},"clickhouse-default",{"type":39,"tag":245,"props":1357,"children":1358},{},[1359,1364],{"type":39,"tag":97,"props":1360,"children":1361},{},[1362],{"type":45,"value":1363},"Host, port, username, password:",{"type":45,"value":1365}," paste the values from your ClickHouse Cloud service",{"type":39,"tag":48,"props":1367,"children":1368},{},[1369],{"type":45,"value":1370},"Test the connection:",{"type":39,"tag":1062,"props":1372,"children":1374},{"className":1064,"code":1373,"language":1066,"meta":7,"style":7},"bruin connections test --name clickhouse-default\n",[1375],{"type":39,"tag":70,"props":1376,"children":1377},{"__ignoreMap":7},[1378],{"type":39,"tag":1072,"props":1379,"children":1380},{"class":1074,"line":868},[1381,1385,1389,1394,1399],{"type":39,"tag":1072,"props":1382,"children":1383},{"style":1078},[1384],{"type":45,"value":1125},{"type":39,"tag":1072,"props":1386,"children":1387},{"style":1084},[1388],{"type":45,"value":1312},{"type":39,"tag":1072,"props":1390,"children":1391},{"style":1084},[1392],{"type":45,"value":1393}," test",{"type":39,"tag":1072,"props":1395,"children":1396},{"style":1096},[1397],{"type":45,"value":1398}," --name",{"type":39,"tag":1072,"props":1400,"children":1401},{"style":1084},[1402],{"type":45,"value":1403}," clickhouse-default\n",{"type":39,"tag":48,"props":1405,"children":1406},{},[1407,1409,1416],{"type":45,"value":1408},"For full connection options, see the ",{"type":39,"tag":467,"props":1410,"children":1413},{"href":1411,"rel":1412},"https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fplatforms\u002Fclickhouse.html",[921],[1414],{"type":45,"value":1415},"ClickHouse platform docs",{"type":45,"value":934},{"type":39,"tag":1248,"props":1418,"children":1419},{"v-slot:bigquery":7},[1420,1425,1433,1463,1468,1489,1493,1557,1565,1577,1695,1699,1730],{"type":39,"tag":85,"props":1421,"children":1423},{"id":1422},"bigquery",[1424],{"type":45,"value":866},{"type":39,"tag":48,"props":1426,"children":1427},{},[1428],{"type":39,"tag":97,"props":1429,"children":1430},{},[1431],{"type":45,"value":1432},"Option A: Application Default Credentials (personal account)",{"type":39,"tag":1062,"props":1434,"children":1436},{"className":1064,"code":1435,"language":1066,"meta":7,"style":7},"gcloud auth application-default login\n",[1437],{"type":39,"tag":70,"props":1438,"children":1439},{"__ignoreMap":7},[1440],{"type":39,"tag":1072,"props":1441,"children":1442},{"class":1074,"line":868},[1443,1448,1453,1458],{"type":39,"tag":1072,"props":1444,"children":1445},{"style":1078},[1446],{"type":45,"value":1447},"gcloud",{"type":39,"tag":1072,"props":1449,"children":1450},{"style":1084},[1451],{"type":45,"value":1452}," auth",{"type":39,"tag":1072,"props":1454,"children":1455},{"style":1084},[1456],{"type":45,"value":1457}," application-default",{"type":39,"tag":1072,"props":1459,"children":1460},{"style":1084},[1461],{"type":45,"value":1462}," login\n",{"type":39,"tag":48,"props":1464,"children":1465},{},[1466],{"type":45,"value":1467},"This opens a browser for Google sign-in. Once done, run:",{"type":39,"tag":1062,"props":1469,"children":1470},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[1471],{"type":39,"tag":70,"props":1472,"children":1473},{"__ignoreMap":7},[1474],{"type":39,"tag":1072,"props":1475,"children":1476},{"class":1074,"line":868},[1477,1481,1485],{"type":39,"tag":1072,"props":1478,"children":1479},{"style":1078},[1480],{"type":45,"value":1125},{"type":39,"tag":1072,"props":1482,"children":1483},{"style":1084},[1484],{"type":45,"value":1312},{"type":39,"tag":1072,"props":1486,"children":1487},{"style":1084},[1488],{"type":45,"value":1317},{"type":39,"tag":48,"props":1490,"children":1491},{},[1492],{"type":45,"value":1322},{"type":39,"tag":241,"props":1494,"children":1495},{},[1496,1510,1524,1534],{"type":39,"tag":245,"props":1497,"children":1498},{},[1499,1503,1504],{"type":39,"tag":97,"props":1500,"children":1501},{},[1502],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":1505,"children":1507},{"className":1506},[],[1508],{"type":45,"value":1509},"google_cloud_platform",{"type":39,"tag":245,"props":1511,"children":1512},{},[1513,1517,1518],{"type":39,"tag":97,"props":1514,"children":1515},{},[1516],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":1519,"children":1521},{"className":1520},[],[1522],{"type":45,"value":1523},"bigquery-default",{"type":39,"tag":245,"props":1525,"children":1526},{},[1527,1532],{"type":39,"tag":97,"props":1528,"children":1529},{},[1530],{"type":45,"value":1531},"Project ID:",{"type":45,"value":1533}," your GCP project ID",{"type":39,"tag":245,"props":1535,"children":1536},{},[1537,1542,1543,1549,1551],{"type":39,"tag":97,"props":1538,"children":1539},{},[1540],{"type":45,"value":1541},"Credential method:",{"type":45,"value":1335},{"type":39,"tag":70,"props":1544,"children":1546},{"className":1545},[],[1547],{"type":45,"value":1548},"use_application_default_credentials",{"type":45,"value":1550}," set to ",{"type":39,"tag":70,"props":1552,"children":1554},{"className":1553},[],[1555],{"type":45,"value":1556},"true",{"type":39,"tag":48,"props":1558,"children":1559},{},[1560],{"type":39,"tag":97,"props":1561,"children":1562},{},[1563],{"type":45,"value":1564},"Option B: Service Account Key File",{"type":39,"tag":48,"props":1566,"children":1567},{},[1568,1570,1575],{"type":45,"value":1569},"Edit ",{"type":39,"tag":70,"props":1571,"children":1573},{"className":1572},[],[1574],{"type":45,"value":1170},{"type":45,"value":1576}," directly:",{"type":39,"tag":1062,"props":1578,"children":1582},{"className":1579,"code":1580,"language":1581,"meta":7,"style":7},"language-yaml shiki shiki-themes github-dark","environments:\n  default:\n    connections:\n      google_cloud_platform:\n        - name: \"bigquery-default\"\n          project_id: \"your-gcp-project-id\"\n          service_account_file: \"\u002Fpath\u002Fto\u002Fyour-service-account.json\"\n","yaml",[1583],{"type":39,"tag":70,"props":1584,"children":1585},{"__ignoreMap":7},[1586,1600,1612,1624,1637,1660,1677],{"type":39,"tag":1072,"props":1587,"children":1588},{"class":1074,"line":868},[1589,1595],{"type":39,"tag":1072,"props":1590,"children":1592},{"style":1591},"--shiki-default:#85E89D",[1593],{"type":45,"value":1594},"environments",{"type":39,"tag":1072,"props":1596,"children":1597},{"style":1090},[1598],{"type":45,"value":1599},":\n",{"type":39,"tag":1072,"props":1601,"children":1602},{"class":1074,"line":476},[1603,1608],{"type":39,"tag":1072,"props":1604,"children":1605},{"style":1591},[1606],{"type":45,"value":1607},"  default",{"type":39,"tag":1072,"props":1609,"children":1610},{"style":1090},[1611],{"type":45,"value":1599},{"type":39,"tag":1072,"props":1613,"children":1614},{"class":1074,"line":483},[1615,1620],{"type":39,"tag":1072,"props":1616,"children":1617},{"style":1591},[1618],{"type":45,"value":1619},"    connections",{"type":39,"tag":1072,"props":1621,"children":1622},{"style":1090},[1623],{"type":45,"value":1599},{"type":39,"tag":1072,"props":1625,"children":1627},{"class":1074,"line":1626},4,[1628,1633],{"type":39,"tag":1072,"props":1629,"children":1630},{"style":1591},[1631],{"type":45,"value":1632},"      google_cloud_platform",{"type":39,"tag":1072,"props":1634,"children":1635},{"style":1090},[1636],{"type":45,"value":1599},{"type":39,"tag":1072,"props":1638,"children":1639},{"class":1074,"line":11},[1640,1645,1650,1655],{"type":39,"tag":1072,"props":1641,"children":1642},{"style":1090},[1643],{"type":45,"value":1644},"        - ",{"type":39,"tag":1072,"props":1646,"children":1647},{"style":1591},[1648],{"type":45,"value":1649},"name",{"type":39,"tag":1072,"props":1651,"children":1652},{"style":1090},[1653],{"type":45,"value":1654},": ",{"type":39,"tag":1072,"props":1656,"children":1657},{"style":1084},[1658],{"type":45,"value":1659},"\"bigquery-default\"\n",{"type":39,"tag":1072,"props":1661,"children":1662},{"class":1074,"line":20},[1663,1668,1672],{"type":39,"tag":1072,"props":1664,"children":1665},{"style":1591},[1666],{"type":45,"value":1667},"          project_id",{"type":39,"tag":1072,"props":1669,"children":1670},{"style":1090},[1671],{"type":45,"value":1654},{"type":39,"tag":1072,"props":1673,"children":1674},{"style":1084},[1675],{"type":45,"value":1676},"\"your-gcp-project-id\"\n",{"type":39,"tag":1072,"props":1678,"children":1680},{"class":1074,"line":1679},7,[1681,1686,1690],{"type":39,"tag":1072,"props":1682,"children":1683},{"style":1591},[1684],{"type":45,"value":1685},"          service_account_file",{"type":39,"tag":1072,"props":1687,"children":1688},{"style":1090},[1689],{"type":45,"value":1654},{"type":39,"tag":1072,"props":1691,"children":1692},{"style":1084},[1693],{"type":45,"value":1694},"\"\u002Fpath\u002Fto\u002Fyour-service-account.json\"\n",{"type":39,"tag":48,"props":1696,"children":1697},{},[1698],{"type":45,"value":1370},{"type":39,"tag":1062,"props":1700,"children":1702},{"className":1064,"code":1701,"language":1066,"meta":7,"style":7},"bruin connections test --name bigquery-default\n",[1703],{"type":39,"tag":70,"props":1704,"children":1705},{"__ignoreMap":7},[1706],{"type":39,"tag":1072,"props":1707,"children":1708},{"class":1074,"line":868},[1709,1713,1717,1721,1725],{"type":39,"tag":1072,"props":1710,"children":1711},{"style":1078},[1712],{"type":45,"value":1125},{"type":39,"tag":1072,"props":1714,"children":1715},{"style":1084},[1716],{"type":45,"value":1312},{"type":39,"tag":1072,"props":1718,"children":1719},{"style":1084},[1720],{"type":45,"value":1393},{"type":39,"tag":1072,"props":1722,"children":1723},{"style":1096},[1724],{"type":45,"value":1398},{"type":39,"tag":1072,"props":1726,"children":1727},{"style":1084},[1728],{"type":45,"value":1729}," bigquery-default\n",{"type":39,"tag":48,"props":1731,"children":1732},{},[1733,1734,1741],{"type":45,"value":1408},{"type":39,"tag":467,"props":1735,"children":1738},{"href":1736,"rel":1737},"https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fplatforms\u002Fbigquery.html",[921],[1739],{"type":45,"value":1740},"BigQuery platform docs",{"type":45,"value":934},{"type":39,"tag":1248,"props":1743,"children":1744},{"v-slot:snowflake":7},[1745,1750,1771,1775,1859,1863,1894],{"type":39,"tag":85,"props":1746,"children":1748},{"id":1747},"snowflake",[1749],{"type":45,"value":867},{"type":39,"tag":1062,"props":1751,"children":1752},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[1753],{"type":39,"tag":70,"props":1754,"children":1755},{"__ignoreMap":7},[1756],{"type":39,"tag":1072,"props":1757,"children":1758},{"class":1074,"line":868},[1759,1763,1767],{"type":39,"tag":1072,"props":1760,"children":1761},{"style":1078},[1762],{"type":45,"value":1125},{"type":39,"tag":1072,"props":1764,"children":1765},{"style":1084},[1766],{"type":45,"value":1312},{"type":39,"tag":1072,"props":1768,"children":1769},{"style":1084},[1770],{"type":45,"value":1317},{"type":39,"tag":48,"props":1772,"children":1773},{},[1774],{"type":45,"value":1322},{"type":39,"tag":241,"props":1776,"children":1777},{},[1778,1791,1805,1823,1833,1843],{"type":39,"tag":245,"props":1779,"children":1780},{},[1781,1785,1786],{"type":39,"tag":97,"props":1782,"children":1783},{},[1784],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":1787,"children":1789},{"className":1788},[],[1790],{"type":45,"value":1747},{"type":39,"tag":245,"props":1792,"children":1793},{},[1794,1798,1799],{"type":39,"tag":97,"props":1795,"children":1796},{},[1797],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":1800,"children":1802},{"className":1801},[],[1803],{"type":45,"value":1804},"snowflake-default",{"type":39,"tag":245,"props":1806,"children":1807},{},[1808,1813,1815,1821],{"type":39,"tag":97,"props":1809,"children":1810},{},[1811],{"type":45,"value":1812},"Account:",{"type":45,"value":1814}," your Snowflake account identifier (e.g. ",{"type":39,"tag":70,"props":1816,"children":1818},{"className":1817},[],[1819],{"type":45,"value":1820},"abc12345.us-east-1",{"type":45,"value":1822},")",{"type":39,"tag":245,"props":1824,"children":1825},{},[1826,1831],{"type":39,"tag":97,"props":1827,"children":1828},{},[1829],{"type":45,"value":1830},"Username and password:",{"type":45,"value":1832}," your Snowflake credentials",{"type":39,"tag":245,"props":1834,"children":1835},{},[1836,1841],{"type":39,"tag":97,"props":1837,"children":1838},{},[1839],{"type":45,"value":1840},"Database and warehouse:",{"type":45,"value":1842}," your target database and compute warehouse",{"type":39,"tag":245,"props":1844,"children":1845},{},[1846,1851,1852,1857],{"type":39,"tag":97,"props":1847,"children":1848},{},[1849],{"type":45,"value":1850},"Schema",{"type":45,"value":1335},{"type":39,"tag":251,"props":1853,"children":1854},{},[1855],{"type":45,"value":1856},"(optional):",{"type":45,"value":1858}," default schema to use",{"type":39,"tag":48,"props":1860,"children":1861},{},[1862],{"type":45,"value":1370},{"type":39,"tag":1062,"props":1864,"children":1866},{"className":1064,"code":1865,"language":1066,"meta":7,"style":7},"bruin connections test --name snowflake-default\n",[1867],{"type":39,"tag":70,"props":1868,"children":1869},{"__ignoreMap":7},[1870],{"type":39,"tag":1072,"props":1871,"children":1872},{"class":1074,"line":868},[1873,1877,1881,1885,1889],{"type":39,"tag":1072,"props":1874,"children":1875},{"style":1078},[1876],{"type":45,"value":1125},{"type":39,"tag":1072,"props":1878,"children":1879},{"style":1084},[1880],{"type":45,"value":1312},{"type":39,"tag":1072,"props":1882,"children":1883},{"style":1084},[1884],{"type":45,"value":1393},{"type":39,"tag":1072,"props":1886,"children":1887},{"style":1096},[1888],{"type":45,"value":1398},{"type":39,"tag":1072,"props":1890,"children":1891},{"style":1084},[1892],{"type":45,"value":1893}," snowflake-default\n",{"type":39,"tag":48,"props":1895,"children":1896},{},[1897,1898,1905],{"type":45,"value":1408},{"type":39,"tag":467,"props":1899,"children":1902},{"href":1900,"rel":1901},"https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fplatforms\u002Fsnowflake.html",[921],[1903],{"type":45,"value":1904},"Snowflake platform docs",{"type":45,"value":934},{"type":39,"tag":85,"props":1907,"children":1909},{"id":1908},"_4-configure-the-pipeline",[1910],{"type":45,"value":1911},"4) Configure the pipeline",{"type":39,"tag":48,"props":1913,"children":1914},{},[1915,1916,1922],{"type":45,"value":1569},{"type":39,"tag":70,"props":1917,"children":1919},{"className":1918},[],[1920],{"type":45,"value":1921},"ecommerce\u002Fpipeline.yml",{"type":45,"value":1923}," to set the default connection and schedule:",{"type":39,"tag":1242,"props":1925,"children":1926},{":variants":1244,"group":1245},[1927,2016,2099],{"type":39,"tag":1248,"props":1928,"children":1929},{"v-slot:clickhouse":7},[1930],{"type":39,"tag":1062,"props":1931,"children":1933},{"className":1579,"code":1932,"language":1581,"meta":7,"style":7},"name: ecommerce\nschedule: daily\nstart_date: \"2024-01-01\"\ndefault_connections:\n  clickhouse: clickhouse-default\n",[1934],{"type":39,"tag":70,"props":1935,"children":1936},{"__ignoreMap":7},[1937,1953,1970,1987,1999],{"type":39,"tag":1072,"props":1938,"children":1939},{"class":1074,"line":868},[1940,1944,1948],{"type":39,"tag":1072,"props":1941,"children":1942},{"style":1591},[1943],{"type":45,"value":1649},{"type":39,"tag":1072,"props":1945,"children":1946},{"style":1090},[1947],{"type":45,"value":1654},{"type":39,"tag":1072,"props":1949,"children":1950},{"style":1084},[1951],{"type":45,"value":1952},"ecommerce\n",{"type":39,"tag":1072,"props":1954,"children":1955},{"class":1074,"line":476},[1956,1961,1965],{"type":39,"tag":1072,"props":1957,"children":1958},{"style":1591},[1959],{"type":45,"value":1960},"schedule",{"type":39,"tag":1072,"props":1962,"children":1963},{"style":1090},[1964],{"type":45,"value":1654},{"type":39,"tag":1072,"props":1966,"children":1967},{"style":1084},[1968],{"type":45,"value":1969},"daily\n",{"type":39,"tag":1072,"props":1971,"children":1972},{"class":1074,"line":483},[1973,1978,1982],{"type":39,"tag":1072,"props":1974,"children":1975},{"style":1591},[1976],{"type":45,"value":1977},"start_date",{"type":39,"tag":1072,"props":1979,"children":1980},{"style":1090},[1981],{"type":45,"value":1654},{"type":39,"tag":1072,"props":1983,"children":1984},{"style":1084},[1985],{"type":45,"value":1986},"\"2024-01-01\"\n",{"type":39,"tag":1072,"props":1988,"children":1989},{"class":1074,"line":1626},[1990,1995],{"type":39,"tag":1072,"props":1991,"children":1992},{"style":1591},[1993],{"type":45,"value":1994},"default_connections",{"type":39,"tag":1072,"props":1996,"children":1997},{"style":1090},[1998],{"type":45,"value":1599},{"type":39,"tag":1072,"props":2000,"children":2001},{"class":1074,"line":11},[2002,2007,2011],{"type":39,"tag":1072,"props":2003,"children":2004},{"style":1591},[2005],{"type":45,"value":2006},"  clickhouse",{"type":39,"tag":1072,"props":2008,"children":2009},{"style":1090},[2010],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2012,"children":2013},{"style":1084},[2014],{"type":45,"value":2015},"clickhouse-default\n",{"type":39,"tag":1248,"props":2017,"children":2018},{"v-slot:bigquery":7},[2019],{"type":39,"tag":1062,"props":2020,"children":2022},{"className":1579,"code":2021,"language":1581,"meta":7,"style":7},"name: ecommerce\nschedule: daily\nstart_date: \"2024-01-01\"\ndefault_connections:\n  google_cloud_platform: bigquery-default\n",[2023],{"type":39,"tag":70,"props":2024,"children":2025},{"__ignoreMap":7},[2026,2041,2056,2071,2082],{"type":39,"tag":1072,"props":2027,"children":2028},{"class":1074,"line":868},[2029,2033,2037],{"type":39,"tag":1072,"props":2030,"children":2031},{"style":1591},[2032],{"type":45,"value":1649},{"type":39,"tag":1072,"props":2034,"children":2035},{"style":1090},[2036],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2038,"children":2039},{"style":1084},[2040],{"type":45,"value":1952},{"type":39,"tag":1072,"props":2042,"children":2043},{"class":1074,"line":476},[2044,2048,2052],{"type":39,"tag":1072,"props":2045,"children":2046},{"style":1591},[2047],{"type":45,"value":1960},{"type":39,"tag":1072,"props":2049,"children":2050},{"style":1090},[2051],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2053,"children":2054},{"style":1084},[2055],{"type":45,"value":1969},{"type":39,"tag":1072,"props":2057,"children":2058},{"class":1074,"line":483},[2059,2063,2067],{"type":39,"tag":1072,"props":2060,"children":2061},{"style":1591},[2062],{"type":45,"value":1977},{"type":39,"tag":1072,"props":2064,"children":2065},{"style":1090},[2066],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2068,"children":2069},{"style":1084},[2070],{"type":45,"value":1986},{"type":39,"tag":1072,"props":2072,"children":2073},{"class":1074,"line":1626},[2074,2078],{"type":39,"tag":1072,"props":2075,"children":2076},{"style":1591},[2077],{"type":45,"value":1994},{"type":39,"tag":1072,"props":2079,"children":2080},{"style":1090},[2081],{"type":45,"value":1599},{"type":39,"tag":1072,"props":2083,"children":2084},{"class":1074,"line":11},[2085,2090,2094],{"type":39,"tag":1072,"props":2086,"children":2087},{"style":1591},[2088],{"type":45,"value":2089},"  google_cloud_platform",{"type":39,"tag":1072,"props":2091,"children":2092},{"style":1090},[2093],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2095,"children":2096},{"style":1084},[2097],{"type":45,"value":2098},"bigquery-default\n",{"type":39,"tag":1248,"props":2100,"children":2101},{"v-slot:snowflake":7},[2102],{"type":39,"tag":1062,"props":2103,"children":2105},{"className":1579,"code":2104,"language":1581,"meta":7,"style":7},"name: ecommerce\nschedule: daily\nstart_date: \"2024-01-01\"\ndefault_connections:\n  snowflake: snowflake-default\n",[2106],{"type":39,"tag":70,"props":2107,"children":2108},{"__ignoreMap":7},[2109,2124,2139,2154,2165],{"type":39,"tag":1072,"props":2110,"children":2111},{"class":1074,"line":868},[2112,2116,2120],{"type":39,"tag":1072,"props":2113,"children":2114},{"style":1591},[2115],{"type":45,"value":1649},{"type":39,"tag":1072,"props":2117,"children":2118},{"style":1090},[2119],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2121,"children":2122},{"style":1084},[2123],{"type":45,"value":1952},{"type":39,"tag":1072,"props":2125,"children":2126},{"class":1074,"line":476},[2127,2131,2135],{"type":39,"tag":1072,"props":2128,"children":2129},{"style":1591},[2130],{"type":45,"value":1960},{"type":39,"tag":1072,"props":2132,"children":2133},{"style":1090},[2134],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2136,"children":2137},{"style":1084},[2138],{"type":45,"value":1969},{"type":39,"tag":1072,"props":2140,"children":2141},{"class":1074,"line":483},[2142,2146,2150],{"type":39,"tag":1072,"props":2143,"children":2144},{"style":1591},[2145],{"type":45,"value":1977},{"type":39,"tag":1072,"props":2147,"children":2148},{"style":1090},[2149],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2151,"children":2152},{"style":1084},[2153],{"type":45,"value":1986},{"type":39,"tag":1072,"props":2155,"children":2156},{"class":1074,"line":1626},[2157,2161],{"type":39,"tag":1072,"props":2158,"children":2159},{"style":1591},[2160],{"type":45,"value":1994},{"type":39,"tag":1072,"props":2162,"children":2163},{"style":1090},[2164],{"type":45,"value":1599},{"type":39,"tag":1072,"props":2166,"children":2167},{"class":1074,"line":11},[2168,2173,2177],{"type":39,"tag":1072,"props":2169,"children":2170},{"style":1591},[2171],{"type":45,"value":2172},"  snowflake",{"type":39,"tag":1072,"props":2174,"children":2175},{"style":1090},[2176],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2178,"children":2179},{"style":1084},[2180],{"type":45,"value":2181},"snowflake-default\n",{"type":39,"tag":85,"props":2183,"children":2185},{"id":2184},"_5-set-up-claude-code-with-bruin-mcp",[2186],{"type":45,"value":2187},"5) Set up Claude Code with Bruin MCP",{"type":39,"tag":48,"props":2189,"children":2190},{},[2191,2193,2198],{"type":45,"value":2192},"The Bruin MCP connects Claude Code directly to your pipeline and warehouse. Once it's set up, Claude Code can read your asset files, run ",{"type":39,"tag":70,"props":2194,"children":2196},{"className":2195},[],[2197],{"type":45,"value":1125},{"type":45,"value":2199}," commands, query your warehouse, and look up Bruin documentation - all without you having to copy-paste anything.",{"type":39,"tag":1062,"props":2201,"children":2203},{"className":1064,"code":2202,"language":1066,"meta":7,"style":7},"claude mcp add bruin -- bruin mcp\n",[2204],{"type":39,"tag":70,"props":2205,"children":2206},{"__ignoreMap":7},[2207],{"type":39,"tag":1072,"props":2208,"children":2209},{"class":1074,"line":868},[2210,2215,2220,2225,2230,2235,2239],{"type":39,"tag":1072,"props":2211,"children":2212},{"style":1078},[2213],{"type":45,"value":2214},"claude",{"type":39,"tag":1072,"props":2216,"children":2217},{"style":1084},[2218],{"type":45,"value":2219}," mcp",{"type":39,"tag":1072,"props":2221,"children":2222},{"style":1084},[2223],{"type":45,"value":2224}," add",{"type":39,"tag":1072,"props":2226,"children":2227},{"style":1084},[2228],{"type":45,"value":2229}," bruin",{"type":39,"tag":1072,"props":2231,"children":2232},{"style":1096},[2233],{"type":45,"value":2234}," --",{"type":39,"tag":1072,"props":2236,"children":2237},{"style":1084},[2238],{"type":45,"value":2229},{"type":39,"tag":1072,"props":2240,"children":2241},{"style":1084},[2242],{"type":45,"value":2243}," mcp\n",{"type":39,"tag":48,"props":2245,"children":2246},{},[2247],{"type":45,"value":2248},"Restart your Claude Code session for the MCP to take effect. To verify it's working, open Claude Code in your project directory and ask:",{"type":39,"tag":115,"props":2250,"children":2251},{},[2252],{"type":39,"tag":48,"props":2253,"children":2254},{},[2255],{"type":45,"value":2256},"What connections are available in this Bruin project?",{"type":39,"tag":48,"props":2258,"children":2259},{},[2260],{"type":45,"value":2261},"Claude Code should find and list the warehouse connection you just set up.",{"type":39,"tag":1023,"props":2263,"children":2264},{},[2265],{"type":39,"tag":48,"props":2266,"children":2267},{},[2268,2273,2275,2281,2283,2289],{"type":39,"tag":97,"props":2269,"children":2270},{},[2271],{"type":45,"value":2272},"Using Cursor or Codex instead?",{"type":45,"value":2274}," For Cursor, add ",{"type":39,"tag":70,"props":2276,"children":2278},{"className":2277},[],[2279],{"type":45,"value":2280},"{\"mcpServers\": {\"bruin\": {\"command\": \"bruin\", \"args\": [\"mcp\"]}}}",{"type":45,"value":2282}," to your MCP settings. For Codex, run ",{"type":39,"tag":70,"props":2284,"children":2286},{"className":2285},[],[2287],{"type":45,"value":2288},"codex mcp add bruin -- bruin mcp",{"type":45,"value":2290},". The rest of this tutorial shows Claude Code prompts, but they work in any MCP-compatible tool.",{"type":39,"tag":85,"props":2292,"children":2294},{"id":2293},"_6-validate-with-claude-code",[2295],{"type":45,"value":2296},"6) Validate with Claude Code",{"type":39,"tag":48,"props":2298,"children":2299},{},[2300],{"type":45,"value":2301},"You can run the validation yourself:",{"type":39,"tag":1062,"props":2303,"children":2305},{"className":1064,"code":2304,"language":1066,"meta":7,"style":7},"bruin validate .\n",[2306],{"type":39,"tag":70,"props":2307,"children":2308},{"__ignoreMap":7},[2309],{"type":39,"tag":1072,"props":2310,"children":2311},{"class":1074,"line":868},[2312,2316,2321],{"type":39,"tag":1072,"props":2313,"children":2314},{"style":1078},[2315],{"type":45,"value":1125},{"type":39,"tag":1072,"props":2317,"children":2318},{"style":1084},[2319],{"type":45,"value":2320}," validate",{"type":39,"tag":1072,"props":2322,"children":2323},{"style":1084},[2324],{"type":45,"value":2325}," .\n",{"type":39,"tag":48,"props":2327,"children":2328},{},[2329],{"type":45,"value":2330},"Or just ask Claude Code to do it:",{"type":39,"tag":115,"props":2332,"children":2333},{},[2334],{"type":39,"tag":48,"props":2335,"children":2336},{},[2337],{"type":45,"value":2338},"Run bruin validate on this project and tell me if there are any issues.",{"type":39,"tag":48,"props":2340,"children":2341},{},[2342],{"type":45,"value":2343},"A clean validation means your project structure, pipeline config, and connections are all correct. From here on, you can use Claude Code to run any Bruin command, create files, and write SQL - we'll show you how at each step.",{"type":39,"tag":40,"props":2345,"children":2346},{"id":285},[2347],{"type":45,"value":288},{"type":39,"tag":48,"props":2349,"children":2350},{},[2351],{"type":45,"value":2352},"You have a Bruin project connected to your data warehouse with Claude Code and the Bruin MCP set up. Claude Code can now inspect your pipeline, query your data, fetch Bruin docs, and help you build assets. Next up, you'll use it to create ingestor assets that pull data from your Shopify store and surrounding tools into your warehouse.",{"type":39,"tag":2354,"props":2355,"children":2356},"style",{},[2357],{"type":45,"value":2358},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":7,"searchDepth":476,"depth":476,"links":2360},[2361,2362,2363,2364,2372],{"id":42,"depth":476,"text":46},{"id":895,"depth":476,"text":898},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":2365},[2366,2367,2368,2369,2370,2371],{"id":1044,"depth":483,"text":1047},{"id":1158,"depth":483,"text":1161},{"id":1232,"depth":483,"text":1235},{"id":1908,"depth":483,"text":1911},{"id":2184,"depth":483,"text":2187},{"id":2293,"depth":483,"text":2296},{"id":285,"depth":476,"text":288},"content:tutorials:ecommerce-pipeline:project-setup.md","tutorials\u002Fecommerce-pipeline\u002Fproject-setup.md","tutorials\u002Fecommerce-pipeline\u002Fproject-setup",{"_path":2377,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":2378,"description":2379,"date":10,"readingTime":2380,"category":12,"tags":2381,"difficulty":18,"module":5,"subSteps":19,"step":476,"variants":2392,"journeys":2394,"learnMore":2395,"author":2404,"body":2405,"_type":491,"_id":7037,"_source":493,"_file":7038,"_stem":7039,"_extension":496},"\u002Ftutorials\u002Fecommerce-pipeline\u002Fingest-data","Ingest Your Ecommerce Data","Connect your Shopify store and surrounding tools to Bruin, and create ingestor assets that pull data into your warehouse automatically.",15,[862,863,2382,864,2383,2384,2385,2386,2387,2388,2389,2390,2391,17],"Bruin Ingestr","Shopify","Stripe","Klaviyo","HubSpot","Facebook Ads","Google Ads","TikTok Ads","Google Analytics","Mixpanel",[2385,2386,2387,2388,2389,2393,2391],"GA4",[22,23],[2396,2399,2401],{"label":2397,"url":2398},"Ingestr asset reference","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fassets\u002Fingestr.html",{"label":2400,"url":877},"Bruin connections",{"label":2402,"url":2403},"Incremental loading strategies","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fassets\u002Fingestr.html#incremental-strategies",{"name":32,"role":33,"image":34},{"type":36,"children":2406,"toc":7020},[2407,2411,2416,2420,2425,2439,2445,2450,2458,2463,2467,2473,2478,2631,2634,2640,2661,2665,2729,2736,2749,3359,3383,3386,3392,4132,4135,4141,4986,4989,4995,6009,6012,6018,6717,6720,6726,6731,6752,6757,6765,6770,6775,6818,6851,6871,6919,6924,6964,6970,6975,6983,6988,6996,7000,7011,7016],{"type":39,"tag":40,"props":2408,"children":2409},{"id":42},[2410],{"type":45,"value":46},{"type":39,"tag":48,"props":2412,"children":2413},{},[2414],{"type":45,"value":2415},"Create ingestor assets for your Shopify store and the tools around it. Each asset pulls data from a SaaS tool into your warehouse on schedule.",{"type":39,"tag":40,"props":2417,"children":2418},{"id":55},[2419],{"type":45,"value":58},{"type":39,"tag":48,"props":2421,"children":2422},{},[2423],{"type":45,"value":2424},"A Shopify store has data spread across many tools: orders and products in Shopify, payments in Stripe or Shopify Payments, email engagement in your marketing platform, ad performance in your ad platform, and website traffic in your analytics tool. Getting all of this into one warehouse is the foundation for every report you'll build later.",{"type":39,"tag":48,"props":2426,"children":2427},{},[2428,2430,2437],{"type":45,"value":2429},"Bruin's ingestor assets use ",{"type":39,"tag":467,"props":2431,"children":2434},{"href":2432,"rel":2433},"https:\u002F\u002Fbruin-data.github.io\u002Fingestr\u002F",[921],[2435],{"type":45,"value":2436},"ingestr",{"type":45,"value":2438}," under the hood - an open-source tool with 100+ built-in connectors. You define what to pull in a simple YAML file, and Bruin handles scheduling, incremental loading, and dependency management.",{"type":39,"tag":85,"props":2440,"children":2442},{"id":2441},"let-claude-code-create-the-asset-files",[2443],{"type":45,"value":2444},"Let Claude Code create the asset files",{"type":39,"tag":48,"props":2446,"children":2447},{},[2448],{"type":45,"value":2449},"You can create each ingestor asset file manually (shown below), or ask Claude Code to do it for you:",{"type":39,"tag":115,"props":2451,"children":2452},{},[2453],{"type":39,"tag":48,"props":2454,"children":2455},{},[2456],{"type":45,"value":2457},"Look at the Bruin ingestr docs and create ingestor assets for Shopify orders, customers, products, and inventory_levels. Use merge strategy with updated_at for the first three, and replace for inventory. Use my warehouse connection as destination. Put them in ecommerce\u002Fassets\u002F.",{"type":39,"tag":48,"props":2459,"children":2460},{},[2461],{"type":45,"value":2462},"Below we show the files so you can see what they look like, but feel free to have Claude Code generate them.",{"type":39,"tag":40,"props":2464,"children":2465},{"id":80},[2466],{"type":45,"value":83},{"type":39,"tag":85,"props":2468,"children":2470},{"id":2469},"optional-install-source-mcps",[2471],{"type":45,"value":2472},"Optional: install source MCPs",{"type":39,"tag":48,"props":2474,"children":2475},{},[2476],{"type":45,"value":2477},"These platforms offer their own MCP servers that let Claude Code explore available tables and schemas before you write ingestor assets. Not required, but useful.",{"type":39,"tag":1242,"props":2479,"children":2481},{":variants":2480},"[{\"id\":\"shopify-mcp\",\"label\":\"Shopify\"},{\"id\":\"stripe-mcp\",\"label\":\"Stripe\"},{\"id\":\"klaviyo-mcp\",\"label\":\"Klaviyo\"},{\"id\":\"facebook-mcp\",\"label\":\"Facebook Ads\"},{\"id\":\"ga4-mcp\",\"label\":\"GA4\"}]",[2482,2515,2557,2579,2611],{"type":39,"tag":1248,"props":2483,"children":2484},{"v-slot:shopify-mcp":7},[2485,2495],{"type":39,"tag":48,"props":2486,"children":2487},{},[2488],{"type":39,"tag":467,"props":2489,"children":2492},{"href":2490,"rel":2491},"https:\u002F\u002Fshopify.dev\u002Fdocs\u002Fapps\u002Fbuild\u002Fdevmcp",[921],[2493],{"type":45,"value":2494},"Official Dev MCP",{"type":39,"tag":1062,"props":2496,"children":2498},{"className":1064,"code":2497,"language":1066,"meta":7,"style":7},"npx @shopify\u002Fdev-mcp@latest\n",[2499],{"type":39,"tag":70,"props":2500,"children":2501},{"__ignoreMap":7},[2502],{"type":39,"tag":1072,"props":2503,"children":2504},{"class":1074,"line":868},[2505,2510],{"type":39,"tag":1072,"props":2506,"children":2507},{"style":1078},[2508],{"type":45,"value":2509},"npx",{"type":39,"tag":1072,"props":2511,"children":2512},{"style":1084},[2513],{"type":45,"value":2514}," @shopify\u002Fdev-mcp@latest\n",{"type":39,"tag":1248,"props":2516,"children":2517},{"v-slot:stripe-mcp":7},[2518,2528],{"type":39,"tag":48,"props":2519,"children":2520},{},[2521],{"type":39,"tag":467,"props":2522,"children":2525},{"href":2523,"rel":2524},"https:\u002F\u002Fdocs.stripe.com\u002Fmcp",[921],[2526],{"type":45,"value":2527},"Official MCP",{"type":39,"tag":1062,"props":2529,"children":2531},{"className":1064,"code":2530,"language":1066,"meta":7,"style":7},"npx -y @stripe\u002Fmcp --api-key=sk_...\n",[2532],{"type":39,"tag":70,"props":2533,"children":2534},{"__ignoreMap":7},[2535],{"type":39,"tag":1072,"props":2536,"children":2537},{"class":1074,"line":868},[2538,2542,2547,2552],{"type":39,"tag":1072,"props":2539,"children":2540},{"style":1078},[2541],{"type":45,"value":2509},{"type":39,"tag":1072,"props":2543,"children":2544},{"style":1096},[2545],{"type":45,"value":2546}," -y",{"type":39,"tag":1072,"props":2548,"children":2549},{"style":1084},[2550],{"type":45,"value":2551}," @stripe\u002Fmcp",{"type":39,"tag":1072,"props":2553,"children":2554},{"style":1096},[2555],{"type":45,"value":2556}," --api-key=sk_...\n",{"type":39,"tag":1248,"props":2558,"children":2559},{"v-slot:klaviyo-mcp":7},[2560],{"type":39,"tag":48,"props":2561,"children":2562},{},[2563,2569,2571,2577],{"type":39,"tag":467,"props":2564,"children":2567},{"href":2565,"rel":2566},"https:\u002F\u002Fdevelopers.klaviyo.com\u002Fen\u002Fdocs\u002Fklaviyo_mcp_server",[921],[2568],{"type":45,"value":2527},{"type":45,"value":2570}," - see ",{"type":39,"tag":467,"props":2572,"children":2574},{"href":2565,"rel":2573},[921],[2575],{"type":45,"value":2576},"Klaviyo MCP docs",{"type":45,"value":2578}," for setup.",{"type":39,"tag":1248,"props":2580,"children":2581},{"v-slot:facebook-mcp":7},[2582,2592],{"type":39,"tag":48,"props":2583,"children":2584},{},[2585],{"type":39,"tag":467,"props":2586,"children":2589},{"href":2587,"rel":2588},"https:\u002F\u002Fgithub.com\u002Fpipeboard-co\u002Fmeta-ads-mcp",[921],[2590],{"type":45,"value":2591},"Community MCP",{"type":39,"tag":1062,"props":2593,"children":2595},{"className":1064,"code":2594,"language":1066,"meta":7,"style":7},"npx meta-ads-mcp@latest\n",[2596],{"type":39,"tag":70,"props":2597,"children":2598},{"__ignoreMap":7},[2599],{"type":39,"tag":1072,"props":2600,"children":2601},{"class":1074,"line":868},[2602,2606],{"type":39,"tag":1072,"props":2603,"children":2604},{"style":1078},[2605],{"type":45,"value":2509},{"type":39,"tag":1072,"props":2607,"children":2608},{"style":1084},[2609],{"type":45,"value":2610}," meta-ads-mcp@latest\n",{"type":39,"tag":1248,"props":2612,"children":2613},{"v-slot:ga4-mcp":7},[2614],{"type":39,"tag":48,"props":2615,"children":2616},{},[2617,2623,2624,2630],{"type":39,"tag":467,"props":2618,"children":2621},{"href":2619,"rel":2620},"https:\u002F\u002Fdevelopers.google.com\u002Fanalytics\u002Fdevguides\u002FMCP",[921],[2622],{"type":45,"value":2527},{"type":45,"value":2570},{"type":39,"tag":467,"props":2625,"children":2627},{"href":2619,"rel":2626},[921],[2628],{"type":45,"value":2629},"Google Analytics MCP docs",{"type":45,"value":2578},{"type":39,"tag":339,"props":2632,"children":2633},{},[],{"type":39,"tag":85,"props":2635,"children":2637},{"id":2636},"add-the-shopify-connection",[2638],{"type":45,"value":2639},"Add the Shopify connection",{"type":39,"tag":1062,"props":2641,"children":2642},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[2643],{"type":39,"tag":70,"props":2644,"children":2645},{"__ignoreMap":7},[2646],{"type":39,"tag":1072,"props":2647,"children":2648},{"class":1074,"line":868},[2649,2653,2657],{"type":39,"tag":1072,"props":2650,"children":2651},{"style":1078},[2652],{"type":45,"value":1125},{"type":39,"tag":1072,"props":2654,"children":2655},{"style":1084},[2656],{"type":45,"value":1312},{"type":39,"tag":1072,"props":2658,"children":2659},{"style":1084},[2660],{"type":45,"value":1317},{"type":39,"tag":48,"props":2662,"children":2663},{},[2664],{"type":45,"value":1322},{"type":39,"tag":241,"props":2666,"children":2667},{},[2668,2682,2695,2712],{"type":39,"tag":245,"props":2669,"children":2670},{},[2671,2675,2676],{"type":39,"tag":97,"props":2672,"children":2673},{},[2674],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":2677,"children":2679},{"className":2678},[],[2680],{"type":45,"value":2681},"shopify",{"type":39,"tag":245,"props":2683,"children":2684},{},[2685,2689,2690],{"type":39,"tag":97,"props":2686,"children":2687},{},[2688],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":2691,"children":2693},{"className":2692},[],[2694],{"type":45,"value":2681},{"type":39,"tag":245,"props":2696,"children":2697},{},[2698,2703,2705],{"type":39,"tag":97,"props":2699,"children":2700},{},[2701],{"type":45,"value":2702},"API key, API secret, access token:",{"type":45,"value":2704}," from your ",{"type":39,"tag":467,"props":2706,"children":2709},{"href":2707,"rel":2708},"https:\u002F\u002Fshopify.dev\u002Fdocs\u002Fapps\u002Fgetting-started",[921],[2710],{"type":45,"value":2711},"Shopify app credentials",{"type":39,"tag":245,"props":2713,"children":2714},{},[2715,2720,2722,2728],{"type":39,"tag":97,"props":2716,"children":2717},{},[2718],{"type":45,"value":2719},"Shop:",{"type":45,"value":2721}," your store name (without ",{"type":39,"tag":70,"props":2723,"children":2725},{"className":2724},[],[2726],{"type":45,"value":2727},".myshopify.com",{"type":45,"value":1822},{"type":39,"tag":2730,"props":2731,"children":2733},"h4",{"id":2732},"create-ingestor-assets",[2734],{"type":45,"value":2735},"Create ingestor assets",{"type":39,"tag":48,"props":2737,"children":2738},{},[2739,2741,2747],{"type":45,"value":2740},"Create a file for each table you want to ingest. These go in your ",{"type":39,"tag":70,"props":2742,"children":2744},{"className":2743},[],[2745],{"type":45,"value":2746},"ecommerce\u002Fassets\u002F",{"type":45,"value":2748}," folder.",{"type":39,"tag":1242,"props":2750,"children":2752},{":variants":2751},"[{\"id\":\"shopify-orders\",\"label\":\"Orders\"},{\"id\":\"shopify-customers\",\"label\":\"Customers\"},{\"id\":\"shopify-products\",\"label\":\"Products\"},{\"id\":\"shopify-inventory\",\"label\":\"Inventory\"}]",[2753,2923,3078,3233],{"type":39,"tag":1248,"props":2754,"children":2755},{"v-slot:shopify-orders":7},[2756,2768],{"type":39,"tag":48,"props":2757,"children":2758},{},[2759],{"type":39,"tag":97,"props":2760,"children":2761},{},[2762],{"type":39,"tag":70,"props":2763,"children":2765},{"className":2764},[],[2766],{"type":45,"value":2767},"ecommerce\u002Fassets\u002Fshopify_orders.asset.yml",{"type":39,"tag":1062,"props":2769,"children":2771},{"className":1579,"code":2770,"language":1581,"meta":7,"style":7},"name: raw.shopify_orders\ntype: ingestr\nparameters:\n  source_connection: shopify\n  source_table: orders\n  loader_file_format: jsonl\n  incremental_strategy: merge\n  incremental_key: updated_at\n  primary_key: id\n",[2772],{"type":39,"tag":70,"props":2773,"children":2774},{"__ignoreMap":7},[2775,2791,2808,2820,2837,2854,2871,2888,2905],{"type":39,"tag":1072,"props":2776,"children":2777},{"class":1074,"line":868},[2778,2782,2786],{"type":39,"tag":1072,"props":2779,"children":2780},{"style":1591},[2781],{"type":45,"value":1649},{"type":39,"tag":1072,"props":2783,"children":2784},{"style":1090},[2785],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2787,"children":2788},{"style":1084},[2789],{"type":45,"value":2790},"raw.shopify_orders\n",{"type":39,"tag":1072,"props":2792,"children":2793},{"class":1074,"line":476},[2794,2799,2803],{"type":39,"tag":1072,"props":2795,"children":2796},{"style":1591},[2797],{"type":45,"value":2798},"type",{"type":39,"tag":1072,"props":2800,"children":2801},{"style":1090},[2802],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2804,"children":2805},{"style":1084},[2806],{"type":45,"value":2807},"ingestr\n",{"type":39,"tag":1072,"props":2809,"children":2810},{"class":1074,"line":483},[2811,2816],{"type":39,"tag":1072,"props":2812,"children":2813},{"style":1591},[2814],{"type":45,"value":2815},"parameters",{"type":39,"tag":1072,"props":2817,"children":2818},{"style":1090},[2819],{"type":45,"value":1599},{"type":39,"tag":1072,"props":2821,"children":2822},{"class":1074,"line":1626},[2823,2828,2832],{"type":39,"tag":1072,"props":2824,"children":2825},{"style":1591},[2826],{"type":45,"value":2827},"  source_connection",{"type":39,"tag":1072,"props":2829,"children":2830},{"style":1090},[2831],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2833,"children":2834},{"style":1084},[2835],{"type":45,"value":2836},"shopify\n",{"type":39,"tag":1072,"props":2838,"children":2839},{"class":1074,"line":11},[2840,2845,2849],{"type":39,"tag":1072,"props":2841,"children":2842},{"style":1591},[2843],{"type":45,"value":2844},"  source_table",{"type":39,"tag":1072,"props":2846,"children":2847},{"style":1090},[2848],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2850,"children":2851},{"style":1084},[2852],{"type":45,"value":2853},"orders\n",{"type":39,"tag":1072,"props":2855,"children":2856},{"class":1074,"line":20},[2857,2862,2866],{"type":39,"tag":1072,"props":2858,"children":2859},{"style":1591},[2860],{"type":45,"value":2861},"  loader_file_format",{"type":39,"tag":1072,"props":2863,"children":2864},{"style":1090},[2865],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2867,"children":2868},{"style":1084},[2869],{"type":45,"value":2870},"jsonl\n",{"type":39,"tag":1072,"props":2872,"children":2873},{"class":1074,"line":1679},[2874,2879,2883],{"type":39,"tag":1072,"props":2875,"children":2876},{"style":1591},[2877],{"type":45,"value":2878},"  incremental_strategy",{"type":39,"tag":1072,"props":2880,"children":2881},{"style":1090},[2882],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2884,"children":2885},{"style":1084},[2886],{"type":45,"value":2887},"merge\n",{"type":39,"tag":1072,"props":2889,"children":2890},{"class":1074,"line":860},[2891,2896,2900],{"type":39,"tag":1072,"props":2892,"children":2893},{"style":1591},[2894],{"type":45,"value":2895},"  incremental_key",{"type":39,"tag":1072,"props":2897,"children":2898},{"style":1090},[2899],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2901,"children":2902},{"style":1084},[2903],{"type":45,"value":2904},"updated_at\n",{"type":39,"tag":1072,"props":2906,"children":2908},{"class":1074,"line":2907},9,[2909,2914,2918],{"type":39,"tag":1072,"props":2910,"children":2911},{"style":1591},[2912],{"type":45,"value":2913},"  primary_key",{"type":39,"tag":1072,"props":2915,"children":2916},{"style":1090},[2917],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2919,"children":2920},{"style":1084},[2921],{"type":45,"value":2922},"id\n",{"type":39,"tag":1248,"props":2924,"children":2925},{"v-slot:shopify-customers":7},[2926,2938],{"type":39,"tag":48,"props":2927,"children":2928},{},[2929],{"type":39,"tag":97,"props":2930,"children":2931},{},[2932],{"type":39,"tag":70,"props":2933,"children":2935},{"className":2934},[],[2936],{"type":45,"value":2937},"ecommerce\u002Fassets\u002Fshopify_customers.asset.yml",{"type":39,"tag":1062,"props":2939,"children":2941},{"className":1579,"code":2940,"language":1581,"meta":7,"style":7},"name: raw.shopify_customers\ntype: ingestr\nparameters:\n  source_connection: shopify\n  source_table: customers\n  loader_file_format: jsonl\n  incremental_strategy: merge\n  incremental_key: updated_at\n  primary_key: id\n",[2942],{"type":39,"tag":70,"props":2943,"children":2944},{"__ignoreMap":7},[2945,2961,2976,2987,3002,3018,3033,3048,3063],{"type":39,"tag":1072,"props":2946,"children":2947},{"class":1074,"line":868},[2948,2952,2956],{"type":39,"tag":1072,"props":2949,"children":2950},{"style":1591},[2951],{"type":45,"value":1649},{"type":39,"tag":1072,"props":2953,"children":2954},{"style":1090},[2955],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2957,"children":2958},{"style":1084},[2959],{"type":45,"value":2960},"raw.shopify_customers\n",{"type":39,"tag":1072,"props":2962,"children":2963},{"class":1074,"line":476},[2964,2968,2972],{"type":39,"tag":1072,"props":2965,"children":2966},{"style":1591},[2967],{"type":45,"value":2798},{"type":39,"tag":1072,"props":2969,"children":2970},{"style":1090},[2971],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2973,"children":2974},{"style":1084},[2975],{"type":45,"value":2807},{"type":39,"tag":1072,"props":2977,"children":2978},{"class":1074,"line":483},[2979,2983],{"type":39,"tag":1072,"props":2980,"children":2981},{"style":1591},[2982],{"type":45,"value":2815},{"type":39,"tag":1072,"props":2984,"children":2985},{"style":1090},[2986],{"type":45,"value":1599},{"type":39,"tag":1072,"props":2988,"children":2989},{"class":1074,"line":1626},[2990,2994,2998],{"type":39,"tag":1072,"props":2991,"children":2992},{"style":1591},[2993],{"type":45,"value":2827},{"type":39,"tag":1072,"props":2995,"children":2996},{"style":1090},[2997],{"type":45,"value":1654},{"type":39,"tag":1072,"props":2999,"children":3000},{"style":1084},[3001],{"type":45,"value":2836},{"type":39,"tag":1072,"props":3003,"children":3004},{"class":1074,"line":11},[3005,3009,3013],{"type":39,"tag":1072,"props":3006,"children":3007},{"style":1591},[3008],{"type":45,"value":2844},{"type":39,"tag":1072,"props":3010,"children":3011},{"style":1090},[3012],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3014,"children":3015},{"style":1084},[3016],{"type":45,"value":3017},"customers\n",{"type":39,"tag":1072,"props":3019,"children":3020},{"class":1074,"line":20},[3021,3025,3029],{"type":39,"tag":1072,"props":3022,"children":3023},{"style":1591},[3024],{"type":45,"value":2861},{"type":39,"tag":1072,"props":3026,"children":3027},{"style":1090},[3028],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3030,"children":3031},{"style":1084},[3032],{"type":45,"value":2870},{"type":39,"tag":1072,"props":3034,"children":3035},{"class":1074,"line":1679},[3036,3040,3044],{"type":39,"tag":1072,"props":3037,"children":3038},{"style":1591},[3039],{"type":45,"value":2878},{"type":39,"tag":1072,"props":3041,"children":3042},{"style":1090},[3043],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3045,"children":3046},{"style":1084},[3047],{"type":45,"value":2887},{"type":39,"tag":1072,"props":3049,"children":3050},{"class":1074,"line":860},[3051,3055,3059],{"type":39,"tag":1072,"props":3052,"children":3053},{"style":1591},[3054],{"type":45,"value":2895},{"type":39,"tag":1072,"props":3056,"children":3057},{"style":1090},[3058],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3060,"children":3061},{"style":1084},[3062],{"type":45,"value":2904},{"type":39,"tag":1072,"props":3064,"children":3065},{"class":1074,"line":2907},[3066,3070,3074],{"type":39,"tag":1072,"props":3067,"children":3068},{"style":1591},[3069],{"type":45,"value":2913},{"type":39,"tag":1072,"props":3071,"children":3072},{"style":1090},[3073],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3075,"children":3076},{"style":1084},[3077],{"type":45,"value":2922},{"type":39,"tag":1248,"props":3079,"children":3080},{"v-slot:shopify-products":7},[3081,3093],{"type":39,"tag":48,"props":3082,"children":3083},{},[3084],{"type":39,"tag":97,"props":3085,"children":3086},{},[3087],{"type":39,"tag":70,"props":3088,"children":3090},{"className":3089},[],[3091],{"type":45,"value":3092},"ecommerce\u002Fassets\u002Fshopify_products.asset.yml",{"type":39,"tag":1062,"props":3094,"children":3096},{"className":1579,"code":3095,"language":1581,"meta":7,"style":7},"name: raw.shopify_products\ntype: ingestr\nparameters:\n  source_connection: shopify\n  source_table: products\n  loader_file_format: jsonl\n  incremental_strategy: merge\n  incremental_key: updated_at\n  primary_key: id\n",[3097],{"type":39,"tag":70,"props":3098,"children":3099},{"__ignoreMap":7},[3100,3116,3131,3142,3157,3173,3188,3203,3218],{"type":39,"tag":1072,"props":3101,"children":3102},{"class":1074,"line":868},[3103,3107,3111],{"type":39,"tag":1072,"props":3104,"children":3105},{"style":1591},[3106],{"type":45,"value":1649},{"type":39,"tag":1072,"props":3108,"children":3109},{"style":1090},[3110],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3112,"children":3113},{"style":1084},[3114],{"type":45,"value":3115},"raw.shopify_products\n",{"type":39,"tag":1072,"props":3117,"children":3118},{"class":1074,"line":476},[3119,3123,3127],{"type":39,"tag":1072,"props":3120,"children":3121},{"style":1591},[3122],{"type":45,"value":2798},{"type":39,"tag":1072,"props":3124,"children":3125},{"style":1090},[3126],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3128,"children":3129},{"style":1084},[3130],{"type":45,"value":2807},{"type":39,"tag":1072,"props":3132,"children":3133},{"class":1074,"line":483},[3134,3138],{"type":39,"tag":1072,"props":3135,"children":3136},{"style":1591},[3137],{"type":45,"value":2815},{"type":39,"tag":1072,"props":3139,"children":3140},{"style":1090},[3141],{"type":45,"value":1599},{"type":39,"tag":1072,"props":3143,"children":3144},{"class":1074,"line":1626},[3145,3149,3153],{"type":39,"tag":1072,"props":3146,"children":3147},{"style":1591},[3148],{"type":45,"value":2827},{"type":39,"tag":1072,"props":3150,"children":3151},{"style":1090},[3152],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3154,"children":3155},{"style":1084},[3156],{"type":45,"value":2836},{"type":39,"tag":1072,"props":3158,"children":3159},{"class":1074,"line":11},[3160,3164,3168],{"type":39,"tag":1072,"props":3161,"children":3162},{"style":1591},[3163],{"type":45,"value":2844},{"type":39,"tag":1072,"props":3165,"children":3166},{"style":1090},[3167],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3169,"children":3170},{"style":1084},[3171],{"type":45,"value":3172},"products\n",{"type":39,"tag":1072,"props":3174,"children":3175},{"class":1074,"line":20},[3176,3180,3184],{"type":39,"tag":1072,"props":3177,"children":3178},{"style":1591},[3179],{"type":45,"value":2861},{"type":39,"tag":1072,"props":3181,"children":3182},{"style":1090},[3183],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3185,"children":3186},{"style":1084},[3187],{"type":45,"value":2870},{"type":39,"tag":1072,"props":3189,"children":3190},{"class":1074,"line":1679},[3191,3195,3199],{"type":39,"tag":1072,"props":3192,"children":3193},{"style":1591},[3194],{"type":45,"value":2878},{"type":39,"tag":1072,"props":3196,"children":3197},{"style":1090},[3198],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3200,"children":3201},{"style":1084},[3202],{"type":45,"value":2887},{"type":39,"tag":1072,"props":3204,"children":3205},{"class":1074,"line":860},[3206,3210,3214],{"type":39,"tag":1072,"props":3207,"children":3208},{"style":1591},[3209],{"type":45,"value":2895},{"type":39,"tag":1072,"props":3211,"children":3212},{"style":1090},[3213],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3215,"children":3216},{"style":1084},[3217],{"type":45,"value":2904},{"type":39,"tag":1072,"props":3219,"children":3220},{"class":1074,"line":2907},[3221,3225,3229],{"type":39,"tag":1072,"props":3222,"children":3223},{"style":1591},[3224],{"type":45,"value":2913},{"type":39,"tag":1072,"props":3226,"children":3227},{"style":1090},[3228],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3230,"children":3231},{"style":1084},[3232],{"type":45,"value":2922},{"type":39,"tag":1248,"props":3234,"children":3235},{"v-slot:shopify-inventory":7},[3236,3248],{"type":39,"tag":48,"props":3237,"children":3238},{},[3239],{"type":39,"tag":97,"props":3240,"children":3241},{},[3242],{"type":39,"tag":70,"props":3243,"children":3245},{"className":3244},[],[3246],{"type":45,"value":3247},"ecommerce\u002Fassets\u002Fshopify_inventory.asset.yml",{"type":39,"tag":1062,"props":3249,"children":3251},{"className":1579,"code":3250,"language":1581,"meta":7,"style":7},"name: raw.shopify_inventory\ntype: ingestr\nparameters:\n  source_connection: shopify\n  source_table: inventory_levels\n  loader_file_format: jsonl\n  incremental_strategy: replace\n",[3252],{"type":39,"tag":70,"props":3253,"children":3254},{"__ignoreMap":7},[3255,3271,3286,3297,3312,3328,3343],{"type":39,"tag":1072,"props":3256,"children":3257},{"class":1074,"line":868},[3258,3262,3266],{"type":39,"tag":1072,"props":3259,"children":3260},{"style":1591},[3261],{"type":45,"value":1649},{"type":39,"tag":1072,"props":3263,"children":3264},{"style":1090},[3265],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3267,"children":3268},{"style":1084},[3269],{"type":45,"value":3270},"raw.shopify_inventory\n",{"type":39,"tag":1072,"props":3272,"children":3273},{"class":1074,"line":476},[3274,3278,3282],{"type":39,"tag":1072,"props":3275,"children":3276},{"style":1591},[3277],{"type":45,"value":2798},{"type":39,"tag":1072,"props":3279,"children":3280},{"style":1090},[3281],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3283,"children":3284},{"style":1084},[3285],{"type":45,"value":2807},{"type":39,"tag":1072,"props":3287,"children":3288},{"class":1074,"line":483},[3289,3293],{"type":39,"tag":1072,"props":3290,"children":3291},{"style":1591},[3292],{"type":45,"value":2815},{"type":39,"tag":1072,"props":3294,"children":3295},{"style":1090},[3296],{"type":45,"value":1599},{"type":39,"tag":1072,"props":3298,"children":3299},{"class":1074,"line":1626},[3300,3304,3308],{"type":39,"tag":1072,"props":3301,"children":3302},{"style":1591},[3303],{"type":45,"value":2827},{"type":39,"tag":1072,"props":3305,"children":3306},{"style":1090},[3307],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3309,"children":3310},{"style":1084},[3311],{"type":45,"value":2836},{"type":39,"tag":1072,"props":3313,"children":3314},{"class":1074,"line":11},[3315,3319,3323],{"type":39,"tag":1072,"props":3316,"children":3317},{"style":1591},[3318],{"type":45,"value":2844},{"type":39,"tag":1072,"props":3320,"children":3321},{"style":1090},[3322],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3324,"children":3325},{"style":1084},[3326],{"type":45,"value":3327},"inventory_levels\n",{"type":39,"tag":1072,"props":3329,"children":3330},{"class":1074,"line":20},[3331,3335,3339],{"type":39,"tag":1072,"props":3332,"children":3333},{"style":1591},[3334],{"type":45,"value":2861},{"type":39,"tag":1072,"props":3336,"children":3337},{"style":1090},[3338],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3340,"children":3341},{"style":1084},[3342],{"type":45,"value":2870},{"type":39,"tag":1072,"props":3344,"children":3345},{"class":1074,"line":1679},[3346,3350,3354],{"type":39,"tag":1072,"props":3347,"children":3348},{"style":1591},[3349],{"type":45,"value":2878},{"type":39,"tag":1072,"props":3351,"children":3352},{"style":1090},[3353],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3355,"children":3356},{"style":1084},[3357],{"type":45,"value":3358},"replace\n",{"type":39,"tag":1023,"props":3360,"children":3362},{"type":3361},"tip",[3363],{"type":39,"tag":48,"props":3364,"children":3365},{},[3366,3368,3374,3376,3382],{"type":45,"value":3367},"If you installed the Shopify MCP, ask Claude Code to list all available Shopify tables and preview the schema for each one. This helps you decide if you want to ingest additional tables like ",{"type":39,"tag":70,"props":3369,"children":3371},{"className":3370},[],[3372],{"type":45,"value":3373},"transactions",{"type":45,"value":3375}," or ",{"type":39,"tag":70,"props":3377,"children":3379},{"className":3378},[],[3380],{"type":45,"value":3381},"fulfillments",{"type":45,"value":934},{"type":39,"tag":339,"props":3384,"children":3385},{},[],{"type":39,"tag":85,"props":3387,"children":3389},{"id":3388},"payments",[3390],{"type":45,"value":3391},"Payments",{"type":39,"tag":1242,"props":3393,"children":3395},{":variants":3394,"group":3388},"[{\"id\":\"shopify-payments\",\"label\":\"Shopify Payments\"},{\"id\":\"stripe\",\"label\":\"Stripe\"}]",[3396,3437],{"type":39,"tag":1248,"props":3397,"children":3398},{"v-slot:shopify-payments":7},[3399,3405,3425],{"type":39,"tag":2730,"props":3400,"children":3402},{"id":3401},"shopify-payments",[3403],{"type":45,"value":3404},"Shopify Payments",{"type":39,"tag":48,"props":3406,"children":3407},{},[3408,3410,3416,3417,3423],{"type":45,"value":3409},"If you use Shopify Payments, your payment data is already included in Shopify's order data - the ",{"type":39,"tag":70,"props":3411,"children":3413},{"className":3412},[],[3414],{"type":45,"value":3415},"financial_status",{"type":45,"value":978},{"type":39,"tag":70,"props":3418,"children":3420},{"className":3419},[],[3421],{"type":45,"value":3422},"total_price",{"type":45,"value":3424},", and transaction fields are all part of the orders you just ingested. No extra connection or assets needed here.",{"type":39,"tag":48,"props":3426,"children":3427},{},[3428,3430,3436],{"type":45,"value":3429},"The staging layer in Step 3 will pull payment details directly from ",{"type":39,"tag":70,"props":3431,"children":3433},{"className":3432},[],[3434],{"type":45,"value":3435},"raw.shopify_orders",{"type":45,"value":934},{"type":39,"tag":1248,"props":3438,"children":3439},{"v-slot:stripe":7},[3440,3445,3450,3458,3479,3483,3529,3537,4102],{"type":39,"tag":2730,"props":3441,"children":3443},{"id":3442},"stripe",[3444],{"type":45,"value":2384},{"type":39,"tag":48,"props":3446,"children":3447},{},[3448],{"type":45,"value":3449},"If you use Stripe as a separate payment processor, you'll want to ingest charge, refund, and payout data separately. This gives you more granular financial data than what Shopify includes in its orders.",{"type":39,"tag":48,"props":3451,"children":3452},{},[3453],{"type":39,"tag":97,"props":3454,"children":3455},{},[3456],{"type":45,"value":3457},"Add the Stripe connection:",{"type":39,"tag":1062,"props":3459,"children":3460},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[3461],{"type":39,"tag":70,"props":3462,"children":3463},{"__ignoreMap":7},[3464],{"type":39,"tag":1072,"props":3465,"children":3466},{"class":1074,"line":868},[3467,3471,3475],{"type":39,"tag":1072,"props":3468,"children":3469},{"style":1078},[3470],{"type":45,"value":1125},{"type":39,"tag":1072,"props":3472,"children":3473},{"style":1084},[3474],{"type":45,"value":1312},{"type":39,"tag":1072,"props":3476,"children":3477},{"style":1084},[3478],{"type":45,"value":1317},{"type":39,"tag":48,"props":3480,"children":3481},{},[3482],{"type":45,"value":1322},{"type":39,"tag":241,"props":3484,"children":3485},{},[3486,3499,3512],{"type":39,"tag":245,"props":3487,"children":3488},{},[3489,3493,3494],{"type":39,"tag":97,"props":3490,"children":3491},{},[3492],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":3495,"children":3497},{"className":3496},[],[3498],{"type":45,"value":3442},{"type":39,"tag":245,"props":3500,"children":3501},{},[3502,3506,3507],{"type":39,"tag":97,"props":3503,"children":3504},{},[3505],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":3508,"children":3510},{"className":3509},[],[3511],{"type":45,"value":3442},{"type":39,"tag":245,"props":3513,"children":3514},{},[3515,3520,3522,3528],{"type":39,"tag":97,"props":3516,"children":3517},{},[3518],{"type":45,"value":3519},"API key:",{"type":45,"value":3521}," your Stripe secret key (starts with ",{"type":39,"tag":70,"props":3523,"children":3525},{"className":3524},[],[3526],{"type":45,"value":3527},"sk_",{"type":45,"value":1822},{"type":39,"tag":48,"props":3530,"children":3531},{},[3532],{"type":39,"tag":97,"props":3533,"children":3534},{},[3535],{"type":45,"value":3536},"Create ingestor assets:",{"type":39,"tag":1242,"props":3538,"children":3540},{":variants":3539},"[{\"id\":\"stripe-charges\",\"label\":\"Charges\"},{\"id\":\"stripe-refunds\",\"label\":\"Refunds\"},{\"id\":\"stripe-customers\",\"label\":\"Customers\"},{\"id\":\"stripe-payouts\",\"label\":\"Payouts\"}]",[3541,3683,3823,3962],{"type":39,"tag":1248,"props":3542,"children":3543},{"v-slot:stripe-charges":7},[3544,3556],{"type":39,"tag":48,"props":3545,"children":3546},{},[3547],{"type":39,"tag":97,"props":3548,"children":3549},{},[3550],{"type":39,"tag":70,"props":3551,"children":3553},{"className":3552},[],[3554],{"type":45,"value":3555},"ecommerce\u002Fassets\u002Fstripe_charges.asset.yml",{"type":39,"tag":1062,"props":3557,"children":3559},{"className":1579,"code":3558,"language":1581,"meta":7,"style":7},"name: raw.stripe_charges\ntype: ingestr\nparameters:\n  source_connection: stripe\n  source_table: charges\n  incremental_strategy: merge\n  incremental_key: created\n  primary_key: id\n",[3560],{"type":39,"tag":70,"props":3561,"children":3562},{"__ignoreMap":7},[3563,3579,3594,3605,3621,3637,3652,3668],{"type":39,"tag":1072,"props":3564,"children":3565},{"class":1074,"line":868},[3566,3570,3574],{"type":39,"tag":1072,"props":3567,"children":3568},{"style":1591},[3569],{"type":45,"value":1649},{"type":39,"tag":1072,"props":3571,"children":3572},{"style":1090},[3573],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3575,"children":3576},{"style":1084},[3577],{"type":45,"value":3578},"raw.stripe_charges\n",{"type":39,"tag":1072,"props":3580,"children":3581},{"class":1074,"line":476},[3582,3586,3590],{"type":39,"tag":1072,"props":3583,"children":3584},{"style":1591},[3585],{"type":45,"value":2798},{"type":39,"tag":1072,"props":3587,"children":3588},{"style":1090},[3589],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3591,"children":3592},{"style":1084},[3593],{"type":45,"value":2807},{"type":39,"tag":1072,"props":3595,"children":3596},{"class":1074,"line":483},[3597,3601],{"type":39,"tag":1072,"props":3598,"children":3599},{"style":1591},[3600],{"type":45,"value":2815},{"type":39,"tag":1072,"props":3602,"children":3603},{"style":1090},[3604],{"type":45,"value":1599},{"type":39,"tag":1072,"props":3606,"children":3607},{"class":1074,"line":1626},[3608,3612,3616],{"type":39,"tag":1072,"props":3609,"children":3610},{"style":1591},[3611],{"type":45,"value":2827},{"type":39,"tag":1072,"props":3613,"children":3614},{"style":1090},[3615],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3617,"children":3618},{"style":1084},[3619],{"type":45,"value":3620},"stripe\n",{"type":39,"tag":1072,"props":3622,"children":3623},{"class":1074,"line":11},[3624,3628,3632],{"type":39,"tag":1072,"props":3625,"children":3626},{"style":1591},[3627],{"type":45,"value":2844},{"type":39,"tag":1072,"props":3629,"children":3630},{"style":1090},[3631],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3633,"children":3634},{"style":1084},[3635],{"type":45,"value":3636},"charges\n",{"type":39,"tag":1072,"props":3638,"children":3639},{"class":1074,"line":20},[3640,3644,3648],{"type":39,"tag":1072,"props":3641,"children":3642},{"style":1591},[3643],{"type":45,"value":2878},{"type":39,"tag":1072,"props":3645,"children":3646},{"style":1090},[3647],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3649,"children":3650},{"style":1084},[3651],{"type":45,"value":2887},{"type":39,"tag":1072,"props":3653,"children":3654},{"class":1074,"line":1679},[3655,3659,3663],{"type":39,"tag":1072,"props":3656,"children":3657},{"style":1591},[3658],{"type":45,"value":2895},{"type":39,"tag":1072,"props":3660,"children":3661},{"style":1090},[3662],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3664,"children":3665},{"style":1084},[3666],{"type":45,"value":3667},"created\n",{"type":39,"tag":1072,"props":3669,"children":3670},{"class":1074,"line":860},[3671,3675,3679],{"type":39,"tag":1072,"props":3672,"children":3673},{"style":1591},[3674],{"type":45,"value":2913},{"type":39,"tag":1072,"props":3676,"children":3677},{"style":1090},[3678],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3680,"children":3681},{"style":1084},[3682],{"type":45,"value":2922},{"type":39,"tag":1248,"props":3684,"children":3685},{"v-slot:stripe-refunds":7},[3686,3698],{"type":39,"tag":48,"props":3687,"children":3688},{},[3689],{"type":39,"tag":97,"props":3690,"children":3691},{},[3692],{"type":39,"tag":70,"props":3693,"children":3695},{"className":3694},[],[3696],{"type":45,"value":3697},"ecommerce\u002Fassets\u002Fstripe_refunds.asset.yml",{"type":39,"tag":1062,"props":3699,"children":3701},{"className":1579,"code":3700,"language":1581,"meta":7,"style":7},"name: raw.stripe_refunds\ntype: ingestr\nparameters:\n  source_connection: stripe\n  source_table: refunds\n  incremental_strategy: merge\n  incremental_key: created\n  primary_key: id\n",[3702],{"type":39,"tag":70,"props":3703,"children":3704},{"__ignoreMap":7},[3705,3721,3736,3747,3762,3778,3793,3808],{"type":39,"tag":1072,"props":3706,"children":3707},{"class":1074,"line":868},[3708,3712,3716],{"type":39,"tag":1072,"props":3709,"children":3710},{"style":1591},[3711],{"type":45,"value":1649},{"type":39,"tag":1072,"props":3713,"children":3714},{"style":1090},[3715],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3717,"children":3718},{"style":1084},[3719],{"type":45,"value":3720},"raw.stripe_refunds\n",{"type":39,"tag":1072,"props":3722,"children":3723},{"class":1074,"line":476},[3724,3728,3732],{"type":39,"tag":1072,"props":3725,"children":3726},{"style":1591},[3727],{"type":45,"value":2798},{"type":39,"tag":1072,"props":3729,"children":3730},{"style":1090},[3731],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3733,"children":3734},{"style":1084},[3735],{"type":45,"value":2807},{"type":39,"tag":1072,"props":3737,"children":3738},{"class":1074,"line":483},[3739,3743],{"type":39,"tag":1072,"props":3740,"children":3741},{"style":1591},[3742],{"type":45,"value":2815},{"type":39,"tag":1072,"props":3744,"children":3745},{"style":1090},[3746],{"type":45,"value":1599},{"type":39,"tag":1072,"props":3748,"children":3749},{"class":1074,"line":1626},[3750,3754,3758],{"type":39,"tag":1072,"props":3751,"children":3752},{"style":1591},[3753],{"type":45,"value":2827},{"type":39,"tag":1072,"props":3755,"children":3756},{"style":1090},[3757],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3759,"children":3760},{"style":1084},[3761],{"type":45,"value":3620},{"type":39,"tag":1072,"props":3763,"children":3764},{"class":1074,"line":11},[3765,3769,3773],{"type":39,"tag":1072,"props":3766,"children":3767},{"style":1591},[3768],{"type":45,"value":2844},{"type":39,"tag":1072,"props":3770,"children":3771},{"style":1090},[3772],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3774,"children":3775},{"style":1084},[3776],{"type":45,"value":3777},"refunds\n",{"type":39,"tag":1072,"props":3779,"children":3780},{"class":1074,"line":20},[3781,3785,3789],{"type":39,"tag":1072,"props":3782,"children":3783},{"style":1591},[3784],{"type":45,"value":2878},{"type":39,"tag":1072,"props":3786,"children":3787},{"style":1090},[3788],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3790,"children":3791},{"style":1084},[3792],{"type":45,"value":2887},{"type":39,"tag":1072,"props":3794,"children":3795},{"class":1074,"line":1679},[3796,3800,3804],{"type":39,"tag":1072,"props":3797,"children":3798},{"style":1591},[3799],{"type":45,"value":2895},{"type":39,"tag":1072,"props":3801,"children":3802},{"style":1090},[3803],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3805,"children":3806},{"style":1084},[3807],{"type":45,"value":3667},{"type":39,"tag":1072,"props":3809,"children":3810},{"class":1074,"line":860},[3811,3815,3819],{"type":39,"tag":1072,"props":3812,"children":3813},{"style":1591},[3814],{"type":45,"value":2913},{"type":39,"tag":1072,"props":3816,"children":3817},{"style":1090},[3818],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3820,"children":3821},{"style":1084},[3822],{"type":45,"value":2922},{"type":39,"tag":1248,"props":3824,"children":3825},{"v-slot:stripe-customers":7},[3826,3838],{"type":39,"tag":48,"props":3827,"children":3828},{},[3829],{"type":39,"tag":97,"props":3830,"children":3831},{},[3832],{"type":39,"tag":70,"props":3833,"children":3835},{"className":3834},[],[3836],{"type":45,"value":3837},"ecommerce\u002Fassets\u002Fstripe_customers.asset.yml",{"type":39,"tag":1062,"props":3839,"children":3841},{"className":1579,"code":3840,"language":1581,"meta":7,"style":7},"name: raw.stripe_customers\ntype: ingestr\nparameters:\n  source_connection: stripe\n  source_table: customers\n  incremental_strategy: merge\n  incremental_key: created\n  primary_key: id\n",[3842],{"type":39,"tag":70,"props":3843,"children":3844},{"__ignoreMap":7},[3845,3861,3876,3887,3902,3917,3932,3947],{"type":39,"tag":1072,"props":3846,"children":3847},{"class":1074,"line":868},[3848,3852,3856],{"type":39,"tag":1072,"props":3849,"children":3850},{"style":1591},[3851],{"type":45,"value":1649},{"type":39,"tag":1072,"props":3853,"children":3854},{"style":1090},[3855],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3857,"children":3858},{"style":1084},[3859],{"type":45,"value":3860},"raw.stripe_customers\n",{"type":39,"tag":1072,"props":3862,"children":3863},{"class":1074,"line":476},[3864,3868,3872],{"type":39,"tag":1072,"props":3865,"children":3866},{"style":1591},[3867],{"type":45,"value":2798},{"type":39,"tag":1072,"props":3869,"children":3870},{"style":1090},[3871],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3873,"children":3874},{"style":1084},[3875],{"type":45,"value":2807},{"type":39,"tag":1072,"props":3877,"children":3878},{"class":1074,"line":483},[3879,3883],{"type":39,"tag":1072,"props":3880,"children":3881},{"style":1591},[3882],{"type":45,"value":2815},{"type":39,"tag":1072,"props":3884,"children":3885},{"style":1090},[3886],{"type":45,"value":1599},{"type":39,"tag":1072,"props":3888,"children":3889},{"class":1074,"line":1626},[3890,3894,3898],{"type":39,"tag":1072,"props":3891,"children":3892},{"style":1591},[3893],{"type":45,"value":2827},{"type":39,"tag":1072,"props":3895,"children":3896},{"style":1090},[3897],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3899,"children":3900},{"style":1084},[3901],{"type":45,"value":3620},{"type":39,"tag":1072,"props":3903,"children":3904},{"class":1074,"line":11},[3905,3909,3913],{"type":39,"tag":1072,"props":3906,"children":3907},{"style":1591},[3908],{"type":45,"value":2844},{"type":39,"tag":1072,"props":3910,"children":3911},{"style":1090},[3912],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3914,"children":3915},{"style":1084},[3916],{"type":45,"value":3017},{"type":39,"tag":1072,"props":3918,"children":3919},{"class":1074,"line":20},[3920,3924,3928],{"type":39,"tag":1072,"props":3921,"children":3922},{"style":1591},[3923],{"type":45,"value":2878},{"type":39,"tag":1072,"props":3925,"children":3926},{"style":1090},[3927],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3929,"children":3930},{"style":1084},[3931],{"type":45,"value":2887},{"type":39,"tag":1072,"props":3933,"children":3934},{"class":1074,"line":1679},[3935,3939,3943],{"type":39,"tag":1072,"props":3936,"children":3937},{"style":1591},[3938],{"type":45,"value":2895},{"type":39,"tag":1072,"props":3940,"children":3941},{"style":1090},[3942],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3944,"children":3945},{"style":1084},[3946],{"type":45,"value":3667},{"type":39,"tag":1072,"props":3948,"children":3949},{"class":1074,"line":860},[3950,3954,3958],{"type":39,"tag":1072,"props":3951,"children":3952},{"style":1591},[3953],{"type":45,"value":2913},{"type":39,"tag":1072,"props":3955,"children":3956},{"style":1090},[3957],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3959,"children":3960},{"style":1084},[3961],{"type":45,"value":2922},{"type":39,"tag":1248,"props":3963,"children":3964},{"v-slot:stripe-payouts":7},[3965,3977],{"type":39,"tag":48,"props":3966,"children":3967},{},[3968],{"type":39,"tag":97,"props":3969,"children":3970},{},[3971],{"type":39,"tag":70,"props":3972,"children":3974},{"className":3973},[],[3975],{"type":45,"value":3976},"ecommerce\u002Fassets\u002Fstripe_payouts.asset.yml",{"type":39,"tag":1062,"props":3978,"children":3980},{"className":1579,"code":3979,"language":1581,"meta":7,"style":7},"name: raw.stripe_payouts\ntype: ingestr\nparameters:\n  source_connection: stripe\n  source_table: payouts\n  incremental_strategy: merge\n  incremental_key: created\n  primary_key: id\n",[3981],{"type":39,"tag":70,"props":3982,"children":3983},{"__ignoreMap":7},[3984,4000,4015,4026,4041,4057,4072,4087],{"type":39,"tag":1072,"props":3985,"children":3986},{"class":1074,"line":868},[3987,3991,3995],{"type":39,"tag":1072,"props":3988,"children":3989},{"style":1591},[3990],{"type":45,"value":1649},{"type":39,"tag":1072,"props":3992,"children":3993},{"style":1090},[3994],{"type":45,"value":1654},{"type":39,"tag":1072,"props":3996,"children":3997},{"style":1084},[3998],{"type":45,"value":3999},"raw.stripe_payouts\n",{"type":39,"tag":1072,"props":4001,"children":4002},{"class":1074,"line":476},[4003,4007,4011],{"type":39,"tag":1072,"props":4004,"children":4005},{"style":1591},[4006],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4008,"children":4009},{"style":1090},[4010],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4012,"children":4013},{"style":1084},[4014],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4016,"children":4017},{"class":1074,"line":483},[4018,4022],{"type":39,"tag":1072,"props":4019,"children":4020},{"style":1591},[4021],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4023,"children":4024},{"style":1090},[4025],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4027,"children":4028},{"class":1074,"line":1626},[4029,4033,4037],{"type":39,"tag":1072,"props":4030,"children":4031},{"style":1591},[4032],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4034,"children":4035},{"style":1090},[4036],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4038,"children":4039},{"style":1084},[4040],{"type":45,"value":3620},{"type":39,"tag":1072,"props":4042,"children":4043},{"class":1074,"line":11},[4044,4048,4052],{"type":39,"tag":1072,"props":4045,"children":4046},{"style":1591},[4047],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4049,"children":4050},{"style":1090},[4051],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4053,"children":4054},{"style":1084},[4055],{"type":45,"value":4056},"payouts\n",{"type":39,"tag":1072,"props":4058,"children":4059},{"class":1074,"line":20},[4060,4064,4068],{"type":39,"tag":1072,"props":4061,"children":4062},{"style":1591},[4063],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4065,"children":4066},{"style":1090},[4067],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4069,"children":4070},{"style":1084},[4071],{"type":45,"value":2887},{"type":39,"tag":1072,"props":4073,"children":4074},{"class":1074,"line":1679},[4075,4079,4083],{"type":39,"tag":1072,"props":4076,"children":4077},{"style":1591},[4078],{"type":45,"value":2895},{"type":39,"tag":1072,"props":4080,"children":4081},{"style":1090},[4082],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4084,"children":4085},{"style":1084},[4086],{"type":45,"value":3667},{"type":39,"tag":1072,"props":4088,"children":4089},{"class":1074,"line":860},[4090,4094,4098],{"type":39,"tag":1072,"props":4091,"children":4092},{"style":1591},[4093],{"type":45,"value":2913},{"type":39,"tag":1072,"props":4095,"children":4096},{"style":1090},[4097],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4099,"children":4100},{"style":1084},[4101],{"type":45,"value":2922},{"type":39,"tag":1023,"props":4103,"children":4104},{"type":3361},[4105],{"type":39,"tag":48,"props":4106,"children":4107},{},[4108,4110,4116,4117,4123,4125,4131],{"type":45,"value":4109},"The Stripe MCP can help you explore which tables and fields are available. Ask Claude Code \"what data can I pull from Stripe?\" to see tables like ",{"type":39,"tag":70,"props":4111,"children":4113},{"className":4112},[],[4114],{"type":45,"value":4115},"subscriptions",{"type":45,"value":978},{"type":39,"tag":70,"props":4118,"children":4120},{"className":4119},[],[4121],{"type":45,"value":4122},"disputes",{"type":45,"value":4124},", or ",{"type":39,"tag":70,"props":4126,"children":4128},{"className":4127},[],[4129],{"type":45,"value":4130},"balance_transactions",{"type":45,"value":934},{"type":39,"tag":339,"props":4133,"children":4134},{},[],{"type":39,"tag":85,"props":4136,"children":4138},{"id":4137},"email-marketing",[4139],{"type":45,"value":4140},"Email Marketing",{"type":39,"tag":1242,"props":4142,"children":4145},{":variants":4143,"group":4144},"[{\"id\":\"klaviyo\",\"label\":\"Klaviyo\"},{\"id\":\"hubspot\",\"label\":\"HubSpot\"}]","marketing",[4146,4536],{"type":39,"tag":1248,"props":4147,"children":4148},{"v-slot:klaviyo":7},[4149,4154,4159,4167,4188,4192,4230,4237],{"type":39,"tag":2730,"props":4150,"children":4152},{"id":4151},"klaviyo",[4153],{"type":45,"value":2385},{"type":39,"tag":48,"props":4155,"children":4156},{},[4157],{"type":45,"value":4158},"Klaviyo covers the marketing side: how your email and SMS campaigns are performing and which customers are engaging.",{"type":39,"tag":48,"props":4160,"children":4161},{},[4162],{"type":39,"tag":97,"props":4163,"children":4164},{},[4165],{"type":45,"value":4166},"Add the Klaviyo connection:",{"type":39,"tag":1062,"props":4168,"children":4169},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[4170],{"type":39,"tag":70,"props":4171,"children":4172},{"__ignoreMap":7},[4173],{"type":39,"tag":1072,"props":4174,"children":4175},{"class":1074,"line":868},[4176,4180,4184],{"type":39,"tag":1072,"props":4177,"children":4178},{"style":1078},[4179],{"type":45,"value":1125},{"type":39,"tag":1072,"props":4181,"children":4182},{"style":1084},[4183],{"type":45,"value":1312},{"type":39,"tag":1072,"props":4185,"children":4186},{"style":1084},[4187],{"type":45,"value":1317},{"type":39,"tag":48,"props":4189,"children":4190},{},[4191],{"type":45,"value":1322},{"type":39,"tag":241,"props":4193,"children":4194},{},[4195,4208,4221],{"type":39,"tag":245,"props":4196,"children":4197},{},[4198,4202,4203],{"type":39,"tag":97,"props":4199,"children":4200},{},[4201],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":4204,"children":4206},{"className":4205},[],[4207],{"type":45,"value":4151},{"type":39,"tag":245,"props":4209,"children":4210},{},[4211,4215,4216],{"type":39,"tag":97,"props":4212,"children":4213},{},[4214],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":4217,"children":4219},{"className":4218},[],[4220],{"type":45,"value":4151},{"type":39,"tag":245,"props":4222,"children":4223},{},[4224,4228],{"type":39,"tag":97,"props":4225,"children":4226},{},[4227],{"type":45,"value":3519},{"type":45,"value":4229}," your Klaviyo private API key",{"type":39,"tag":48,"props":4231,"children":4232},{},[4233],{"type":39,"tag":97,"props":4234,"children":4235},{},[4236],{"type":45,"value":3536},{"type":39,"tag":1242,"props":4238,"children":4240},{":variants":4239},"[{\"id\":\"klaviyo-campaigns\",\"label\":\"Campaigns\"},{\"id\":\"klaviyo-flows\",\"label\":\"Flows\"},{\"id\":\"klaviyo-metrics\",\"label\":\"Metrics\"}]",[4241,4340,4438],{"type":39,"tag":1248,"props":4242,"children":4243},{"v-slot:klaviyo-campaigns":7},[4244],{"type":39,"tag":1062,"props":4245,"children":4247},{"className":1579,"code":4246,"language":1581,"meta":7,"style":7},"name: raw.klaviyo_campaigns\ntype: ingestr\nparameters:\n  source_connection: klaviyo\n  source_table: campaigns\n  incremental_strategy: replace\n",[4248],{"type":39,"tag":70,"props":4249,"children":4250},{"__ignoreMap":7},[4251,4267,4282,4293,4309,4325],{"type":39,"tag":1072,"props":4252,"children":4253},{"class":1074,"line":868},[4254,4258,4262],{"type":39,"tag":1072,"props":4255,"children":4256},{"style":1591},[4257],{"type":45,"value":1649},{"type":39,"tag":1072,"props":4259,"children":4260},{"style":1090},[4261],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4263,"children":4264},{"style":1084},[4265],{"type":45,"value":4266},"raw.klaviyo_campaigns\n",{"type":39,"tag":1072,"props":4268,"children":4269},{"class":1074,"line":476},[4270,4274,4278],{"type":39,"tag":1072,"props":4271,"children":4272},{"style":1591},[4273],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4275,"children":4276},{"style":1090},[4277],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4279,"children":4280},{"style":1084},[4281],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4283,"children":4284},{"class":1074,"line":483},[4285,4289],{"type":39,"tag":1072,"props":4286,"children":4287},{"style":1591},[4288],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4290,"children":4291},{"style":1090},[4292],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4294,"children":4295},{"class":1074,"line":1626},[4296,4300,4304],{"type":39,"tag":1072,"props":4297,"children":4298},{"style":1591},[4299],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4301,"children":4302},{"style":1090},[4303],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4305,"children":4306},{"style":1084},[4307],{"type":45,"value":4308},"klaviyo\n",{"type":39,"tag":1072,"props":4310,"children":4311},{"class":1074,"line":11},[4312,4316,4320],{"type":39,"tag":1072,"props":4313,"children":4314},{"style":1591},[4315],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4317,"children":4318},{"style":1090},[4319],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4321,"children":4322},{"style":1084},[4323],{"type":45,"value":4324},"campaigns\n",{"type":39,"tag":1072,"props":4326,"children":4327},{"class":1074,"line":20},[4328,4332,4336],{"type":39,"tag":1072,"props":4329,"children":4330},{"style":1591},[4331],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4333,"children":4334},{"style":1090},[4335],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4337,"children":4338},{"style":1084},[4339],{"type":45,"value":3358},{"type":39,"tag":1248,"props":4341,"children":4342},{"v-slot:klaviyo-flows":7},[4343],{"type":39,"tag":1062,"props":4344,"children":4346},{"className":1579,"code":4345,"language":1581,"meta":7,"style":7},"name: raw.klaviyo_flows\ntype: ingestr\nparameters:\n  source_connection: klaviyo\n  source_table: flows\n  incremental_strategy: replace\n",[4347],{"type":39,"tag":70,"props":4348,"children":4349},{"__ignoreMap":7},[4350,4366,4381,4392,4407,4423],{"type":39,"tag":1072,"props":4351,"children":4352},{"class":1074,"line":868},[4353,4357,4361],{"type":39,"tag":1072,"props":4354,"children":4355},{"style":1591},[4356],{"type":45,"value":1649},{"type":39,"tag":1072,"props":4358,"children":4359},{"style":1090},[4360],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4362,"children":4363},{"style":1084},[4364],{"type":45,"value":4365},"raw.klaviyo_flows\n",{"type":39,"tag":1072,"props":4367,"children":4368},{"class":1074,"line":476},[4369,4373,4377],{"type":39,"tag":1072,"props":4370,"children":4371},{"style":1591},[4372],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4374,"children":4375},{"style":1090},[4376],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4378,"children":4379},{"style":1084},[4380],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4382,"children":4383},{"class":1074,"line":483},[4384,4388],{"type":39,"tag":1072,"props":4385,"children":4386},{"style":1591},[4387],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4389,"children":4390},{"style":1090},[4391],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4393,"children":4394},{"class":1074,"line":1626},[4395,4399,4403],{"type":39,"tag":1072,"props":4396,"children":4397},{"style":1591},[4398],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4400,"children":4401},{"style":1090},[4402],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4404,"children":4405},{"style":1084},[4406],{"type":45,"value":4308},{"type":39,"tag":1072,"props":4408,"children":4409},{"class":1074,"line":11},[4410,4414,4418],{"type":39,"tag":1072,"props":4411,"children":4412},{"style":1591},[4413],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4415,"children":4416},{"style":1090},[4417],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4419,"children":4420},{"style":1084},[4421],{"type":45,"value":4422},"flows\n",{"type":39,"tag":1072,"props":4424,"children":4425},{"class":1074,"line":20},[4426,4430,4434],{"type":39,"tag":1072,"props":4427,"children":4428},{"style":1591},[4429],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4431,"children":4432},{"style":1090},[4433],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4435,"children":4436},{"style":1084},[4437],{"type":45,"value":3358},{"type":39,"tag":1248,"props":4439,"children":4440},{"v-slot:klaviyo-metrics":7},[4441],{"type":39,"tag":1062,"props":4442,"children":4444},{"className":1579,"code":4443,"language":1581,"meta":7,"style":7},"name: raw.klaviyo_metrics\ntype: ingestr\nparameters:\n  source_connection: klaviyo\n  source_table: metrics\n  incremental_strategy: replace\n",[4445],{"type":39,"tag":70,"props":4446,"children":4447},{"__ignoreMap":7},[4448,4464,4479,4490,4505,4521],{"type":39,"tag":1072,"props":4449,"children":4450},{"class":1074,"line":868},[4451,4455,4459],{"type":39,"tag":1072,"props":4452,"children":4453},{"style":1591},[4454],{"type":45,"value":1649},{"type":39,"tag":1072,"props":4456,"children":4457},{"style":1090},[4458],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4460,"children":4461},{"style":1084},[4462],{"type":45,"value":4463},"raw.klaviyo_metrics\n",{"type":39,"tag":1072,"props":4465,"children":4466},{"class":1074,"line":476},[4467,4471,4475],{"type":39,"tag":1072,"props":4468,"children":4469},{"style":1591},[4470],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4472,"children":4473},{"style":1090},[4474],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4476,"children":4477},{"style":1084},[4478],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4480,"children":4481},{"class":1074,"line":483},[4482,4486],{"type":39,"tag":1072,"props":4483,"children":4484},{"style":1591},[4485],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4487,"children":4488},{"style":1090},[4489],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4491,"children":4492},{"class":1074,"line":1626},[4493,4497,4501],{"type":39,"tag":1072,"props":4494,"children":4495},{"style":1591},[4496],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4498,"children":4499},{"style":1090},[4500],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4502,"children":4503},{"style":1084},[4504],{"type":45,"value":4308},{"type":39,"tag":1072,"props":4506,"children":4507},{"class":1074,"line":11},[4508,4512,4516],{"type":39,"tag":1072,"props":4509,"children":4510},{"style":1591},[4511],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4513,"children":4514},{"style":1090},[4515],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4517,"children":4518},{"style":1084},[4519],{"type":45,"value":4520},"metrics\n",{"type":39,"tag":1072,"props":4522,"children":4523},{"class":1074,"line":20},[4524,4528,4532],{"type":39,"tag":1072,"props":4525,"children":4526},{"style":1591},[4527],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4529,"children":4530},{"style":1090},[4531],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4533,"children":4534},{"style":1084},[4535],{"type":45,"value":3358},{"type":39,"tag":1248,"props":4537,"children":4538},{"v-slot:hubspot":7},[4539,4544,4549,4557,4578,4582,4620,4627],{"type":39,"tag":2730,"props":4540,"children":4542},{"id":4541},"hubspot",[4543],{"type":45,"value":2386},{"type":39,"tag":48,"props":4545,"children":4546},{},[4547],{"type":45,"value":4548},"HubSpot covers your CRM and marketing data: contacts, deals, email campaigns, and marketing activity.",{"type":39,"tag":48,"props":4550,"children":4551},{},[4552],{"type":39,"tag":97,"props":4553,"children":4554},{},[4555],{"type":45,"value":4556},"Add the HubSpot connection:",{"type":39,"tag":1062,"props":4558,"children":4559},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[4560],{"type":39,"tag":70,"props":4561,"children":4562},{"__ignoreMap":7},[4563],{"type":39,"tag":1072,"props":4564,"children":4565},{"class":1074,"line":868},[4566,4570,4574],{"type":39,"tag":1072,"props":4567,"children":4568},{"style":1078},[4569],{"type":45,"value":1125},{"type":39,"tag":1072,"props":4571,"children":4572},{"style":1084},[4573],{"type":45,"value":1312},{"type":39,"tag":1072,"props":4575,"children":4576},{"style":1084},[4577],{"type":45,"value":1317},{"type":39,"tag":48,"props":4579,"children":4580},{},[4581],{"type":45,"value":1322},{"type":39,"tag":241,"props":4583,"children":4584},{},[4585,4598,4611],{"type":39,"tag":245,"props":4586,"children":4587},{},[4588,4592,4593],{"type":39,"tag":97,"props":4589,"children":4590},{},[4591],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":4594,"children":4596},{"className":4595},[],[4597],{"type":45,"value":4541},{"type":39,"tag":245,"props":4599,"children":4600},{},[4601,4605,4606],{"type":39,"tag":97,"props":4602,"children":4603},{},[4604],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":4607,"children":4609},{"className":4608},[],[4610],{"type":45,"value":4541},{"type":39,"tag":245,"props":4612,"children":4613},{},[4614,4618],{"type":39,"tag":97,"props":4615,"children":4616},{},[4617],{"type":45,"value":3519},{"type":45,"value":4619}," your HubSpot private app access token",{"type":39,"tag":48,"props":4621,"children":4622},{},[4623],{"type":39,"tag":97,"props":4624,"children":4625},{},[4626],{"type":45,"value":3536},{"type":39,"tag":1242,"props":4628,"children":4630},{":variants":4629},"[{\"id\":\"hubspot-contacts\",\"label\":\"Contacts\"},{\"id\":\"hubspot-deals\",\"label\":\"Deals\"},{\"id\":\"hubspot-campaigns\",\"label\":\"Campaigns\"}]",[4631,4761,4889],{"type":39,"tag":1248,"props":4632,"children":4633},{"v-slot:hubspot-contacts":7},[4634],{"type":39,"tag":1062,"props":4635,"children":4637},{"className":1579,"code":4636,"language":1581,"meta":7,"style":7},"name: raw.hubspot_contacts\ntype: ingestr\nparameters:\n  source_connection: hubspot\n  source_table: contacts\n  incremental_strategy: merge\n  incremental_key: updatedAt\n  primary_key: id\n",[4638],{"type":39,"tag":70,"props":4639,"children":4640},{"__ignoreMap":7},[4641,4657,4672,4683,4699,4715,4730,4746],{"type":39,"tag":1072,"props":4642,"children":4643},{"class":1074,"line":868},[4644,4648,4652],{"type":39,"tag":1072,"props":4645,"children":4646},{"style":1591},[4647],{"type":45,"value":1649},{"type":39,"tag":1072,"props":4649,"children":4650},{"style":1090},[4651],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4653,"children":4654},{"style":1084},[4655],{"type":45,"value":4656},"raw.hubspot_contacts\n",{"type":39,"tag":1072,"props":4658,"children":4659},{"class":1074,"line":476},[4660,4664,4668],{"type":39,"tag":1072,"props":4661,"children":4662},{"style":1591},[4663],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4665,"children":4666},{"style":1090},[4667],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4669,"children":4670},{"style":1084},[4671],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4673,"children":4674},{"class":1074,"line":483},[4675,4679],{"type":39,"tag":1072,"props":4676,"children":4677},{"style":1591},[4678],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4680,"children":4681},{"style":1090},[4682],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4684,"children":4685},{"class":1074,"line":1626},[4686,4690,4694],{"type":39,"tag":1072,"props":4687,"children":4688},{"style":1591},[4689],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4691,"children":4692},{"style":1090},[4693],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4695,"children":4696},{"style":1084},[4697],{"type":45,"value":4698},"hubspot\n",{"type":39,"tag":1072,"props":4700,"children":4701},{"class":1074,"line":11},[4702,4706,4710],{"type":39,"tag":1072,"props":4703,"children":4704},{"style":1591},[4705],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4707,"children":4708},{"style":1090},[4709],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4711,"children":4712},{"style":1084},[4713],{"type":45,"value":4714},"contacts\n",{"type":39,"tag":1072,"props":4716,"children":4717},{"class":1074,"line":20},[4718,4722,4726],{"type":39,"tag":1072,"props":4719,"children":4720},{"style":1591},[4721],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4723,"children":4724},{"style":1090},[4725],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4727,"children":4728},{"style":1084},[4729],{"type":45,"value":2887},{"type":39,"tag":1072,"props":4731,"children":4732},{"class":1074,"line":1679},[4733,4737,4741],{"type":39,"tag":1072,"props":4734,"children":4735},{"style":1591},[4736],{"type":45,"value":2895},{"type":39,"tag":1072,"props":4738,"children":4739},{"style":1090},[4740],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4742,"children":4743},{"style":1084},[4744],{"type":45,"value":4745},"updatedAt\n",{"type":39,"tag":1072,"props":4747,"children":4748},{"class":1074,"line":860},[4749,4753,4757],{"type":39,"tag":1072,"props":4750,"children":4751},{"style":1591},[4752],{"type":45,"value":2913},{"type":39,"tag":1072,"props":4754,"children":4755},{"style":1090},[4756],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4758,"children":4759},{"style":1084},[4760],{"type":45,"value":2922},{"type":39,"tag":1248,"props":4762,"children":4763},{"v-slot:hubspot-deals":7},[4764],{"type":39,"tag":1062,"props":4765,"children":4767},{"className":1579,"code":4766,"language":1581,"meta":7,"style":7},"name: raw.hubspot_deals\ntype: ingestr\nparameters:\n  source_connection: hubspot\n  source_table: deals\n  incremental_strategy: merge\n  incremental_key: updatedAt\n  primary_key: id\n",[4768],{"type":39,"tag":70,"props":4769,"children":4770},{"__ignoreMap":7},[4771,4787,4802,4813,4828,4844,4859,4874],{"type":39,"tag":1072,"props":4772,"children":4773},{"class":1074,"line":868},[4774,4778,4782],{"type":39,"tag":1072,"props":4775,"children":4776},{"style":1591},[4777],{"type":45,"value":1649},{"type":39,"tag":1072,"props":4779,"children":4780},{"style":1090},[4781],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4783,"children":4784},{"style":1084},[4785],{"type":45,"value":4786},"raw.hubspot_deals\n",{"type":39,"tag":1072,"props":4788,"children":4789},{"class":1074,"line":476},[4790,4794,4798],{"type":39,"tag":1072,"props":4791,"children":4792},{"style":1591},[4793],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4795,"children":4796},{"style":1090},[4797],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4799,"children":4800},{"style":1084},[4801],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4803,"children":4804},{"class":1074,"line":483},[4805,4809],{"type":39,"tag":1072,"props":4806,"children":4807},{"style":1591},[4808],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4810,"children":4811},{"style":1090},[4812],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4814,"children":4815},{"class":1074,"line":1626},[4816,4820,4824],{"type":39,"tag":1072,"props":4817,"children":4818},{"style":1591},[4819],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4821,"children":4822},{"style":1090},[4823],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4825,"children":4826},{"style":1084},[4827],{"type":45,"value":4698},{"type":39,"tag":1072,"props":4829,"children":4830},{"class":1074,"line":11},[4831,4835,4839],{"type":39,"tag":1072,"props":4832,"children":4833},{"style":1591},[4834],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4836,"children":4837},{"style":1090},[4838],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4840,"children":4841},{"style":1084},[4842],{"type":45,"value":4843},"deals\n",{"type":39,"tag":1072,"props":4845,"children":4846},{"class":1074,"line":20},[4847,4851,4855],{"type":39,"tag":1072,"props":4848,"children":4849},{"style":1591},[4850],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4852,"children":4853},{"style":1090},[4854],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4856,"children":4857},{"style":1084},[4858],{"type":45,"value":2887},{"type":39,"tag":1072,"props":4860,"children":4861},{"class":1074,"line":1679},[4862,4866,4870],{"type":39,"tag":1072,"props":4863,"children":4864},{"style":1591},[4865],{"type":45,"value":2895},{"type":39,"tag":1072,"props":4867,"children":4868},{"style":1090},[4869],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4871,"children":4872},{"style":1084},[4873],{"type":45,"value":4745},{"type":39,"tag":1072,"props":4875,"children":4876},{"class":1074,"line":860},[4877,4881,4885],{"type":39,"tag":1072,"props":4878,"children":4879},{"style":1591},[4880],{"type":45,"value":2913},{"type":39,"tag":1072,"props":4882,"children":4883},{"style":1090},[4884],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4886,"children":4887},{"style":1084},[4888],{"type":45,"value":2922},{"type":39,"tag":1248,"props":4890,"children":4891},{"v-slot:hubspot-campaigns":7},[4892],{"type":39,"tag":1062,"props":4893,"children":4895},{"className":1579,"code":4894,"language":1581,"meta":7,"style":7},"name: raw.hubspot_campaigns\ntype: ingestr\nparameters:\n  source_connection: hubspot\n  source_table: campaigns\n  incremental_strategy: replace\n",[4896],{"type":39,"tag":70,"props":4897,"children":4898},{"__ignoreMap":7},[4899,4915,4930,4941,4956,4971],{"type":39,"tag":1072,"props":4900,"children":4901},{"class":1074,"line":868},[4902,4906,4910],{"type":39,"tag":1072,"props":4903,"children":4904},{"style":1591},[4905],{"type":45,"value":1649},{"type":39,"tag":1072,"props":4907,"children":4908},{"style":1090},[4909],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4911,"children":4912},{"style":1084},[4913],{"type":45,"value":4914},"raw.hubspot_campaigns\n",{"type":39,"tag":1072,"props":4916,"children":4917},{"class":1074,"line":476},[4918,4922,4926],{"type":39,"tag":1072,"props":4919,"children":4920},{"style":1591},[4921],{"type":45,"value":2798},{"type":39,"tag":1072,"props":4923,"children":4924},{"style":1090},[4925],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4927,"children":4928},{"style":1084},[4929],{"type":45,"value":2807},{"type":39,"tag":1072,"props":4931,"children":4932},{"class":1074,"line":483},[4933,4937],{"type":39,"tag":1072,"props":4934,"children":4935},{"style":1591},[4936],{"type":45,"value":2815},{"type":39,"tag":1072,"props":4938,"children":4939},{"style":1090},[4940],{"type":45,"value":1599},{"type":39,"tag":1072,"props":4942,"children":4943},{"class":1074,"line":1626},[4944,4948,4952],{"type":39,"tag":1072,"props":4945,"children":4946},{"style":1591},[4947],{"type":45,"value":2827},{"type":39,"tag":1072,"props":4949,"children":4950},{"style":1090},[4951],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4953,"children":4954},{"style":1084},[4955],{"type":45,"value":4698},{"type":39,"tag":1072,"props":4957,"children":4958},{"class":1074,"line":11},[4959,4963,4967],{"type":39,"tag":1072,"props":4960,"children":4961},{"style":1591},[4962],{"type":45,"value":2844},{"type":39,"tag":1072,"props":4964,"children":4965},{"style":1090},[4966],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4968,"children":4969},{"style":1084},[4970],{"type":45,"value":4324},{"type":39,"tag":1072,"props":4972,"children":4973},{"class":1074,"line":20},[4974,4978,4982],{"type":39,"tag":1072,"props":4975,"children":4976},{"style":1591},[4977],{"type":45,"value":2878},{"type":39,"tag":1072,"props":4979,"children":4980},{"style":1090},[4981],{"type":45,"value":1654},{"type":39,"tag":1072,"props":4983,"children":4984},{"style":1084},[4985],{"type":45,"value":3358},{"type":39,"tag":339,"props":4987,"children":4988},{},[],{"type":39,"tag":85,"props":4990,"children":4992},{"id":4991},"advertising",[4993],{"type":45,"value":4994},"Advertising",{"type":39,"tag":1242,"props":4996,"children":4999},{":variants":4997,"group":4998},"[{\"id\":\"facebook-ads\",\"label\":\"Facebook Ads\"},{\"id\":\"google-ads\",\"label\":\"Google Ads\"},{\"id\":\"tiktok-ads\",\"label\":\"TikTok Ads\"}]","ads",[5000,5342,5676],{"type":39,"tag":1248,"props":5001,"children":5002},{"v-slot:facebook-ads":7},[5003,5008,5013,5021,5042,5046,5103,5110],{"type":39,"tag":2730,"props":5004,"children":5006},{"id":5005},"facebook-ads",[5007],{"type":45,"value":2387},{"type":39,"tag":48,"props":5009,"children":5010},{},[5011],{"type":45,"value":5012},"Facebook Ads shows you what you're spending on acquisition across Facebook and Instagram.",{"type":39,"tag":48,"props":5014,"children":5015},{},[5016],{"type":39,"tag":97,"props":5017,"children":5018},{},[5019],{"type":45,"value":5020},"Add the connection:",{"type":39,"tag":1062,"props":5022,"children":5023},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[5024],{"type":39,"tag":70,"props":5025,"children":5026},{"__ignoreMap":7},[5027],{"type":39,"tag":1072,"props":5028,"children":5029},{"class":1074,"line":868},[5030,5034,5038],{"type":39,"tag":1072,"props":5031,"children":5032},{"style":1078},[5033],{"type":45,"value":1125},{"type":39,"tag":1072,"props":5035,"children":5036},{"style":1084},[5037],{"type":45,"value":1312},{"type":39,"tag":1072,"props":5039,"children":5040},{"style":1084},[5041],{"type":45,"value":1317},{"type":39,"tag":48,"props":5043,"children":5044},{},[5045],{"type":45,"value":1322},{"type":39,"tag":241,"props":5047,"children":5048},{},[5049,5063,5076,5093],{"type":39,"tag":245,"props":5050,"children":5051},{},[5052,5056,5057],{"type":39,"tag":97,"props":5053,"children":5054},{},[5055],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":5058,"children":5060},{"className":5059},[],[5061],{"type":45,"value":5062},"facebook_ads",{"type":39,"tag":245,"props":5064,"children":5065},{},[5066,5070,5071],{"type":39,"tag":97,"props":5067,"children":5068},{},[5069],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":5072,"children":5074},{"className":5073},[],[5075],{"type":45,"value":5062},{"type":39,"tag":245,"props":5077,"children":5078},{},[5079,5084,5086],{"type":39,"tag":97,"props":5080,"children":5081},{},[5082],{"type":45,"value":5083},"Access token:",{"type":45,"value":5085}," your ",{"type":39,"tag":467,"props":5087,"children":5090},{"href":5088,"rel":5089},"https:\u002F\u002Fdevelopers.facebook.com\u002Fdocs\u002Fmarketing-api\u002Foverview\u002Fauthorization",[921],[5091],{"type":45,"value":5092},"Facebook Marketing API access token",{"type":39,"tag":245,"props":5094,"children":5095},{},[5096,5101],{"type":39,"tag":97,"props":5097,"children":5098},{},[5099],{"type":45,"value":5100},"Account IDs:",{"type":45,"value":5102}," your ad account ID(s), comma-separated",{"type":39,"tag":48,"props":5104,"children":5105},{},[5106],{"type":39,"tag":97,"props":5107,"children":5108},{},[5109],{"type":45,"value":3536},{"type":39,"tag":1242,"props":5111,"children":5113},{":variants":5112},"[{\"id\":\"fb-campaigns\",\"label\":\"Campaigns\"},{\"id\":\"fb-insights\",\"label\":\"Ad Insights\"}]",[5114,5212],{"type":39,"tag":1248,"props":5115,"children":5116},{"v-slot:fb-campaigns":7},[5117],{"type":39,"tag":1062,"props":5118,"children":5120},{"className":1579,"code":5119,"language":1581,"meta":7,"style":7},"name: raw.facebook_campaigns\ntype: ingestr\nparameters:\n  source_connection: facebook_ads\n  source_table: campaigns\n  incremental_strategy: replace\n",[5121],{"type":39,"tag":70,"props":5122,"children":5123},{"__ignoreMap":7},[5124,5140,5155,5166,5182,5197],{"type":39,"tag":1072,"props":5125,"children":5126},{"class":1074,"line":868},[5127,5131,5135],{"type":39,"tag":1072,"props":5128,"children":5129},{"style":1591},[5130],{"type":45,"value":1649},{"type":39,"tag":1072,"props":5132,"children":5133},{"style":1090},[5134],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5136,"children":5137},{"style":1084},[5138],{"type":45,"value":5139},"raw.facebook_campaigns\n",{"type":39,"tag":1072,"props":5141,"children":5142},{"class":1074,"line":476},[5143,5147,5151],{"type":39,"tag":1072,"props":5144,"children":5145},{"style":1591},[5146],{"type":45,"value":2798},{"type":39,"tag":1072,"props":5148,"children":5149},{"style":1090},[5150],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5152,"children":5153},{"style":1084},[5154],{"type":45,"value":2807},{"type":39,"tag":1072,"props":5156,"children":5157},{"class":1074,"line":483},[5158,5162],{"type":39,"tag":1072,"props":5159,"children":5160},{"style":1591},[5161],{"type":45,"value":2815},{"type":39,"tag":1072,"props":5163,"children":5164},{"style":1090},[5165],{"type":45,"value":1599},{"type":39,"tag":1072,"props":5167,"children":5168},{"class":1074,"line":1626},[5169,5173,5177],{"type":39,"tag":1072,"props":5170,"children":5171},{"style":1591},[5172],{"type":45,"value":2827},{"type":39,"tag":1072,"props":5174,"children":5175},{"style":1090},[5176],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5178,"children":5179},{"style":1084},[5180],{"type":45,"value":5181},"facebook_ads\n",{"type":39,"tag":1072,"props":5183,"children":5184},{"class":1074,"line":11},[5185,5189,5193],{"type":39,"tag":1072,"props":5186,"children":5187},{"style":1591},[5188],{"type":45,"value":2844},{"type":39,"tag":1072,"props":5190,"children":5191},{"style":1090},[5192],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5194,"children":5195},{"style":1084},[5196],{"type":45,"value":4324},{"type":39,"tag":1072,"props":5198,"children":5199},{"class":1074,"line":20},[5200,5204,5208],{"type":39,"tag":1072,"props":5201,"children":5202},{"style":1591},[5203],{"type":45,"value":2878},{"type":39,"tag":1072,"props":5205,"children":5206},{"style":1090},[5207],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5209,"children":5210},{"style":1084},[5211],{"type":45,"value":3358},{"type":39,"tag":1248,"props":5213,"children":5214},{"v-slot:fb-insights":7},[5215],{"type":39,"tag":1062,"props":5216,"children":5218},{"className":1579,"code":5217,"language":1581,"meta":7,"style":7},"name: raw.facebook_ad_insights\ntype: ingestr\nparameters:\n  source_connection: facebook_ads\n  source_table: insights\n  incremental_strategy: merge\n  incremental_key: date_start\n  primary_key: \"date_start,campaign_id\"\n",[5219],{"type":39,"tag":70,"props":5220,"children":5221},{"__ignoreMap":7},[5222,5238,5253,5264,5279,5295,5310,5326],{"type":39,"tag":1072,"props":5223,"children":5224},{"class":1074,"line":868},[5225,5229,5233],{"type":39,"tag":1072,"props":5226,"children":5227},{"style":1591},[5228],{"type":45,"value":1649},{"type":39,"tag":1072,"props":5230,"children":5231},{"style":1090},[5232],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5234,"children":5235},{"style":1084},[5236],{"type":45,"value":5237},"raw.facebook_ad_insights\n",{"type":39,"tag":1072,"props":5239,"children":5240},{"class":1074,"line":476},[5241,5245,5249],{"type":39,"tag":1072,"props":5242,"children":5243},{"style":1591},[5244],{"type":45,"value":2798},{"type":39,"tag":1072,"props":5246,"children":5247},{"style":1090},[5248],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5250,"children":5251},{"style":1084},[5252],{"type":45,"value":2807},{"type":39,"tag":1072,"props":5254,"children":5255},{"class":1074,"line":483},[5256,5260],{"type":39,"tag":1072,"props":5257,"children":5258},{"style":1591},[5259],{"type":45,"value":2815},{"type":39,"tag":1072,"props":5261,"children":5262},{"style":1090},[5263],{"type":45,"value":1599},{"type":39,"tag":1072,"props":5265,"children":5266},{"class":1074,"line":1626},[5267,5271,5275],{"type":39,"tag":1072,"props":5268,"children":5269},{"style":1591},[5270],{"type":45,"value":2827},{"type":39,"tag":1072,"props":5272,"children":5273},{"style":1090},[5274],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5276,"children":5277},{"style":1084},[5278],{"type":45,"value":5181},{"type":39,"tag":1072,"props":5280,"children":5281},{"class":1074,"line":11},[5282,5286,5290],{"type":39,"tag":1072,"props":5283,"children":5284},{"style":1591},[5285],{"type":45,"value":2844},{"type":39,"tag":1072,"props":5287,"children":5288},{"style":1090},[5289],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5291,"children":5292},{"style":1084},[5293],{"type":45,"value":5294},"insights\n",{"type":39,"tag":1072,"props":5296,"children":5297},{"class":1074,"line":20},[5298,5302,5306],{"type":39,"tag":1072,"props":5299,"children":5300},{"style":1591},[5301],{"type":45,"value":2878},{"type":39,"tag":1072,"props":5303,"children":5304},{"style":1090},[5305],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5307,"children":5308},{"style":1084},[5309],{"type":45,"value":2887},{"type":39,"tag":1072,"props":5311,"children":5312},{"class":1074,"line":1679},[5313,5317,5321],{"type":39,"tag":1072,"props":5314,"children":5315},{"style":1591},[5316],{"type":45,"value":2895},{"type":39,"tag":1072,"props":5318,"children":5319},{"style":1090},[5320],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5322,"children":5323},{"style":1084},[5324],{"type":45,"value":5325},"date_start\n",{"type":39,"tag":1072,"props":5327,"children":5328},{"class":1074,"line":860},[5329,5333,5337],{"type":39,"tag":1072,"props":5330,"children":5331},{"style":1591},[5332],{"type":45,"value":2913},{"type":39,"tag":1072,"props":5334,"children":5335},{"style":1090},[5336],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5338,"children":5339},{"style":1084},[5340],{"type":45,"value":5341},"\"date_start,campaign_id\"\n",{"type":39,"tag":1248,"props":5343,"children":5344},{"v-slot:google-ads":7},[5345,5350,5355,5362,5383,5387,5437,5444],{"type":39,"tag":2730,"props":5346,"children":5348},{"id":5347},"google-ads",[5349],{"type":45,"value":2388},{"type":39,"tag":48,"props":5351,"children":5352},{},[5353],{"type":45,"value":5354},"Google Ads covers your search and display ad spend and performance.",{"type":39,"tag":48,"props":5356,"children":5357},{},[5358],{"type":39,"tag":97,"props":5359,"children":5360},{},[5361],{"type":45,"value":5020},{"type":39,"tag":1062,"props":5363,"children":5364},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[5365],{"type":39,"tag":70,"props":5366,"children":5367},{"__ignoreMap":7},[5368],{"type":39,"tag":1072,"props":5369,"children":5370},{"class":1074,"line":868},[5371,5375,5379],{"type":39,"tag":1072,"props":5372,"children":5373},{"style":1078},[5374],{"type":45,"value":1125},{"type":39,"tag":1072,"props":5376,"children":5377},{"style":1084},[5378],{"type":45,"value":1312},{"type":39,"tag":1072,"props":5380,"children":5381},{"style":1084},[5382],{"type":45,"value":1317},{"type":39,"tag":48,"props":5384,"children":5385},{},[5386],{"type":45,"value":1322},{"type":39,"tag":241,"props":5388,"children":5389},{},[5390,5404,5417,5427],{"type":39,"tag":245,"props":5391,"children":5392},{},[5393,5397,5398],{"type":39,"tag":97,"props":5394,"children":5395},{},[5396],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":5399,"children":5401},{"className":5400},[],[5402],{"type":45,"value":5403},"google_ads",{"type":39,"tag":245,"props":5405,"children":5406},{},[5407,5411,5412],{"type":39,"tag":97,"props":5408,"children":5409},{},[5410],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":5413,"children":5415},{"className":5414},[],[5416],{"type":45,"value":5403},{"type":39,"tag":245,"props":5418,"children":5419},{},[5420,5425],{"type":39,"tag":97,"props":5421,"children":5422},{},[5423],{"type":45,"value":5424},"Customer ID:",{"type":45,"value":5426}," your Google Ads customer ID",{"type":39,"tag":245,"props":5428,"children":5429},{},[5430,5435],{"type":39,"tag":97,"props":5431,"children":5432},{},[5433],{"type":45,"value":5434},"Credentials:",{"type":45,"value":5436}," path to your Google OAuth credentials JSON",{"type":39,"tag":48,"props":5438,"children":5439},{},[5440],{"type":39,"tag":97,"props":5441,"children":5442},{},[5443],{"type":45,"value":3536},{"type":39,"tag":1242,"props":5445,"children":5447},{":variants":5446},"[{\"id\":\"gads-campaigns\",\"label\":\"Campaigns\"},{\"id\":\"gads-insights\",\"label\":\"Ad Insights\"}]",[5448,5546],{"type":39,"tag":1248,"props":5449,"children":5450},{"v-slot:gads-campaigns":7},[5451],{"type":39,"tag":1062,"props":5452,"children":5454},{"className":1579,"code":5453,"language":1581,"meta":7,"style":7},"name: raw.google_campaigns\ntype: ingestr\nparameters:\n  source_connection: google_ads\n  source_table: campaigns\n  incremental_strategy: replace\n",[5455],{"type":39,"tag":70,"props":5456,"children":5457},{"__ignoreMap":7},[5458,5474,5489,5500,5516,5531],{"type":39,"tag":1072,"props":5459,"children":5460},{"class":1074,"line":868},[5461,5465,5469],{"type":39,"tag":1072,"props":5462,"children":5463},{"style":1591},[5464],{"type":45,"value":1649},{"type":39,"tag":1072,"props":5466,"children":5467},{"style":1090},[5468],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5470,"children":5471},{"style":1084},[5472],{"type":45,"value":5473},"raw.google_campaigns\n",{"type":39,"tag":1072,"props":5475,"children":5476},{"class":1074,"line":476},[5477,5481,5485],{"type":39,"tag":1072,"props":5478,"children":5479},{"style":1591},[5480],{"type":45,"value":2798},{"type":39,"tag":1072,"props":5482,"children":5483},{"style":1090},[5484],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5486,"children":5487},{"style":1084},[5488],{"type":45,"value":2807},{"type":39,"tag":1072,"props":5490,"children":5491},{"class":1074,"line":483},[5492,5496],{"type":39,"tag":1072,"props":5493,"children":5494},{"style":1591},[5495],{"type":45,"value":2815},{"type":39,"tag":1072,"props":5497,"children":5498},{"style":1090},[5499],{"type":45,"value":1599},{"type":39,"tag":1072,"props":5501,"children":5502},{"class":1074,"line":1626},[5503,5507,5511],{"type":39,"tag":1072,"props":5504,"children":5505},{"style":1591},[5506],{"type":45,"value":2827},{"type":39,"tag":1072,"props":5508,"children":5509},{"style":1090},[5510],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5512,"children":5513},{"style":1084},[5514],{"type":45,"value":5515},"google_ads\n",{"type":39,"tag":1072,"props":5517,"children":5518},{"class":1074,"line":11},[5519,5523,5527],{"type":39,"tag":1072,"props":5520,"children":5521},{"style":1591},[5522],{"type":45,"value":2844},{"type":39,"tag":1072,"props":5524,"children":5525},{"style":1090},[5526],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5528,"children":5529},{"style":1084},[5530],{"type":45,"value":4324},{"type":39,"tag":1072,"props":5532,"children":5533},{"class":1074,"line":20},[5534,5538,5542],{"type":39,"tag":1072,"props":5535,"children":5536},{"style":1591},[5537],{"type":45,"value":2878},{"type":39,"tag":1072,"props":5539,"children":5540},{"style":1090},[5541],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5543,"children":5544},{"style":1084},[5545],{"type":45,"value":3358},{"type":39,"tag":1248,"props":5547,"children":5548},{"v-slot:gads-insights":7},[5549],{"type":39,"tag":1062,"props":5550,"children":5552},{"className":1579,"code":5551,"language":1581,"meta":7,"style":7},"name: raw.google_ad_insights\ntype: ingestr\nparameters:\n  source_connection: google_ads\n  source_table: campaign_performance\n  incremental_strategy: merge\n  incremental_key: date\n  primary_key: \"date,campaign_id\"\n",[5553],{"type":39,"tag":70,"props":5554,"children":5555},{"__ignoreMap":7},[5556,5572,5587,5598,5613,5629,5644,5660],{"type":39,"tag":1072,"props":5557,"children":5558},{"class":1074,"line":868},[5559,5563,5567],{"type":39,"tag":1072,"props":5560,"children":5561},{"style":1591},[5562],{"type":45,"value":1649},{"type":39,"tag":1072,"props":5564,"children":5565},{"style":1090},[5566],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5568,"children":5569},{"style":1084},[5570],{"type":45,"value":5571},"raw.google_ad_insights\n",{"type":39,"tag":1072,"props":5573,"children":5574},{"class":1074,"line":476},[5575,5579,5583],{"type":39,"tag":1072,"props":5576,"children":5577},{"style":1591},[5578],{"type":45,"value":2798},{"type":39,"tag":1072,"props":5580,"children":5581},{"style":1090},[5582],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5584,"children":5585},{"style":1084},[5586],{"type":45,"value":2807},{"type":39,"tag":1072,"props":5588,"children":5589},{"class":1074,"line":483},[5590,5594],{"type":39,"tag":1072,"props":5591,"children":5592},{"style":1591},[5593],{"type":45,"value":2815},{"type":39,"tag":1072,"props":5595,"children":5596},{"style":1090},[5597],{"type":45,"value":1599},{"type":39,"tag":1072,"props":5599,"children":5600},{"class":1074,"line":1626},[5601,5605,5609],{"type":39,"tag":1072,"props":5602,"children":5603},{"style":1591},[5604],{"type":45,"value":2827},{"type":39,"tag":1072,"props":5606,"children":5607},{"style":1090},[5608],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5610,"children":5611},{"style":1084},[5612],{"type":45,"value":5515},{"type":39,"tag":1072,"props":5614,"children":5615},{"class":1074,"line":11},[5616,5620,5624],{"type":39,"tag":1072,"props":5617,"children":5618},{"style":1591},[5619],{"type":45,"value":2844},{"type":39,"tag":1072,"props":5621,"children":5622},{"style":1090},[5623],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5625,"children":5626},{"style":1084},[5627],{"type":45,"value":5628},"campaign_performance\n",{"type":39,"tag":1072,"props":5630,"children":5631},{"class":1074,"line":20},[5632,5636,5640],{"type":39,"tag":1072,"props":5633,"children":5634},{"style":1591},[5635],{"type":45,"value":2878},{"type":39,"tag":1072,"props":5637,"children":5638},{"style":1090},[5639],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5641,"children":5642},{"style":1084},[5643],{"type":45,"value":2887},{"type":39,"tag":1072,"props":5645,"children":5646},{"class":1074,"line":1679},[5647,5651,5655],{"type":39,"tag":1072,"props":5648,"children":5649},{"style":1591},[5650],{"type":45,"value":2895},{"type":39,"tag":1072,"props":5652,"children":5653},{"style":1090},[5654],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5656,"children":5657},{"style":1084},[5658],{"type":45,"value":5659},"date\n",{"type":39,"tag":1072,"props":5661,"children":5662},{"class":1074,"line":860},[5663,5667,5671],{"type":39,"tag":1072,"props":5664,"children":5665},{"style":1591},[5666],{"type":45,"value":2913},{"type":39,"tag":1072,"props":5668,"children":5669},{"style":1090},[5670],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5672,"children":5673},{"style":1084},[5674],{"type":45,"value":5675},"\"date,campaign_id\"\n",{"type":39,"tag":1248,"props":5677,"children":5678},{"v-slot:tiktok-ads":7},[5679,5684,5689,5696,5717,5721,5770,5777],{"type":39,"tag":2730,"props":5680,"children":5682},{"id":5681},"tiktok-ads",[5683],{"type":45,"value":2389},{"type":39,"tag":48,"props":5685,"children":5686},{},[5687],{"type":45,"value":5688},"TikTok Ads covers your TikTok video ad spend and performance.",{"type":39,"tag":48,"props":5690,"children":5691},{},[5692],{"type":39,"tag":97,"props":5693,"children":5694},{},[5695],{"type":45,"value":5020},{"type":39,"tag":1062,"props":5697,"children":5698},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[5699],{"type":39,"tag":70,"props":5700,"children":5701},{"__ignoreMap":7},[5702],{"type":39,"tag":1072,"props":5703,"children":5704},{"class":1074,"line":868},[5705,5709,5713],{"type":39,"tag":1072,"props":5706,"children":5707},{"style":1078},[5708],{"type":45,"value":1125},{"type":39,"tag":1072,"props":5710,"children":5711},{"style":1084},[5712],{"type":45,"value":1312},{"type":39,"tag":1072,"props":5714,"children":5715},{"style":1084},[5716],{"type":45,"value":1317},{"type":39,"tag":48,"props":5718,"children":5719},{},[5720],{"type":45,"value":1322},{"type":39,"tag":241,"props":5722,"children":5723},{},[5724,5738,5751,5760],{"type":39,"tag":245,"props":5725,"children":5726},{},[5727,5731,5732],{"type":39,"tag":97,"props":5728,"children":5729},{},[5730],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":5733,"children":5735},{"className":5734},[],[5736],{"type":45,"value":5737},"tiktok_ads",{"type":39,"tag":245,"props":5739,"children":5740},{},[5741,5745,5746],{"type":39,"tag":97,"props":5742,"children":5743},{},[5744],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":5747,"children":5749},{"className":5748},[],[5750],{"type":45,"value":5737},{"type":39,"tag":245,"props":5752,"children":5753},{},[5754,5758],{"type":39,"tag":97,"props":5755,"children":5756},{},[5757],{"type":45,"value":5083},{"type":45,"value":5759}," your TikTok Marketing API access token",{"type":39,"tag":245,"props":5761,"children":5762},{},[5763,5768],{"type":39,"tag":97,"props":5764,"children":5765},{},[5766],{"type":45,"value":5767},"Advertiser ID:",{"type":45,"value":5769}," your TikTok advertiser ID",{"type":39,"tag":48,"props":5771,"children":5772},{},[5773],{"type":39,"tag":97,"props":5774,"children":5775},{},[5776],{"type":45,"value":3536},{"type":39,"tag":1242,"props":5778,"children":5780},{":variants":5779},"[{\"id\":\"tt-campaigns\",\"label\":\"Campaigns\"},{\"id\":\"tt-insights\",\"label\":\"Ad Insights\"}]",[5781,5879],{"type":39,"tag":1248,"props":5782,"children":5783},{"v-slot:tt-campaigns":7},[5784],{"type":39,"tag":1062,"props":5785,"children":5787},{"className":1579,"code":5786,"language":1581,"meta":7,"style":7},"name: raw.tiktok_campaigns\ntype: ingestr\nparameters:\n  source_connection: tiktok_ads\n  source_table: campaigns\n  incremental_strategy: replace\n",[5788],{"type":39,"tag":70,"props":5789,"children":5790},{"__ignoreMap":7},[5791,5807,5822,5833,5849,5864],{"type":39,"tag":1072,"props":5792,"children":5793},{"class":1074,"line":868},[5794,5798,5802],{"type":39,"tag":1072,"props":5795,"children":5796},{"style":1591},[5797],{"type":45,"value":1649},{"type":39,"tag":1072,"props":5799,"children":5800},{"style":1090},[5801],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5803,"children":5804},{"style":1084},[5805],{"type":45,"value":5806},"raw.tiktok_campaigns\n",{"type":39,"tag":1072,"props":5808,"children":5809},{"class":1074,"line":476},[5810,5814,5818],{"type":39,"tag":1072,"props":5811,"children":5812},{"style":1591},[5813],{"type":45,"value":2798},{"type":39,"tag":1072,"props":5815,"children":5816},{"style":1090},[5817],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5819,"children":5820},{"style":1084},[5821],{"type":45,"value":2807},{"type":39,"tag":1072,"props":5823,"children":5824},{"class":1074,"line":483},[5825,5829],{"type":39,"tag":1072,"props":5826,"children":5827},{"style":1591},[5828],{"type":45,"value":2815},{"type":39,"tag":1072,"props":5830,"children":5831},{"style":1090},[5832],{"type":45,"value":1599},{"type":39,"tag":1072,"props":5834,"children":5835},{"class":1074,"line":1626},[5836,5840,5844],{"type":39,"tag":1072,"props":5837,"children":5838},{"style":1591},[5839],{"type":45,"value":2827},{"type":39,"tag":1072,"props":5841,"children":5842},{"style":1090},[5843],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5845,"children":5846},{"style":1084},[5847],{"type":45,"value":5848},"tiktok_ads\n",{"type":39,"tag":1072,"props":5850,"children":5851},{"class":1074,"line":11},[5852,5856,5860],{"type":39,"tag":1072,"props":5853,"children":5854},{"style":1591},[5855],{"type":45,"value":2844},{"type":39,"tag":1072,"props":5857,"children":5858},{"style":1090},[5859],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5861,"children":5862},{"style":1084},[5863],{"type":45,"value":4324},{"type":39,"tag":1072,"props":5865,"children":5866},{"class":1074,"line":20},[5867,5871,5875],{"type":39,"tag":1072,"props":5868,"children":5869},{"style":1591},[5870],{"type":45,"value":2878},{"type":39,"tag":1072,"props":5872,"children":5873},{"style":1090},[5874],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5876,"children":5877},{"style":1084},[5878],{"type":45,"value":3358},{"type":39,"tag":1248,"props":5880,"children":5881},{"v-slot:tt-insights":7},[5882],{"type":39,"tag":1062,"props":5883,"children":5885},{"className":1579,"code":5884,"language":1581,"meta":7,"style":7},"name: raw.tiktok_ad_insights\ntype: ingestr\nparameters:\n  source_connection: tiktok_ads\n  source_table: ads\n  incremental_strategy: merge\n  incremental_key: stat_datetime\n  primary_key: \"stat_datetime,campaign_id\"\n",[5886],{"type":39,"tag":70,"props":5887,"children":5888},{"__ignoreMap":7},[5889,5905,5920,5931,5946,5962,5977,5993],{"type":39,"tag":1072,"props":5890,"children":5891},{"class":1074,"line":868},[5892,5896,5900],{"type":39,"tag":1072,"props":5893,"children":5894},{"style":1591},[5895],{"type":45,"value":1649},{"type":39,"tag":1072,"props":5897,"children":5898},{"style":1090},[5899],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5901,"children":5902},{"style":1084},[5903],{"type":45,"value":5904},"raw.tiktok_ad_insights\n",{"type":39,"tag":1072,"props":5906,"children":5907},{"class":1074,"line":476},[5908,5912,5916],{"type":39,"tag":1072,"props":5909,"children":5910},{"style":1591},[5911],{"type":45,"value":2798},{"type":39,"tag":1072,"props":5913,"children":5914},{"style":1090},[5915],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5917,"children":5918},{"style":1084},[5919],{"type":45,"value":2807},{"type":39,"tag":1072,"props":5921,"children":5922},{"class":1074,"line":483},[5923,5927],{"type":39,"tag":1072,"props":5924,"children":5925},{"style":1591},[5926],{"type":45,"value":2815},{"type":39,"tag":1072,"props":5928,"children":5929},{"style":1090},[5930],{"type":45,"value":1599},{"type":39,"tag":1072,"props":5932,"children":5933},{"class":1074,"line":1626},[5934,5938,5942],{"type":39,"tag":1072,"props":5935,"children":5936},{"style":1591},[5937],{"type":45,"value":2827},{"type":39,"tag":1072,"props":5939,"children":5940},{"style":1090},[5941],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5943,"children":5944},{"style":1084},[5945],{"type":45,"value":5848},{"type":39,"tag":1072,"props":5947,"children":5948},{"class":1074,"line":11},[5949,5953,5957],{"type":39,"tag":1072,"props":5950,"children":5951},{"style":1591},[5952],{"type":45,"value":2844},{"type":39,"tag":1072,"props":5954,"children":5955},{"style":1090},[5956],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5958,"children":5959},{"style":1084},[5960],{"type":45,"value":5961},"ads\n",{"type":39,"tag":1072,"props":5963,"children":5964},{"class":1074,"line":20},[5965,5969,5973],{"type":39,"tag":1072,"props":5966,"children":5967},{"style":1591},[5968],{"type":45,"value":2878},{"type":39,"tag":1072,"props":5970,"children":5971},{"style":1090},[5972],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5974,"children":5975},{"style":1084},[5976],{"type":45,"value":2887},{"type":39,"tag":1072,"props":5978,"children":5979},{"class":1074,"line":1679},[5980,5984,5988],{"type":39,"tag":1072,"props":5981,"children":5982},{"style":1591},[5983],{"type":45,"value":2895},{"type":39,"tag":1072,"props":5985,"children":5986},{"style":1090},[5987],{"type":45,"value":1654},{"type":39,"tag":1072,"props":5989,"children":5990},{"style":1084},[5991],{"type":45,"value":5992},"stat_datetime\n",{"type":39,"tag":1072,"props":5994,"children":5995},{"class":1074,"line":860},[5996,6000,6004],{"type":39,"tag":1072,"props":5997,"children":5998},{"style":1591},[5999],{"type":45,"value":2913},{"type":39,"tag":1072,"props":6001,"children":6002},{"style":1090},[6003],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6005,"children":6006},{"style":1084},[6007],{"type":45,"value":6008},"\"stat_datetime,campaign_id\"\n",{"type":39,"tag":339,"props":6010,"children":6011},{},[],{"type":39,"tag":85,"props":6013,"children":6015},{"id":6014},"web-analytics",[6016],{"type":45,"value":6017},"Web Analytics",{"type":39,"tag":1242,"props":6019,"children":6022},{":variants":6020,"group":6021},"[{\"id\":\"ga4\",\"label\":\"GA4\"},{\"id\":\"mixpanel\",\"label\":\"Mixpanel\"}]","analytics",[6023,6394],{"type":39,"tag":1248,"props":6024,"children":6025},{"v-slot:ga4":7},[6026,6031,6036,6043,6064,6068,6125,6132],{"type":39,"tag":2730,"props":6027,"children":6029},{"id":6028},"ga4",[6030],{"type":45,"value":2393},{"type":39,"tag":48,"props":6032,"children":6033},{},[6034],{"type":45,"value":6035},"GA4 gives you the website funnel: who's visiting, where they come from, and what they do.",{"type":39,"tag":48,"props":6037,"children":6038},{},[6039],{"type":39,"tag":97,"props":6040,"children":6041},{},[6042],{"type":45,"value":5020},{"type":39,"tag":1062,"props":6044,"children":6045},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[6046],{"type":39,"tag":70,"props":6047,"children":6048},{"__ignoreMap":7},[6049],{"type":39,"tag":1072,"props":6050,"children":6051},{"class":1074,"line":868},[6052,6056,6060],{"type":39,"tag":1072,"props":6053,"children":6054},{"style":1078},[6055],{"type":45,"value":1125},{"type":39,"tag":1072,"props":6057,"children":6058},{"style":1084},[6059],{"type":45,"value":1312},{"type":39,"tag":1072,"props":6061,"children":6062},{"style":1084},[6063],{"type":45,"value":1317},{"type":39,"tag":48,"props":6065,"children":6066},{},[6067],{"type":45,"value":1322},{"type":39,"tag":241,"props":6069,"children":6070},{},[6071,6085,6098,6115],{"type":39,"tag":245,"props":6072,"children":6073},{},[6074,6078,6079],{"type":39,"tag":97,"props":6075,"children":6076},{},[6077],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":6080,"children":6082},{"className":6081},[],[6083],{"type":45,"value":6084},"google_analytics",{"type":39,"tag":245,"props":6086,"children":6087},{},[6088,6092,6093],{"type":39,"tag":97,"props":6089,"children":6090},{},[6091],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":6094,"children":6096},{"className":6095},[],[6097],{"type":45,"value":6084},{"type":39,"tag":245,"props":6099,"children":6100},{},[6101,6106,6108],{"type":39,"tag":97,"props":6102,"children":6103},{},[6104],{"type":45,"value":6105},"Credentials path:",{"type":45,"value":6107}," path to your ",{"type":39,"tag":467,"props":6109,"children":6112},{"href":6110,"rel":6111},"https:\u002F\u002Fcloud.google.com\u002Fiam\u002Fdocs\u002Fkeys-create-delete",[921],[6113],{"type":45,"value":6114},"Google service account JSON",{"type":39,"tag":245,"props":6116,"children":6117},{},[6118,6123],{"type":39,"tag":97,"props":6119,"children":6120},{},[6121],{"type":45,"value":6122},"Property ID:",{"type":45,"value":6124}," your GA4 property ID (found in GA4 Admin > Property Settings)",{"type":39,"tag":48,"props":6126,"children":6127},{},[6128],{"type":39,"tag":97,"props":6129,"children":6130},{},[6131],{"type":45,"value":3536},{"type":39,"tag":1242,"props":6133,"children":6135},{":variants":6134},"[{\"id\":\"ga4-events\",\"label\":\"Events\"},{\"id\":\"ga4-sessions\",\"label\":\"Sessions\"}]",[6136,6266],{"type":39,"tag":1248,"props":6137,"children":6138},{"v-slot:ga4-events":7},[6139],{"type":39,"tag":1062,"props":6140,"children":6142},{"className":1579,"code":6141,"language":1581,"meta":7,"style":7},"name: raw.ga4_events\ntype: ingestr\nparameters:\n  source_connection: google_analytics\n  source_table: events\n  incremental_strategy: merge\n  incremental_key: date\n  primary_key: \"date,event_name\"\n",[6143],{"type":39,"tag":70,"props":6144,"children":6145},{"__ignoreMap":7},[6146,6162,6177,6188,6204,6220,6235,6250],{"type":39,"tag":1072,"props":6147,"children":6148},{"class":1074,"line":868},[6149,6153,6157],{"type":39,"tag":1072,"props":6150,"children":6151},{"style":1591},[6152],{"type":45,"value":1649},{"type":39,"tag":1072,"props":6154,"children":6155},{"style":1090},[6156],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6158,"children":6159},{"style":1084},[6160],{"type":45,"value":6161},"raw.ga4_events\n",{"type":39,"tag":1072,"props":6163,"children":6164},{"class":1074,"line":476},[6165,6169,6173],{"type":39,"tag":1072,"props":6166,"children":6167},{"style":1591},[6168],{"type":45,"value":2798},{"type":39,"tag":1072,"props":6170,"children":6171},{"style":1090},[6172],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6174,"children":6175},{"style":1084},[6176],{"type":45,"value":2807},{"type":39,"tag":1072,"props":6178,"children":6179},{"class":1074,"line":483},[6180,6184],{"type":39,"tag":1072,"props":6181,"children":6182},{"style":1591},[6183],{"type":45,"value":2815},{"type":39,"tag":1072,"props":6185,"children":6186},{"style":1090},[6187],{"type":45,"value":1599},{"type":39,"tag":1072,"props":6189,"children":6190},{"class":1074,"line":1626},[6191,6195,6199],{"type":39,"tag":1072,"props":6192,"children":6193},{"style":1591},[6194],{"type":45,"value":2827},{"type":39,"tag":1072,"props":6196,"children":6197},{"style":1090},[6198],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6200,"children":6201},{"style":1084},[6202],{"type":45,"value":6203},"google_analytics\n",{"type":39,"tag":1072,"props":6205,"children":6206},{"class":1074,"line":11},[6207,6211,6215],{"type":39,"tag":1072,"props":6208,"children":6209},{"style":1591},[6210],{"type":45,"value":2844},{"type":39,"tag":1072,"props":6212,"children":6213},{"style":1090},[6214],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6216,"children":6217},{"style":1084},[6218],{"type":45,"value":6219},"events\n",{"type":39,"tag":1072,"props":6221,"children":6222},{"class":1074,"line":20},[6223,6227,6231],{"type":39,"tag":1072,"props":6224,"children":6225},{"style":1591},[6226],{"type":45,"value":2878},{"type":39,"tag":1072,"props":6228,"children":6229},{"style":1090},[6230],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6232,"children":6233},{"style":1084},[6234],{"type":45,"value":2887},{"type":39,"tag":1072,"props":6236,"children":6237},{"class":1074,"line":1679},[6238,6242,6246],{"type":39,"tag":1072,"props":6239,"children":6240},{"style":1591},[6241],{"type":45,"value":2895},{"type":39,"tag":1072,"props":6243,"children":6244},{"style":1090},[6245],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6247,"children":6248},{"style":1084},[6249],{"type":45,"value":5659},{"type":39,"tag":1072,"props":6251,"children":6252},{"class":1074,"line":860},[6253,6257,6261],{"type":39,"tag":1072,"props":6254,"children":6255},{"style":1591},[6256],{"type":45,"value":2913},{"type":39,"tag":1072,"props":6258,"children":6259},{"style":1090},[6260],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6262,"children":6263},{"style":1084},[6264],{"type":45,"value":6265},"\"date,event_name\"\n",{"type":39,"tag":1248,"props":6267,"children":6268},{"v-slot:ga4-sessions":7},[6269],{"type":39,"tag":1062,"props":6270,"children":6272},{"className":1579,"code":6271,"language":1581,"meta":7,"style":7},"name: raw.ga4_sessions\ntype: ingestr\nparameters:\n  source_connection: google_analytics\n  source_table: sessions\n  incremental_strategy: merge\n  incremental_key: date\n  primary_key: date\n",[6273],{"type":39,"tag":70,"props":6274,"children":6275},{"__ignoreMap":7},[6276,6292,6307,6318,6333,6349,6364,6379],{"type":39,"tag":1072,"props":6277,"children":6278},{"class":1074,"line":868},[6279,6283,6287],{"type":39,"tag":1072,"props":6280,"children":6281},{"style":1591},[6282],{"type":45,"value":1649},{"type":39,"tag":1072,"props":6284,"children":6285},{"style":1090},[6286],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6288,"children":6289},{"style":1084},[6290],{"type":45,"value":6291},"raw.ga4_sessions\n",{"type":39,"tag":1072,"props":6293,"children":6294},{"class":1074,"line":476},[6295,6299,6303],{"type":39,"tag":1072,"props":6296,"children":6297},{"style":1591},[6298],{"type":45,"value":2798},{"type":39,"tag":1072,"props":6300,"children":6301},{"style":1090},[6302],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6304,"children":6305},{"style":1084},[6306],{"type":45,"value":2807},{"type":39,"tag":1072,"props":6308,"children":6309},{"class":1074,"line":483},[6310,6314],{"type":39,"tag":1072,"props":6311,"children":6312},{"style":1591},[6313],{"type":45,"value":2815},{"type":39,"tag":1072,"props":6315,"children":6316},{"style":1090},[6317],{"type":45,"value":1599},{"type":39,"tag":1072,"props":6319,"children":6320},{"class":1074,"line":1626},[6321,6325,6329],{"type":39,"tag":1072,"props":6322,"children":6323},{"style":1591},[6324],{"type":45,"value":2827},{"type":39,"tag":1072,"props":6326,"children":6327},{"style":1090},[6328],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6330,"children":6331},{"style":1084},[6332],{"type":45,"value":6203},{"type":39,"tag":1072,"props":6334,"children":6335},{"class":1074,"line":11},[6336,6340,6344],{"type":39,"tag":1072,"props":6337,"children":6338},{"style":1591},[6339],{"type":45,"value":2844},{"type":39,"tag":1072,"props":6341,"children":6342},{"style":1090},[6343],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6345,"children":6346},{"style":1084},[6347],{"type":45,"value":6348},"sessions\n",{"type":39,"tag":1072,"props":6350,"children":6351},{"class":1074,"line":20},[6352,6356,6360],{"type":39,"tag":1072,"props":6353,"children":6354},{"style":1591},[6355],{"type":45,"value":2878},{"type":39,"tag":1072,"props":6357,"children":6358},{"style":1090},[6359],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6361,"children":6362},{"style":1084},[6363],{"type":45,"value":2887},{"type":39,"tag":1072,"props":6365,"children":6366},{"class":1074,"line":1679},[6367,6371,6375],{"type":39,"tag":1072,"props":6368,"children":6369},{"style":1591},[6370],{"type":45,"value":2895},{"type":39,"tag":1072,"props":6372,"children":6373},{"style":1090},[6374],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6376,"children":6377},{"style":1084},[6378],{"type":45,"value":5659},{"type":39,"tag":1072,"props":6380,"children":6381},{"class":1074,"line":860},[6382,6386,6390],{"type":39,"tag":1072,"props":6383,"children":6384},{"style":1591},[6385],{"type":45,"value":2913},{"type":39,"tag":1072,"props":6387,"children":6388},{"style":1090},[6389],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6391,"children":6392},{"style":1084},[6393],{"type":45,"value":5659},{"type":39,"tag":1248,"props":6395,"children":6396},{"v-slot:mixpanel":7},[6397,6402,6407,6414,6435,6439,6478,6485],{"type":39,"tag":2730,"props":6398,"children":6400},{"id":6399},"mixpanel",[6401],{"type":45,"value":2391},{"type":39,"tag":48,"props":6403,"children":6404},{},[6405],{"type":45,"value":6406},"Mixpanel gives you product analytics: user events, funnels, and engagement data.",{"type":39,"tag":48,"props":6408,"children":6409},{},[6410],{"type":39,"tag":97,"props":6411,"children":6412},{},[6413],{"type":45,"value":5020},{"type":39,"tag":1062,"props":6415,"children":6416},{"className":1064,"code":1296,"language":1066,"meta":7,"style":7},[6417],{"type":39,"tag":70,"props":6418,"children":6419},{"__ignoreMap":7},[6420],{"type":39,"tag":1072,"props":6421,"children":6422},{"class":1074,"line":868},[6423,6427,6431],{"type":39,"tag":1072,"props":6424,"children":6425},{"style":1078},[6426],{"type":45,"value":1125},{"type":39,"tag":1072,"props":6428,"children":6429},{"style":1084},[6430],{"type":45,"value":1312},{"type":39,"tag":1072,"props":6432,"children":6433},{"style":1084},[6434],{"type":45,"value":1317},{"type":39,"tag":48,"props":6436,"children":6437},{},[6438],{"type":45,"value":1322},{"type":39,"tag":241,"props":6440,"children":6441},{},[6442,6455,6468],{"type":39,"tag":245,"props":6443,"children":6444},{},[6445,6449,6450],{"type":39,"tag":97,"props":6446,"children":6447},{},[6448],{"type":45,"value":1333},{"type":45,"value":1335},{"type":39,"tag":70,"props":6451,"children":6453},{"className":6452},[],[6454],{"type":45,"value":6399},{"type":39,"tag":245,"props":6456,"children":6457},{},[6458,6462,6463],{"type":39,"tag":97,"props":6459,"children":6460},{},[6461],{"type":45,"value":1348},{"type":45,"value":1335},{"type":39,"tag":70,"props":6464,"children":6466},{"className":6465},[],[6467],{"type":45,"value":6399},{"type":39,"tag":245,"props":6469,"children":6470},{},[6471,6476],{"type":39,"tag":97,"props":6472,"children":6473},{},[6474],{"type":45,"value":6475},"API secret:",{"type":45,"value":6477}," your Mixpanel API secret (found in Project Settings)",{"type":39,"tag":48,"props":6479,"children":6480},{},[6481],{"type":39,"tag":97,"props":6482,"children":6483},{},[6484],{"type":45,"value":3536},{"type":39,"tag":1242,"props":6486,"children":6488},{":variants":6487},"[{\"id\":\"mp-events\",\"label\":\"Events\"},{\"id\":\"mp-funnels\",\"label\":\"Funnels\"}]",[6489,6619],{"type":39,"tag":1248,"props":6490,"children":6491},{"v-slot:mp-events":7},[6492],{"type":39,"tag":1062,"props":6493,"children":6495},{"className":1579,"code":6494,"language":1581,"meta":7,"style":7},"name: raw.mixpanel_events\ntype: ingestr\nparameters:\n  source_connection: mixpanel\n  source_table: events\n  incremental_strategy: merge\n  incremental_key: time\n  primary_key: \"distinct_id,time\"\n",[6496],{"type":39,"tag":70,"props":6497,"children":6498},{"__ignoreMap":7},[6499,6515,6530,6541,6557,6572,6587,6603],{"type":39,"tag":1072,"props":6500,"children":6501},{"class":1074,"line":868},[6502,6506,6510],{"type":39,"tag":1072,"props":6503,"children":6504},{"style":1591},[6505],{"type":45,"value":1649},{"type":39,"tag":1072,"props":6507,"children":6508},{"style":1090},[6509],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6511,"children":6512},{"style":1084},[6513],{"type":45,"value":6514},"raw.mixpanel_events\n",{"type":39,"tag":1072,"props":6516,"children":6517},{"class":1074,"line":476},[6518,6522,6526],{"type":39,"tag":1072,"props":6519,"children":6520},{"style":1591},[6521],{"type":45,"value":2798},{"type":39,"tag":1072,"props":6523,"children":6524},{"style":1090},[6525],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6527,"children":6528},{"style":1084},[6529],{"type":45,"value":2807},{"type":39,"tag":1072,"props":6531,"children":6532},{"class":1074,"line":483},[6533,6537],{"type":39,"tag":1072,"props":6534,"children":6535},{"style":1591},[6536],{"type":45,"value":2815},{"type":39,"tag":1072,"props":6538,"children":6539},{"style":1090},[6540],{"type":45,"value":1599},{"type":39,"tag":1072,"props":6542,"children":6543},{"class":1074,"line":1626},[6544,6548,6552],{"type":39,"tag":1072,"props":6545,"children":6546},{"style":1591},[6547],{"type":45,"value":2827},{"type":39,"tag":1072,"props":6549,"children":6550},{"style":1090},[6551],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6553,"children":6554},{"style":1084},[6555],{"type":45,"value":6556},"mixpanel\n",{"type":39,"tag":1072,"props":6558,"children":6559},{"class":1074,"line":11},[6560,6564,6568],{"type":39,"tag":1072,"props":6561,"children":6562},{"style":1591},[6563],{"type":45,"value":2844},{"type":39,"tag":1072,"props":6565,"children":6566},{"style":1090},[6567],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6569,"children":6570},{"style":1084},[6571],{"type":45,"value":6219},{"type":39,"tag":1072,"props":6573,"children":6574},{"class":1074,"line":20},[6575,6579,6583],{"type":39,"tag":1072,"props":6576,"children":6577},{"style":1591},[6578],{"type":45,"value":2878},{"type":39,"tag":1072,"props":6580,"children":6581},{"style":1090},[6582],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6584,"children":6585},{"style":1084},[6586],{"type":45,"value":2887},{"type":39,"tag":1072,"props":6588,"children":6589},{"class":1074,"line":1679},[6590,6594,6598],{"type":39,"tag":1072,"props":6591,"children":6592},{"style":1591},[6593],{"type":45,"value":2895},{"type":39,"tag":1072,"props":6595,"children":6596},{"style":1090},[6597],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6599,"children":6600},{"style":1084},[6601],{"type":45,"value":6602},"time\n",{"type":39,"tag":1072,"props":6604,"children":6605},{"class":1074,"line":860},[6606,6610,6614],{"type":39,"tag":1072,"props":6607,"children":6608},{"style":1591},[6609],{"type":45,"value":2913},{"type":39,"tag":1072,"props":6611,"children":6612},{"style":1090},[6613],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6615,"children":6616},{"style":1084},[6617],{"type":45,"value":6618},"\"distinct_id,time\"\n",{"type":39,"tag":1248,"props":6620,"children":6621},{"v-slot:mp-funnels":7},[6622],{"type":39,"tag":1062,"props":6623,"children":6625},{"className":1579,"code":6624,"language":1581,"meta":7,"style":7},"name: raw.mixpanel_funnels\ntype: ingestr\nparameters:\n  source_connection: mixpanel\n  source_table: funnels\n  incremental_strategy: replace\n",[6626],{"type":39,"tag":70,"props":6627,"children":6628},{"__ignoreMap":7},[6629,6645,6660,6671,6686,6702],{"type":39,"tag":1072,"props":6630,"children":6631},{"class":1074,"line":868},[6632,6636,6640],{"type":39,"tag":1072,"props":6633,"children":6634},{"style":1591},[6635],{"type":45,"value":1649},{"type":39,"tag":1072,"props":6637,"children":6638},{"style":1090},[6639],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6641,"children":6642},{"style":1084},[6643],{"type":45,"value":6644},"raw.mixpanel_funnels\n",{"type":39,"tag":1072,"props":6646,"children":6647},{"class":1074,"line":476},[6648,6652,6656],{"type":39,"tag":1072,"props":6649,"children":6650},{"style":1591},[6651],{"type":45,"value":2798},{"type":39,"tag":1072,"props":6653,"children":6654},{"style":1090},[6655],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6657,"children":6658},{"style":1084},[6659],{"type":45,"value":2807},{"type":39,"tag":1072,"props":6661,"children":6662},{"class":1074,"line":483},[6663,6667],{"type":39,"tag":1072,"props":6664,"children":6665},{"style":1591},[6666],{"type":45,"value":2815},{"type":39,"tag":1072,"props":6668,"children":6669},{"style":1090},[6670],{"type":45,"value":1599},{"type":39,"tag":1072,"props":6672,"children":6673},{"class":1074,"line":1626},[6674,6678,6682],{"type":39,"tag":1072,"props":6675,"children":6676},{"style":1591},[6677],{"type":45,"value":2827},{"type":39,"tag":1072,"props":6679,"children":6680},{"style":1090},[6681],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6683,"children":6684},{"style":1084},[6685],{"type":45,"value":6556},{"type":39,"tag":1072,"props":6687,"children":6688},{"class":1074,"line":11},[6689,6693,6697],{"type":39,"tag":1072,"props":6690,"children":6691},{"style":1591},[6692],{"type":45,"value":2844},{"type":39,"tag":1072,"props":6694,"children":6695},{"style":1090},[6696],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6698,"children":6699},{"style":1084},[6700],{"type":45,"value":6701},"funnels\n",{"type":39,"tag":1072,"props":6703,"children":6704},{"class":1074,"line":20},[6705,6709,6713],{"type":39,"tag":1072,"props":6706,"children":6707},{"style":1591},[6708],{"type":45,"value":2878},{"type":39,"tag":1072,"props":6710,"children":6711},{"style":1090},[6712],{"type":45,"value":1654},{"type":39,"tag":1072,"props":6714,"children":6715},{"style":1084},[6716],{"type":45,"value":3358},{"type":39,"tag":339,"props":6718,"children":6719},{},[],{"type":39,"tag":85,"props":6721,"children":6723},{"id":6722},"validate-and-run",[6724],{"type":45,"value":6725},"Validate and run",{"type":39,"tag":48,"props":6727,"children":6728},{},[6729],{"type":45,"value":6730},"Validate that all your asset definitions are correct:",{"type":39,"tag":1062,"props":6732,"children":6733},{"className":1064,"code":2304,"language":1066,"meta":7,"style":7},[6734],{"type":39,"tag":70,"props":6735,"children":6736},{"__ignoreMap":7},[6737],{"type":39,"tag":1072,"props":6738,"children":6739},{"class":1074,"line":868},[6740,6744,6748],{"type":39,"tag":1072,"props":6741,"children":6742},{"style":1078},[6743],{"type":45,"value":1125},{"type":39,"tag":1072,"props":6745,"children":6746},{"style":1084},[6747],{"type":45,"value":2320},{"type":39,"tag":1072,"props":6749,"children":6750},{"style":1084},[6751],{"type":45,"value":2325},{"type":39,"tag":48,"props":6753,"children":6754},{},[6755],{"type":45,"value":6756},"Or ask Claude Code:",{"type":39,"tag":115,"props":6758,"children":6759},{},[6760],{"type":39,"tag":48,"props":6761,"children":6762},{},[6763],{"type":45,"value":6764},"Run bruin validate and fix any issues you find in the asset files.",{"type":39,"tag":48,"props":6766,"children":6767},{},[6768],{"type":45,"value":6769},"Fix any errors - the most common issue is a typo in a connection name or a missing required field.",{"type":39,"tag":48,"props":6771,"children":6772},{},[6773],{"type":45,"value":6774},"Then run the pipeline. For your first run, start with a small date range (about a month) to verify everything works before doing a full backfill:",{"type":39,"tag":1062,"props":6776,"children":6778},{"className":1064,"code":6777,"language":1066,"meta":7,"style":7},"bruin run --start-date 2025-01-01 --end-date 2025-02-01 .\n",[6779],{"type":39,"tag":70,"props":6780,"children":6781},{"__ignoreMap":7},[6782],{"type":39,"tag":1072,"props":6783,"children":6784},{"class":1074,"line":868},[6785,6789,6794,6799,6804,6809,6814],{"type":39,"tag":1072,"props":6786,"children":6787},{"style":1078},[6788],{"type":45,"value":1125},{"type":39,"tag":1072,"props":6790,"children":6791},{"style":1084},[6792],{"type":45,"value":6793}," run",{"type":39,"tag":1072,"props":6795,"children":6796},{"style":1096},[6797],{"type":45,"value":6798}," --start-date",{"type":39,"tag":1072,"props":6800,"children":6801},{"style":1084},[6802],{"type":45,"value":6803}," 2025-01-01",{"type":39,"tag":1072,"props":6805,"children":6806},{"style":1096},[6807],{"type":45,"value":6808}," --end-date",{"type":39,"tag":1072,"props":6810,"children":6811},{"style":1084},[6812],{"type":45,"value":6813}," 2025-02-01",{"type":39,"tag":1072,"props":6815,"children":6816},{"style":1084},[6817],{"type":45,"value":2325},{"type":39,"tag":48,"props":6819,"children":6820},{},[6821,6823,6829,6831,6837,6839,6844,6845,6849],{"type":45,"value":6822},"This tells Bruin to only pull data within that interval. The ",{"type":39,"tag":70,"props":6824,"children":6826},{"className":6825},[],[6827],{"type":45,"value":6828},"--start-date",{"type":45,"value":6830}," and ",{"type":39,"tag":70,"props":6832,"children":6834},{"className":6833},[],[6835],{"type":45,"value":6836},"--end-date",{"type":45,"value":6838}," flags control the date range passed to each ",{"type":39,"tag":467,"props":6840,"children":6841},{"href":988},[6842],{"type":45,"value":6843},"ingestor asset",{"type":45,"value":2570},{"type":39,"tag":467,"props":6846,"children":6847},{"href":1003},[6848],{"type":45,"value":1006},{"type":45,"value":6850}," for all available flags.",{"type":39,"tag":48,"props":6852,"children":6853},{},[6854,6856,6862,6863,6869],{"type":45,"value":6855},"If you have multiple environments (e.g. ",{"type":39,"tag":70,"props":6857,"children":6859},{"className":6858},[],[6860],{"type":45,"value":6861},"dev",{"type":45,"value":6830},{"type":39,"tag":70,"props":6864,"children":6866},{"className":6865},[],[6867],{"type":45,"value":6868},"prod",{"type":45,"value":6870},"), you can specify which one to use:",{"type":39,"tag":1062,"props":6872,"children":6874},{"className":1064,"code":6873,"language":1066,"meta":7,"style":7},"bruin run --start-date 2025-01-01 --end-date 2025-02-01 -e default .\n",[6875],{"type":39,"tag":70,"props":6876,"children":6877},{"__ignoreMap":7},[6878],{"type":39,"tag":1072,"props":6879,"children":6880},{"class":1074,"line":868},[6881,6885,6889,6893,6897,6901,6905,6910,6915],{"type":39,"tag":1072,"props":6882,"children":6883},{"style":1078},[6884],{"type":45,"value":1125},{"type":39,"tag":1072,"props":6886,"children":6887},{"style":1084},[6888],{"type":45,"value":6793},{"type":39,"tag":1072,"props":6890,"children":6891},{"style":1096},[6892],{"type":45,"value":6798},{"type":39,"tag":1072,"props":6894,"children":6895},{"style":1084},[6896],{"type":45,"value":6803},{"type":39,"tag":1072,"props":6898,"children":6899},{"style":1096},[6900],{"type":45,"value":6808},{"type":39,"tag":1072,"props":6902,"children":6903},{"style":1084},[6904],{"type":45,"value":6813},{"type":39,"tag":1072,"props":6906,"children":6907},{"style":1096},[6908],{"type":45,"value":6909}," -e",{"type":39,"tag":1072,"props":6911,"children":6912},{"style":1084},[6913],{"type":45,"value":6914}," default",{"type":39,"tag":1072,"props":6916,"children":6917},{"style":1084},[6918],{"type":45,"value":2325},{"type":39,"tag":48,"props":6920,"children":6921},{},[6922],{"type":45,"value":6923},"Once you've confirmed the data looks right, do a full backfill with a wider range:",{"type":39,"tag":1062,"props":6925,"children":6927},{"className":1064,"code":6926,"language":1066,"meta":7,"style":7},"bruin run --start-date 2024-01-01 --end-date 2026-04-01 .\n",[6928],{"type":39,"tag":70,"props":6929,"children":6930},{"__ignoreMap":7},[6931],{"type":39,"tag":1072,"props":6932,"children":6933},{"class":1074,"line":868},[6934,6938,6942,6946,6951,6955,6960],{"type":39,"tag":1072,"props":6935,"children":6936},{"style":1078},[6937],{"type":45,"value":1125},{"type":39,"tag":1072,"props":6939,"children":6940},{"style":1084},[6941],{"type":45,"value":6793},{"type":39,"tag":1072,"props":6943,"children":6944},{"style":1096},[6945],{"type":45,"value":6798},{"type":39,"tag":1072,"props":6947,"children":6948},{"style":1084},[6949],{"type":45,"value":6950}," 2024-01-01",{"type":39,"tag":1072,"props":6952,"children":6953},{"style":1096},[6954],{"type":45,"value":6808},{"type":39,"tag":1072,"props":6956,"children":6957},{"style":1084},[6958],{"type":45,"value":6959}," 2026-04-01",{"type":39,"tag":1072,"props":6961,"children":6962},{"style":1084},[6963],{"type":45,"value":2325},{"type":39,"tag":85,"props":6965,"children":6967},{"id":6966},"verify-data-landed",[6968],{"type":45,"value":6969},"Verify data landed",{"type":39,"tag":48,"props":6971,"children":6972},{},[6973],{"type":45,"value":6974},"Ask Claude Code to check all your tables at once:",{"type":39,"tag":115,"props":6976,"children":6977},{},[6978],{"type":39,"tag":48,"props":6979,"children":6980},{},[6981],{"type":45,"value":6982},"Query each raw table in the warehouse and give me the row count for every source we ingested.",{"type":39,"tag":48,"props":6984,"children":6985},{},[6986],{"type":45,"value":6987},"If you see row counts greater than zero, your ingestion is working. If a table is empty, ask Claude Code to troubleshoot:",{"type":39,"tag":115,"props":6989,"children":6990},{},[6991],{"type":39,"tag":48,"props":6992,"children":6993},{},[6994],{"type":45,"value":6995},"The raw.shopify_orders table is empty after running the pipeline. Check the asset definition and connection, and tell me what might be wrong.",{"type":39,"tag":40,"props":6997,"children":6998},{"id":285},[6999],{"type":45,"value":288},{"type":39,"tag":48,"props":7001,"children":7002},{},[7003,7005,7009],{"type":45,"value":7004},"You now have raw ecommerce data flowing from your SaaS sources into your warehouse. Each ",{"type":39,"tag":467,"props":7006,"children":7007},{"href":988},[7008],{"type":45,"value":6843},{"type":45,"value":7010}," uses incremental loading - on subsequent runs, it only pulls new and updated records instead of re-fetching everything.",{"type":39,"tag":48,"props":7012,"children":7013},{},[7014],{"type":45,"value":7015},"Next, you'll build a staging layer on top of this raw data to clean, join, and deduplicate across sources.",{"type":39,"tag":2354,"props":7017,"children":7018},{},[7019],{"type":45,"value":2358},{"title":7,"searchDepth":476,"depth":476,"links":7021},[7022,7023,7026,7036],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58,"children":7024},[7025],{"id":2441,"depth":483,"text":2444},{"id":80,"depth":476,"text":83,"children":7027},[7028,7029,7030,7031,7032,7033,7034,7035],{"id":2469,"depth":483,"text":2472},{"id":2636,"depth":483,"text":2639},{"id":3388,"depth":483,"text":3391},{"id":4137,"depth":483,"text":4140},{"id":4991,"depth":483,"text":4994},{"id":6014,"depth":483,"text":6017},{"id":6722,"depth":483,"text":6725},{"id":6966,"depth":483,"text":6969},{"id":285,"depth":476,"text":288},"content:tutorials:ecommerce-pipeline:ingest-data.md","tutorials\u002Fecommerce-pipeline\u002Fingest-data.md","tutorials\u002Fecommerce-pipeline\u002Fingest-data",{"_path":7041,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":7042,"description":7043,"date":10,"readingTime":2380,"category":12,"tags":7044,"difficulty":7046,"module":5,"subSteps":19,"step":483,"variants":7047,"journeys":7048,"learnMore":7049,"author":7059,"body":7060,"_type":491,"_id":15033,"_source":493,"_file":15034,"_stem":15035,"_extension":496},"\u002Ftutorials\u002Fecommerce-pipeline\u002Fdata-preparation","Clean & Join Your Data","Build a staging layer that cleans, deduplicates, and joins data across Shopify, Stripe, and your marketing, ads, and analytics sources into consistent, analysis-ready tables.",[862,863,7045,865,866,867,17],"SQL","Intermediate",[865,866,867],[22,23],[7050,7053,7056],{"label":7051,"url":7052},"Materialization strategies","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fassets\u002Fmaterialization.html",{"label":7054,"url":7055},"Quality checks","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fquality\u002Foverview.html",{"label":7057,"url":7058},"Asset dependencies","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fassets\u002Fdefinition-schema.html",{"name":32,"role":33,"image":34},{"type":36,"children":7061,"toc":15013},[7062,7066,7071,7075,7080,7085,7089,7102,7126,7132,7137,7145,7150,7155,7304,7316,7321,7409,7425,10166,10186,10198,10232,10302,10316,10985,11003,11015,11034,11064,11078,11395,11407,11412,11426,11454,11460,12481,12487,12500,13107,13137,13149,13154,13168,13174,13202,14234,14240,14273,14757,14765,14771,14792,14797,14834,14845,14884,14890,14895,14903,14908,14916,14920,14997,15009],{"type":39,"tag":40,"props":7063,"children":7064},{"id":42},[7065],{"type":45,"value":46},{"type":39,"tag":48,"props":7067,"children":7068},{},[7069],{"type":45,"value":7070},"Write SQL assets that clean and join the raw data from Step 2 into a staging layer - five consistent tables that the report layer builds on.",{"type":39,"tag":40,"props":7072,"children":7073},{"id":55},[7074],{"type":45,"value":58},{"type":39,"tag":48,"props":7076,"children":7077},{},[7078],{"type":45,"value":7079},"Raw data from five different SaaS tools has different formats, timestamps, IDs, and conventions. Shopify stores amounts in dollars, Stripe stores them in cents. Your email platform tracks opens, your ads platform tracks impressions - both are \"engagement\" but they look nothing alike.",{"type":39,"tag":48,"props":7081,"children":7082},{},[7083],{"type":45,"value":7084},"The staging layer normalizes everything into a consistent format so that reports are accurate and trustworthy.",{"type":39,"tag":40,"props":7086,"children":7087},{"id":80},[7088],{"type":45,"value":83},{"type":39,"tag":48,"props":7090,"children":7091},{},[7092,7094,7100],{"type":45,"value":7093},"Create a ",{"type":39,"tag":70,"props":7095,"children":7097},{"className":7096},[],[7098],{"type":45,"value":7099},"staging\u002F",{"type":45,"value":7101}," subfolder to keep your staging assets organized:",{"type":39,"tag":1062,"props":7103,"children":7105},{"className":1064,"code":7104,"language":1066,"meta":7,"style":7},"mkdir -p ecommerce\u002Fassets\u002Fstaging\n",[7106],{"type":39,"tag":70,"props":7107,"children":7108},{"__ignoreMap":7},[7109],{"type":39,"tag":1072,"props":7110,"children":7111},{"class":1074,"line":868},[7112,7116,7121],{"type":39,"tag":1072,"props":7113,"children":7114},{"style":1078},[7115],{"type":45,"value":1081},{"type":39,"tag":1072,"props":7117,"children":7118},{"style":1096},[7119],{"type":45,"value":7120}," -p",{"type":39,"tag":1072,"props":7122,"children":7123},{"style":1084},[7124],{"type":45,"value":7125}," ecommerce\u002Fassets\u002Fstaging\n",{"type":39,"tag":85,"props":7127,"children":7129},{"id":7128},"using-claude-code-to-write-staging-sql",[7130],{"type":45,"value":7131},"Using Claude Code to write staging SQL",{"type":39,"tag":48,"props":7133,"children":7134},{},[7135],{"type":45,"value":7136},"This is where Claude Code really helps. Instead of writing every SQL file from scratch, you can ask Claude Code to look at your raw tables and generate the staging queries for you:",{"type":39,"tag":115,"props":7138,"children":7139},{},[7140],{"type":39,"tag":48,"props":7141,"children":7142},{},[7143],{"type":45,"value":7144},"Look at the schemas for raw.shopify_orders and raw.stripe_charges in my warehouse. Write a Bruin SQL asset that joins them into a staging.stg_orders table - deduplicate, convert Stripe cents to dollars, and add not_null and unique checks on order_id. Put it in ecommerce\u002Fassets\u002Fstaging\u002Fstg_orders.sql.",{"type":39,"tag":48,"props":7146,"children":7147},{},[7148],{"type":45,"value":7149},"Claude Code will use the Bruin MCP to inspect the actual column names and types in your warehouse, then write SQL that matches your real data. You can do this for each staging table below.",{"type":39,"tag":48,"props":7151,"children":7152},{},[7153],{"type":45,"value":7154},"The SQL examples below are what the files should look like. You can create them manually, or have Claude Code generate them and just review the output.",{"type":39,"tag":1023,"props":7156,"children":7157},{"type":3361},[7158,7168],{"type":39,"tag":48,"props":7159,"children":7160},{},[7161,7166],{"type":39,"tag":97,"props":7162,"children":7163},{},[7164],{"type":45,"value":7165},"Production tips from a real Shopify pipeline:",{"type":45,"value":7167}," Shopify's raw data has some quirks to handle in staging:",{"type":39,"tag":241,"props":7169,"children":7170},{},[7171,7189,7207,7247,7273],{"type":39,"tag":245,"props":7172,"children":7173},{},[7174,7179,7181,7187],{"type":39,"tag":97,"props":7175,"children":7176},{},[7177],{"type":45,"value":7178},"Test orders:",{"type":45,"value":7180}," Filter with ",{"type":39,"tag":70,"props":7182,"children":7184},{"className":7183},[],[7185],{"type":45,"value":7186},"WHERE test IS NOT TRUE",{"type":45,"value":7188}," to exclude test transactions",{"type":39,"tag":245,"props":7190,"children":7191},{},[7192,7197,7199,7205],{"type":39,"tag":97,"props":7193,"children":7194},{},[7195],{"type":45,"value":7196},"Deduplication:",{"type":45,"value":7198}," Shopify can send the same order multiple times. Add ",{"type":39,"tag":70,"props":7200,"children":7202},{"className":7201},[],[7203],{"type":45,"value":7204},"QUALIFY ROW_NUMBER() OVER (PARTITION BY id ORDER BY updated_at DESC) = 1",{"type":45,"value":7206}," to keep only the latest version",{"type":39,"tag":245,"props":7208,"children":7209},{},[7210,7215,7217,7223,7224,7230,7231,7237,7239,7245],{"type":39,"tag":97,"props":7211,"children":7212},{},[7213],{"type":45,"value":7214},"JSON fields:",{"type":45,"value":7216}," Fields like ",{"type":39,"tag":70,"props":7218,"children":7220},{"className":7219},[],[7221],{"type":45,"value":7222},"customer",{"type":45,"value":978},{"type":39,"tag":70,"props":7225,"children":7227},{"className":7226},[],[7228],{"type":45,"value":7229},"shipping_address",{"type":45,"value":1000},{"type":39,"tag":70,"props":7232,"children":7234},{"className":7233},[],[7235],{"type":45,"value":7236},"line_items",{"type":45,"value":7238}," are nested JSON. Extract them with ",{"type":39,"tag":70,"props":7240,"children":7242},{"className":7241},[],[7243],{"type":45,"value":7244},"JSON_EXTRACT_SCALAR(customer, '$.id')",{"type":45,"value":7246}," (BigQuery) or equivalent",{"type":39,"tag":245,"props":7248,"children":7249},{},[7250,7255,7257,7263,7265,7271],{"type":39,"tag":97,"props":7251,"children":7252},{},[7253],{"type":45,"value":7254},"Product IDs:",{"type":45,"value":7256}," Shopify product IDs come in GID format (",{"type":39,"tag":70,"props":7258,"children":7260},{"className":7259},[],[7261],{"type":45,"value":7262},"gid:\u002F\u002Fshopify\u002FProduct\u002F123456789",{"type":45,"value":7264},"). Parse with ",{"type":39,"tag":70,"props":7266,"children":7268},{"className":7267},[],[7269],{"type":45,"value":7270},"REPLACE(id, 'gid:\u002F\u002Fshopify\u002FProduct\u002F', '')",{"type":45,"value":7272}," in your products staging table",{"type":39,"tag":245,"props":7274,"children":7275},{},[7276,7281,7283,7289,7291,7296,7298],{"type":39,"tag":97,"props":7277,"children":7278},{},[7279],{"type":45,"value":7280},"Line items:",{"type":45,"value":7282}," For product-level analytics, create a ",{"type":39,"tag":70,"props":7284,"children":7286},{"className":7285},[],[7287],{"type":45,"value":7288},"staging.stg_order_line_items",{"type":45,"value":7290}," table that flattens the ",{"type":39,"tag":70,"props":7292,"children":7294},{"className":7293},[],[7295],{"type":45,"value":7236},{"type":45,"value":7297}," JSON array using ",{"type":39,"tag":70,"props":7299,"children":7301},{"className":7300},[],[7302],{"type":45,"value":7303},"UNNEST(JSON_EXTRACT_ARRAY(line_items))",{"type":39,"tag":85,"props":7305,"children":7307},{"id":7306},"_1-staged-orders-stg_orderssql",[7308,7310],{"type":45,"value":7309},"1) Staged orders - ",{"type":39,"tag":70,"props":7311,"children":7313},{"className":7312},[],[7314],{"type":45,"value":7315},"stg_orders.sql",{"type":39,"tag":48,"props":7317,"children":7318},{},[7319],{"type":45,"value":7320},"This is the core table: every order, enriched with Stripe payment data.",{"type":39,"tag":1023,"props":7322,"children":7324},{"type":7323},"warning",[7325],{"type":39,"tag":48,"props":7326,"children":7327},{},[7328,7330,7336,7338,7344,7346,7352,7354,7358,7360,7365,7367,7372,7374,7379,7381,7387,7389,7394,7396,7401,7402,7407],{"type":45,"value":7329},"The SQL below includes a ",{"type":39,"tag":70,"props":7331,"children":7333},{"className":7332},[],[7334],{"type":45,"value":7335},"LEFT JOIN",{"type":45,"value":7337}," to ",{"type":39,"tag":70,"props":7339,"children":7341},{"className":7340},[],[7342],{"type":45,"value":7343},"raw.stripe_charges",{"type":45,"value":7345}," and lists it in ",{"type":39,"tag":70,"props":7347,"children":7349},{"className":7348},[],[7350],{"type":45,"value":7351},"depends",{"type":45,"value":7353},". This only applies if you set up Stripe in Step 2. If you're using ",{"type":39,"tag":97,"props":7355,"children":7356},{},[7357],{"type":45,"value":3404},{"type":45,"value":7359},", remove ",{"type":39,"tag":70,"props":7361,"children":7363},{"className":7362},[],[7364],{"type":45,"value":7343},{"type":45,"value":7366}," from the ",{"type":39,"tag":70,"props":7368,"children":7370},{"className":7369},[],[7371],{"type":45,"value":7351},{"type":45,"value":7373}," list and remove the ",{"type":39,"tag":70,"props":7375,"children":7377},{"className":7376},[],[7378],{"type":45,"value":7335},{"type":45,"value":7380}," and the three ",{"type":39,"tag":70,"props":7382,"children":7384},{"className":7383},[],[7385],{"type":45,"value":7386},"stripe_*",{"type":45,"value":7388}," columns from the SELECT. The payment data is already in ",{"type":39,"tag":70,"props":7390,"children":7392},{"className":7391},[],[7393],{"type":45,"value":3435},{"type":45,"value":7395}," (the ",{"type":39,"tag":70,"props":7397,"children":7399},{"className":7398},[],[7400],{"type":45,"value":3415},{"type":45,"value":6830},{"type":39,"tag":70,"props":7403,"children":7405},{"className":7404},[],[7406],{"type":45,"value":3422},{"type":45,"value":7408}," fields). Ask Claude Code to adjust the query for you if needed.",{"type":39,"tag":48,"props":7410,"children":7411},{},[7412,7414,7423],{"type":45,"value":7413},"Create ",{"type":39,"tag":97,"props":7415,"children":7416},{},[7417],{"type":39,"tag":70,"props":7418,"children":7420},{"className":7419},[],[7421],{"type":45,"value":7422},"ecommerce\u002Fassets\u002Fstaging\u002Fstg_orders.sql",{"type":45,"value":7424},":",{"type":39,"tag":1242,"props":7426,"children":7427},{":variants":1244,"group":1245},[7428,8373,9338],{"type":39,"tag":1248,"props":7429,"children":7430},{"v-slot:clickhouse":7},[7431],{"type":39,"tag":1062,"props":7432,"children":7436},{"className":7433,"code":7434,"language":7435,"meta":7,"style":7},"language-sql shiki shiki-themes github-dark","\u002F* @bruin\nname: staging.stg_orders\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.shopify_orders\n  - raw.stripe_charges\ncolumns:\n  - name: order_id\n    type: varchar\n    checks:\n      - name: not_null\n      - name: unique\n  - name: order_date\n    type: timestamp\n    checks:\n      - name: not_null\ncustom_checks:\n  - name: has_rows\n    query: \"SELECT count(*) > 0 FROM staging.stg_orders\"\n    value: 1\n@bruin *\u002F\n\nSELECT\n    o.id AS order_id,\n    o.order_number,\n    o.email AS customer_email,\n    o.created_at AS order_date,\n    o.financial_status AS payment_status,\n    o.fulfillment_status,\n    CAST(o.total_price AS DECIMAL(12,2)) AS order_total,\n    CAST(o.subtotal_price AS DECIMAL(12,2)) AS subtotal,\n    CAST(o.total_tax AS DECIMAL(12,2)) AS tax_amount,\n    CAST(o.total_discounts AS DECIMAL(12,2)) AS discount_amount,\n    o.currency,\n    o.cancel_reason,\n    o.cancelled_at,\n    c.amount \u002F 100.0 AS stripe_charge_amount,\n    c.status AS stripe_status,\n    c.paid AS stripe_paid\nFROM raw.shopify_orders o\nLEFT JOIN raw.stripe_charges c\n    ON o.email = c.receipt_email\n    AND toDate(o.created_at) = toDate(c.created)\n","sql",[7437],{"type":39,"tag":70,"props":7438,"children":7439},{"__ignoreMap":7},[7440,7449,7457,7465,7473,7481,7489,7497,7505,7513,7522,7531,7540,7549,7558,7566,7575,7583,7591,7600,7609,7618,7627,7636,7645,7654,7682,7704,7730,7756,7781,7802,7872,7934,7996,8058,8079,8100,8121,8167,8193,8219,8247,8273,8314],{"type":39,"tag":1072,"props":7441,"children":7442},{"class":1074,"line":868},[7443],{"type":39,"tag":1072,"props":7444,"children":7446},{"style":7445},"--shiki-default:#6A737D",[7447],{"type":45,"value":7448},"\u002F* @bruin\n",{"type":39,"tag":1072,"props":7450,"children":7451},{"class":1074,"line":476},[7452],{"type":39,"tag":1072,"props":7453,"children":7454},{"style":7445},[7455],{"type":45,"value":7456},"name: staging.stg_orders\n",{"type":39,"tag":1072,"props":7458,"children":7459},{"class":1074,"line":483},[7460],{"type":39,"tag":1072,"props":7461,"children":7462},{"style":7445},[7463],{"type":45,"value":7464},"type: sql\n",{"type":39,"tag":1072,"props":7466,"children":7467},{"class":1074,"line":1626},[7468],{"type":39,"tag":1072,"props":7469,"children":7470},{"style":7445},[7471],{"type":45,"value":7472},"materialization:\n",{"type":39,"tag":1072,"props":7474,"children":7475},{"class":1074,"line":11},[7476],{"type":39,"tag":1072,"props":7477,"children":7478},{"style":7445},[7479],{"type":45,"value":7480},"  type: table\n",{"type":39,"tag":1072,"props":7482,"children":7483},{"class":1074,"line":20},[7484],{"type":39,"tag":1072,"props":7485,"children":7486},{"style":7445},[7487],{"type":45,"value":7488},"depends:\n",{"type":39,"tag":1072,"props":7490,"children":7491},{"class":1074,"line":1679},[7492],{"type":39,"tag":1072,"props":7493,"children":7494},{"style":7445},[7495],{"type":45,"value":7496},"  - raw.shopify_orders\n",{"type":39,"tag":1072,"props":7498,"children":7499},{"class":1074,"line":860},[7500],{"type":39,"tag":1072,"props":7501,"children":7502},{"style":7445},[7503],{"type":45,"value":7504},"  - raw.stripe_charges\n",{"type":39,"tag":1072,"props":7506,"children":7507},{"class":1074,"line":2907},[7508],{"type":39,"tag":1072,"props":7509,"children":7510},{"style":7445},[7511],{"type":45,"value":7512},"columns:\n",{"type":39,"tag":1072,"props":7514,"children":7516},{"class":1074,"line":7515},10,[7517],{"type":39,"tag":1072,"props":7518,"children":7519},{"style":7445},[7520],{"type":45,"value":7521},"  - name: order_id\n",{"type":39,"tag":1072,"props":7523,"children":7525},{"class":1074,"line":7524},11,[7526],{"type":39,"tag":1072,"props":7527,"children":7528},{"style":7445},[7529],{"type":45,"value":7530},"    type: varchar\n",{"type":39,"tag":1072,"props":7532,"children":7534},{"class":1074,"line":7533},12,[7535],{"type":39,"tag":1072,"props":7536,"children":7537},{"style":7445},[7538],{"type":45,"value":7539},"    checks:\n",{"type":39,"tag":1072,"props":7541,"children":7543},{"class":1074,"line":7542},13,[7544],{"type":39,"tag":1072,"props":7545,"children":7546},{"style":7445},[7547],{"type":45,"value":7548},"      - name: not_null\n",{"type":39,"tag":1072,"props":7550,"children":7552},{"class":1074,"line":7551},14,[7553],{"type":39,"tag":1072,"props":7554,"children":7555},{"style":7445},[7556],{"type":45,"value":7557},"      - name: unique\n",{"type":39,"tag":1072,"props":7559,"children":7560},{"class":1074,"line":2380},[7561],{"type":39,"tag":1072,"props":7562,"children":7563},{"style":7445},[7564],{"type":45,"value":7565},"  - name: order_date\n",{"type":39,"tag":1072,"props":7567,"children":7569},{"class":1074,"line":7568},16,[7570],{"type":39,"tag":1072,"props":7571,"children":7572},{"style":7445},[7573],{"type":45,"value":7574},"    type: timestamp\n",{"type":39,"tag":1072,"props":7576,"children":7578},{"class":1074,"line":7577},17,[7579],{"type":39,"tag":1072,"props":7580,"children":7581},{"style":7445},[7582],{"type":45,"value":7539},{"type":39,"tag":1072,"props":7584,"children":7586},{"class":1074,"line":7585},18,[7587],{"type":39,"tag":1072,"props":7588,"children":7589},{"style":7445},[7590],{"type":45,"value":7548},{"type":39,"tag":1072,"props":7592,"children":7594},{"class":1074,"line":7593},19,[7595],{"type":39,"tag":1072,"props":7596,"children":7597},{"style":7445},[7598],{"type":45,"value":7599},"custom_checks:\n",{"type":39,"tag":1072,"props":7601,"children":7603},{"class":1074,"line":7602},20,[7604],{"type":39,"tag":1072,"props":7605,"children":7606},{"style":7445},[7607],{"type":45,"value":7608},"  - name: has_rows\n",{"type":39,"tag":1072,"props":7610,"children":7612},{"class":1074,"line":7611},21,[7613],{"type":39,"tag":1072,"props":7614,"children":7615},{"style":7445},[7616],{"type":45,"value":7617},"    query: \"SELECT count(*) > 0 FROM staging.stg_orders\"\n",{"type":39,"tag":1072,"props":7619,"children":7621},{"class":1074,"line":7620},22,[7622],{"type":39,"tag":1072,"props":7623,"children":7624},{"style":7445},[7625],{"type":45,"value":7626},"    value: 1\n",{"type":39,"tag":1072,"props":7628,"children":7630},{"class":1074,"line":7629},23,[7631],{"type":39,"tag":1072,"props":7632,"children":7633},{"style":7445},[7634],{"type":45,"value":7635},"@bruin *\u002F\n",{"type":39,"tag":1072,"props":7637,"children":7639},{"class":1074,"line":7638},24,[7640],{"type":39,"tag":1072,"props":7641,"children":7642},{"emptyLinePlaceholder":19},[7643],{"type":45,"value":7644},"\n",{"type":39,"tag":1072,"props":7646,"children":7648},{"class":1074,"line":7647},25,[7649],{"type":39,"tag":1072,"props":7650,"children":7651},{"style":1195},[7652],{"type":45,"value":7653},"SELECT\n",{"type":39,"tag":1072,"props":7655,"children":7657},{"class":1074,"line":7656},26,[7658,7663,7667,7672,7677],{"type":39,"tag":1072,"props":7659,"children":7660},{"style":1096},[7661],{"type":45,"value":7662},"    o",{"type":39,"tag":1072,"props":7664,"children":7665},{"style":1090},[7666],{"type":45,"value":934},{"type":39,"tag":1072,"props":7668,"children":7669},{"style":1096},[7670],{"type":45,"value":7671},"id",{"type":39,"tag":1072,"props":7673,"children":7674},{"style":1195},[7675],{"type":45,"value":7676}," AS",{"type":39,"tag":1072,"props":7678,"children":7679},{"style":1090},[7680],{"type":45,"value":7681}," order_id,\n",{"type":39,"tag":1072,"props":7683,"children":7685},{"class":1074,"line":7684},27,[7686,7690,7694,7699],{"type":39,"tag":1072,"props":7687,"children":7688},{"style":1096},[7689],{"type":45,"value":7662},{"type":39,"tag":1072,"props":7691,"children":7692},{"style":1090},[7693],{"type":45,"value":934},{"type":39,"tag":1072,"props":7695,"children":7696},{"style":1096},[7697],{"type":45,"value":7698},"order_number",{"type":39,"tag":1072,"props":7700,"children":7701},{"style":1090},[7702],{"type":45,"value":7703},",\n",{"type":39,"tag":1072,"props":7705,"children":7707},{"class":1074,"line":7706},28,[7708,7712,7716,7721,7725],{"type":39,"tag":1072,"props":7709,"children":7710},{"style":1096},[7711],{"type":45,"value":7662},{"type":39,"tag":1072,"props":7713,"children":7714},{"style":1090},[7715],{"type":45,"value":934},{"type":39,"tag":1072,"props":7717,"children":7718},{"style":1096},[7719],{"type":45,"value":7720},"email",{"type":39,"tag":1072,"props":7722,"children":7723},{"style":1195},[7724],{"type":45,"value":7676},{"type":39,"tag":1072,"props":7726,"children":7727},{"style":1090},[7728],{"type":45,"value":7729}," customer_email,\n",{"type":39,"tag":1072,"props":7731,"children":7733},{"class":1074,"line":7732},29,[7734,7738,7742,7747,7751],{"type":39,"tag":1072,"props":7735,"children":7736},{"style":1096},[7737],{"type":45,"value":7662},{"type":39,"tag":1072,"props":7739,"children":7740},{"style":1090},[7741],{"type":45,"value":934},{"type":39,"tag":1072,"props":7743,"children":7744},{"style":1096},[7745],{"type":45,"value":7746},"created_at",{"type":39,"tag":1072,"props":7748,"children":7749},{"style":1195},[7750],{"type":45,"value":7676},{"type":39,"tag":1072,"props":7752,"children":7753},{"style":1090},[7754],{"type":45,"value":7755}," order_date,\n",{"type":39,"tag":1072,"props":7757,"children":7759},{"class":1074,"line":7758},30,[7760,7764,7768,7772,7776],{"type":39,"tag":1072,"props":7761,"children":7762},{"style":1096},[7763],{"type":45,"value":7662},{"type":39,"tag":1072,"props":7765,"children":7766},{"style":1090},[7767],{"type":45,"value":934},{"type":39,"tag":1072,"props":7769,"children":7770},{"style":1096},[7771],{"type":45,"value":3415},{"type":39,"tag":1072,"props":7773,"children":7774},{"style":1195},[7775],{"type":45,"value":7676},{"type":39,"tag":1072,"props":7777,"children":7778},{"style":1090},[7779],{"type":45,"value":7780}," payment_status,\n",{"type":39,"tag":1072,"props":7782,"children":7784},{"class":1074,"line":7783},31,[7785,7789,7793,7798],{"type":39,"tag":1072,"props":7786,"children":7787},{"style":1096},[7788],{"type":45,"value":7662},{"type":39,"tag":1072,"props":7790,"children":7791},{"style":1090},[7792],{"type":45,"value":934},{"type":39,"tag":1072,"props":7794,"children":7795},{"style":1096},[7796],{"type":45,"value":7797},"fulfillment_status",{"type":39,"tag":1072,"props":7799,"children":7800},{"style":1090},[7801],{"type":45,"value":7703},{"type":39,"tag":1072,"props":7803,"children":7805},{"class":1074,"line":7804},32,[7806,7811,7816,7821,7825,7829,7833,7838,7842,7847,7852,7857,7862,7867],{"type":39,"tag":1072,"props":7807,"children":7808},{"style":1096},[7809],{"type":45,"value":7810},"    CAST",{"type":39,"tag":1072,"props":7812,"children":7813},{"style":1090},[7814],{"type":45,"value":7815},"(",{"type":39,"tag":1072,"props":7817,"children":7818},{"style":1096},[7819],{"type":45,"value":7820},"o",{"type":39,"tag":1072,"props":7822,"children":7823},{"style":1090},[7824],{"type":45,"value":934},{"type":39,"tag":1072,"props":7826,"children":7827},{"style":1096},[7828],{"type":45,"value":3422},{"type":39,"tag":1072,"props":7830,"children":7831},{"style":1195},[7832],{"type":45,"value":7676},{"type":39,"tag":1072,"props":7834,"children":7835},{"style":1195},[7836],{"type":45,"value":7837}," DECIMAL",{"type":39,"tag":1072,"props":7839,"children":7840},{"style":1090},[7841],{"type":45,"value":7815},{"type":39,"tag":1072,"props":7843,"children":7844},{"style":1096},[7845],{"type":45,"value":7846},"12",{"type":39,"tag":1072,"props":7848,"children":7849},{"style":1090},[7850],{"type":45,"value":7851},",",{"type":39,"tag":1072,"props":7853,"children":7854},{"style":1096},[7855],{"type":45,"value":7856},"2",{"type":39,"tag":1072,"props":7858,"children":7859},{"style":1090},[7860],{"type":45,"value":7861},")) ",{"type":39,"tag":1072,"props":7863,"children":7864},{"style":1195},[7865],{"type":45,"value":7866},"AS",{"type":39,"tag":1072,"props":7868,"children":7869},{"style":1090},[7870],{"type":45,"value":7871}," order_total,\n",{"type":39,"tag":1072,"props":7873,"children":7875},{"class":1074,"line":7874},33,[7876,7880,7884,7888,7892,7897,7901,7905,7909,7913,7917,7921,7925,7929],{"type":39,"tag":1072,"props":7877,"children":7878},{"style":1096},[7879],{"type":45,"value":7810},{"type":39,"tag":1072,"props":7881,"children":7882},{"style":1090},[7883],{"type":45,"value":7815},{"type":39,"tag":1072,"props":7885,"children":7886},{"style":1096},[7887],{"type":45,"value":7820},{"type":39,"tag":1072,"props":7889,"children":7890},{"style":1090},[7891],{"type":45,"value":934},{"type":39,"tag":1072,"props":7893,"children":7894},{"style":1096},[7895],{"type":45,"value":7896},"subtotal_price",{"type":39,"tag":1072,"props":7898,"children":7899},{"style":1195},[7900],{"type":45,"value":7676},{"type":39,"tag":1072,"props":7902,"children":7903},{"style":1195},[7904],{"type":45,"value":7837},{"type":39,"tag":1072,"props":7906,"children":7907},{"style":1090},[7908],{"type":45,"value":7815},{"type":39,"tag":1072,"props":7910,"children":7911},{"style":1096},[7912],{"type":45,"value":7846},{"type":39,"tag":1072,"props":7914,"children":7915},{"style":1090},[7916],{"type":45,"value":7851},{"type":39,"tag":1072,"props":7918,"children":7919},{"style":1096},[7920],{"type":45,"value":7856},{"type":39,"tag":1072,"props":7922,"children":7923},{"style":1090},[7924],{"type":45,"value":7861},{"type":39,"tag":1072,"props":7926,"children":7927},{"style":1195},[7928],{"type":45,"value":7866},{"type":39,"tag":1072,"props":7930,"children":7931},{"style":1090},[7932],{"type":45,"value":7933}," subtotal,\n",{"type":39,"tag":1072,"props":7935,"children":7937},{"class":1074,"line":7936},34,[7938,7942,7946,7950,7954,7959,7963,7967,7971,7975,7979,7983,7987,7991],{"type":39,"tag":1072,"props":7939,"children":7940},{"style":1096},[7941],{"type":45,"value":7810},{"type":39,"tag":1072,"props":7943,"children":7944},{"style":1090},[7945],{"type":45,"value":7815},{"type":39,"tag":1072,"props":7947,"children":7948},{"style":1096},[7949],{"type":45,"value":7820},{"type":39,"tag":1072,"props":7951,"children":7952},{"style":1090},[7953],{"type":45,"value":934},{"type":39,"tag":1072,"props":7955,"children":7956},{"style":1096},[7957],{"type":45,"value":7958},"total_tax",{"type":39,"tag":1072,"props":7960,"children":7961},{"style":1195},[7962],{"type":45,"value":7676},{"type":39,"tag":1072,"props":7964,"children":7965},{"style":1195},[7966],{"type":45,"value":7837},{"type":39,"tag":1072,"props":7968,"children":7969},{"style":1090},[7970],{"type":45,"value":7815},{"type":39,"tag":1072,"props":7972,"children":7973},{"style":1096},[7974],{"type":45,"value":7846},{"type":39,"tag":1072,"props":7976,"children":7977},{"style":1090},[7978],{"type":45,"value":7851},{"type":39,"tag":1072,"props":7980,"children":7981},{"style":1096},[7982],{"type":45,"value":7856},{"type":39,"tag":1072,"props":7984,"children":7985},{"style":1090},[7986],{"type":45,"value":7861},{"type":39,"tag":1072,"props":7988,"children":7989},{"style":1195},[7990],{"type":45,"value":7866},{"type":39,"tag":1072,"props":7992,"children":7993},{"style":1090},[7994],{"type":45,"value":7995}," tax_amount,\n",{"type":39,"tag":1072,"props":7997,"children":7999},{"class":1074,"line":7998},35,[8000,8004,8008,8012,8016,8021,8025,8029,8033,8037,8041,8045,8049,8053],{"type":39,"tag":1072,"props":8001,"children":8002},{"style":1096},[8003],{"type":45,"value":7810},{"type":39,"tag":1072,"props":8005,"children":8006},{"style":1090},[8007],{"type":45,"value":7815},{"type":39,"tag":1072,"props":8009,"children":8010},{"style":1096},[8011],{"type":45,"value":7820},{"type":39,"tag":1072,"props":8013,"children":8014},{"style":1090},[8015],{"type":45,"value":934},{"type":39,"tag":1072,"props":8017,"children":8018},{"style":1096},[8019],{"type":45,"value":8020},"total_discounts",{"type":39,"tag":1072,"props":8022,"children":8023},{"style":1195},[8024],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8026,"children":8027},{"style":1195},[8028],{"type":45,"value":7837},{"type":39,"tag":1072,"props":8030,"children":8031},{"style":1090},[8032],{"type":45,"value":7815},{"type":39,"tag":1072,"props":8034,"children":8035},{"style":1096},[8036],{"type":45,"value":7846},{"type":39,"tag":1072,"props":8038,"children":8039},{"style":1090},[8040],{"type":45,"value":7851},{"type":39,"tag":1072,"props":8042,"children":8043},{"style":1096},[8044],{"type":45,"value":7856},{"type":39,"tag":1072,"props":8046,"children":8047},{"style":1090},[8048],{"type":45,"value":7861},{"type":39,"tag":1072,"props":8050,"children":8051},{"style":1195},[8052],{"type":45,"value":7866},{"type":39,"tag":1072,"props":8054,"children":8055},{"style":1090},[8056],{"type":45,"value":8057}," discount_amount,\n",{"type":39,"tag":1072,"props":8059,"children":8061},{"class":1074,"line":8060},36,[8062,8066,8070,8075],{"type":39,"tag":1072,"props":8063,"children":8064},{"style":1096},[8065],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8067,"children":8068},{"style":1090},[8069],{"type":45,"value":934},{"type":39,"tag":1072,"props":8071,"children":8072},{"style":1096},[8073],{"type":45,"value":8074},"currency",{"type":39,"tag":1072,"props":8076,"children":8077},{"style":1090},[8078],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8080,"children":8082},{"class":1074,"line":8081},37,[8083,8087,8091,8096],{"type":39,"tag":1072,"props":8084,"children":8085},{"style":1096},[8086],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8088,"children":8089},{"style":1090},[8090],{"type":45,"value":934},{"type":39,"tag":1072,"props":8092,"children":8093},{"style":1096},[8094],{"type":45,"value":8095},"cancel_reason",{"type":39,"tag":1072,"props":8097,"children":8098},{"style":1090},[8099],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8101,"children":8103},{"class":1074,"line":8102},38,[8104,8108,8112,8117],{"type":39,"tag":1072,"props":8105,"children":8106},{"style":1096},[8107],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8109,"children":8110},{"style":1090},[8111],{"type":45,"value":934},{"type":39,"tag":1072,"props":8113,"children":8114},{"style":1096},[8115],{"type":45,"value":8116},"cancelled_at",{"type":39,"tag":1072,"props":8118,"children":8119},{"style":1090},[8120],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8122,"children":8124},{"class":1074,"line":8123},39,[8125,8130,8134,8139,8144,8149,8153,8158,8162],{"type":39,"tag":1072,"props":8126,"children":8127},{"style":1096},[8128],{"type":45,"value":8129},"    c",{"type":39,"tag":1072,"props":8131,"children":8132},{"style":1090},[8133],{"type":45,"value":934},{"type":39,"tag":1072,"props":8135,"children":8136},{"style":1096},[8137],{"type":45,"value":8138},"amount",{"type":39,"tag":1072,"props":8140,"children":8141},{"style":1195},[8142],{"type":45,"value":8143}," \u002F",{"type":39,"tag":1072,"props":8145,"children":8146},{"style":1096},[8147],{"type":45,"value":8148}," 100",{"type":39,"tag":1072,"props":8150,"children":8151},{"style":1090},[8152],{"type":45,"value":934},{"type":39,"tag":1072,"props":8154,"children":8155},{"style":1096},[8156],{"type":45,"value":8157},"0",{"type":39,"tag":1072,"props":8159,"children":8160},{"style":1195},[8161],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8163,"children":8164},{"style":1090},[8165],{"type":45,"value":8166}," stripe_charge_amount,\n",{"type":39,"tag":1072,"props":8168,"children":8170},{"class":1074,"line":8169},40,[8171,8175,8179,8184,8188],{"type":39,"tag":1072,"props":8172,"children":8173},{"style":1096},[8174],{"type":45,"value":8129},{"type":39,"tag":1072,"props":8176,"children":8177},{"style":1090},[8178],{"type":45,"value":934},{"type":39,"tag":1072,"props":8180,"children":8181},{"style":1096},[8182],{"type":45,"value":8183},"status",{"type":39,"tag":1072,"props":8185,"children":8186},{"style":1195},[8187],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8189,"children":8190},{"style":1090},[8191],{"type":45,"value":8192}," stripe_status,\n",{"type":39,"tag":1072,"props":8194,"children":8196},{"class":1074,"line":8195},41,[8197,8201,8205,8210,8214],{"type":39,"tag":1072,"props":8198,"children":8199},{"style":1096},[8200],{"type":45,"value":8129},{"type":39,"tag":1072,"props":8202,"children":8203},{"style":1090},[8204],{"type":45,"value":934},{"type":39,"tag":1072,"props":8206,"children":8207},{"style":1096},[8208],{"type":45,"value":8209},"paid",{"type":39,"tag":1072,"props":8211,"children":8212},{"style":1195},[8213],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8215,"children":8216},{"style":1090},[8217],{"type":45,"value":8218}," stripe_paid\n",{"type":39,"tag":1072,"props":8220,"children":8222},{"class":1074,"line":8221},42,[8223,8228,8233,8237,8242],{"type":39,"tag":1072,"props":8224,"children":8225},{"style":1195},[8226],{"type":45,"value":8227},"FROM",{"type":39,"tag":1072,"props":8229,"children":8230},{"style":1096},[8231],{"type":45,"value":8232}," raw",{"type":39,"tag":1072,"props":8234,"children":8235},{"style":1090},[8236],{"type":45,"value":934},{"type":39,"tag":1072,"props":8238,"children":8239},{"style":1096},[8240],{"type":45,"value":8241},"shopify_orders",{"type":39,"tag":1072,"props":8243,"children":8244},{"style":1090},[8245],{"type":45,"value":8246}," o\n",{"type":39,"tag":1072,"props":8248,"children":8250},{"class":1074,"line":8249},43,[8251,8255,8259,8263,8268],{"type":39,"tag":1072,"props":8252,"children":8253},{"style":1195},[8254],{"type":45,"value":7335},{"type":39,"tag":1072,"props":8256,"children":8257},{"style":1096},[8258],{"type":45,"value":8232},{"type":39,"tag":1072,"props":8260,"children":8261},{"style":1090},[8262],{"type":45,"value":934},{"type":39,"tag":1072,"props":8264,"children":8265},{"style":1096},[8266],{"type":45,"value":8267},"stripe_charges",{"type":39,"tag":1072,"props":8269,"children":8270},{"style":1090},[8271],{"type":45,"value":8272}," c\n",{"type":39,"tag":1072,"props":8274,"children":8276},{"class":1074,"line":8275},44,[8277,8282,8287,8291,8295,8300,8305,8309],{"type":39,"tag":1072,"props":8278,"children":8279},{"style":1195},[8280],{"type":45,"value":8281},"    ON",{"type":39,"tag":1072,"props":8283,"children":8284},{"style":1096},[8285],{"type":45,"value":8286}," o",{"type":39,"tag":1072,"props":8288,"children":8289},{"style":1090},[8290],{"type":45,"value":934},{"type":39,"tag":1072,"props":8292,"children":8293},{"style":1096},[8294],{"type":45,"value":7720},{"type":39,"tag":1072,"props":8296,"children":8297},{"style":1195},[8298],{"type":45,"value":8299}," =",{"type":39,"tag":1072,"props":8301,"children":8302},{"style":1096},[8303],{"type":45,"value":8304}," c",{"type":39,"tag":1072,"props":8306,"children":8307},{"style":1090},[8308],{"type":45,"value":934},{"type":39,"tag":1072,"props":8310,"children":8311},{"style":1096},[8312],{"type":45,"value":8313},"receipt_email\n",{"type":39,"tag":1072,"props":8315,"children":8317},{"class":1074,"line":8316},45,[8318,8323,8328,8332,8336,8340,8345,8350,8354,8359,8363,8368],{"type":39,"tag":1072,"props":8319,"children":8320},{"style":1195},[8321],{"type":45,"value":8322},"    AND",{"type":39,"tag":1072,"props":8324,"children":8325},{"style":1090},[8326],{"type":45,"value":8327}," toDate(",{"type":39,"tag":1072,"props":8329,"children":8330},{"style":1096},[8331],{"type":45,"value":7820},{"type":39,"tag":1072,"props":8333,"children":8334},{"style":1090},[8335],{"type":45,"value":934},{"type":39,"tag":1072,"props":8337,"children":8338},{"style":1096},[8339],{"type":45,"value":7746},{"type":39,"tag":1072,"props":8341,"children":8342},{"style":1090},[8343],{"type":45,"value":8344},") ",{"type":39,"tag":1072,"props":8346,"children":8347},{"style":1195},[8348],{"type":45,"value":8349},"=",{"type":39,"tag":1072,"props":8351,"children":8352},{"style":1090},[8353],{"type":45,"value":8327},{"type":39,"tag":1072,"props":8355,"children":8356},{"style":1096},[8357],{"type":45,"value":8358},"c",{"type":39,"tag":1072,"props":8360,"children":8361},{"style":1090},[8362],{"type":45,"value":934},{"type":39,"tag":1072,"props":8364,"children":8365},{"style":1096},[8366],{"type":45,"value":8367},"created",{"type":39,"tag":1072,"props":8369,"children":8370},{"style":1090},[8371],{"type":45,"value":8372},")\n",{"type":39,"tag":1248,"props":8374,"children":8375},{"v-slot:bigquery":7},[8376],{"type":39,"tag":1062,"props":8377,"children":8379},{"className":7433,"code":8378,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_orders\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.shopify_orders\n  - raw.stripe_charges\ncolumns:\n  - name: order_id\n    type: varchar\n    checks:\n      - name: not_null\n      - name: unique\n  - name: order_date\n    type: timestamp\n    checks:\n      - name: not_null\ncustom_checks:\n  - name: has_rows\n    query: \"SELECT count(*) > 0 FROM staging.stg_orders\"\n    value: 1\n@bruin *\u002F\n\nSELECT\n    o.id AS order_id,\n    o.order_number,\n    o.email AS customer_email,\n    o.created_at AS order_date,\n    o.financial_status AS payment_status,\n    o.fulfillment_status,\n    SAFE_CAST(o.total_price AS DECIMAL(12,2)) AS order_total,\n    SAFE_CAST(o.subtotal_price AS DECIMAL(12,2)) AS subtotal,\n    SAFE_CAST(o.total_tax AS DECIMAL(12,2)) AS tax_amount,\n    SAFE_CAST(o.total_discounts AS DECIMAL(12,2)) AS discount_amount,\n    o.currency,\n    o.cancel_reason,\n    o.cancelled_at,\n    c.amount \u002F 100.0 AS stripe_charge_amount,\n    c.status AS stripe_status,\n    c.paid AS stripe_paid\nFROM raw.shopify_orders o\nLEFT JOIN raw.stripe_charges c\n    ON o.email = c.receipt_email\n    AND DATE(o.created_at) = DATE(c.created)\nWHERE o.test IS NOT TRUE AND o.financial_status IS NOT NULL\nQUALIFY ROW_NUMBER() OVER (PARTITION BY o.id ORDER BY o.updated_at DESC) = 1\n",[8380],{"type":39,"tag":70,"props":8381,"children":8382},{"__ignoreMap":7},[8383,8390,8397,8404,8411,8418,8425,8432,8439,8446,8453,8460,8467,8474,8481,8488,8495,8502,8509,8516,8523,8530,8537,8544,8551,8558,8581,8600,8623,8646,8669,8688,8744,8799,8854,8909,8928,8947,8966,9005,9028,9051,9074,9097,9132,9192,9251],{"type":39,"tag":1072,"props":8384,"children":8385},{"class":1074,"line":868},[8386],{"type":39,"tag":1072,"props":8387,"children":8388},{"style":7445},[8389],{"type":45,"value":7448},{"type":39,"tag":1072,"props":8391,"children":8392},{"class":1074,"line":476},[8393],{"type":39,"tag":1072,"props":8394,"children":8395},{"style":7445},[8396],{"type":45,"value":7456},{"type":39,"tag":1072,"props":8398,"children":8399},{"class":1074,"line":483},[8400],{"type":39,"tag":1072,"props":8401,"children":8402},{"style":7445},[8403],{"type":45,"value":7464},{"type":39,"tag":1072,"props":8405,"children":8406},{"class":1074,"line":1626},[8407],{"type":39,"tag":1072,"props":8408,"children":8409},{"style":7445},[8410],{"type":45,"value":7472},{"type":39,"tag":1072,"props":8412,"children":8413},{"class":1074,"line":11},[8414],{"type":39,"tag":1072,"props":8415,"children":8416},{"style":7445},[8417],{"type":45,"value":7480},{"type":39,"tag":1072,"props":8419,"children":8420},{"class":1074,"line":20},[8421],{"type":39,"tag":1072,"props":8422,"children":8423},{"style":7445},[8424],{"type":45,"value":7488},{"type":39,"tag":1072,"props":8426,"children":8427},{"class":1074,"line":1679},[8428],{"type":39,"tag":1072,"props":8429,"children":8430},{"style":7445},[8431],{"type":45,"value":7496},{"type":39,"tag":1072,"props":8433,"children":8434},{"class":1074,"line":860},[8435],{"type":39,"tag":1072,"props":8436,"children":8437},{"style":7445},[8438],{"type":45,"value":7504},{"type":39,"tag":1072,"props":8440,"children":8441},{"class":1074,"line":2907},[8442],{"type":39,"tag":1072,"props":8443,"children":8444},{"style":7445},[8445],{"type":45,"value":7512},{"type":39,"tag":1072,"props":8447,"children":8448},{"class":1074,"line":7515},[8449],{"type":39,"tag":1072,"props":8450,"children":8451},{"style":7445},[8452],{"type":45,"value":7521},{"type":39,"tag":1072,"props":8454,"children":8455},{"class":1074,"line":7524},[8456],{"type":39,"tag":1072,"props":8457,"children":8458},{"style":7445},[8459],{"type":45,"value":7530},{"type":39,"tag":1072,"props":8461,"children":8462},{"class":1074,"line":7533},[8463],{"type":39,"tag":1072,"props":8464,"children":8465},{"style":7445},[8466],{"type":45,"value":7539},{"type":39,"tag":1072,"props":8468,"children":8469},{"class":1074,"line":7542},[8470],{"type":39,"tag":1072,"props":8471,"children":8472},{"style":7445},[8473],{"type":45,"value":7548},{"type":39,"tag":1072,"props":8475,"children":8476},{"class":1074,"line":7551},[8477],{"type":39,"tag":1072,"props":8478,"children":8479},{"style":7445},[8480],{"type":45,"value":7557},{"type":39,"tag":1072,"props":8482,"children":8483},{"class":1074,"line":2380},[8484],{"type":39,"tag":1072,"props":8485,"children":8486},{"style":7445},[8487],{"type":45,"value":7565},{"type":39,"tag":1072,"props":8489,"children":8490},{"class":1074,"line":7568},[8491],{"type":39,"tag":1072,"props":8492,"children":8493},{"style":7445},[8494],{"type":45,"value":7574},{"type":39,"tag":1072,"props":8496,"children":8497},{"class":1074,"line":7577},[8498],{"type":39,"tag":1072,"props":8499,"children":8500},{"style":7445},[8501],{"type":45,"value":7539},{"type":39,"tag":1072,"props":8503,"children":8504},{"class":1074,"line":7585},[8505],{"type":39,"tag":1072,"props":8506,"children":8507},{"style":7445},[8508],{"type":45,"value":7548},{"type":39,"tag":1072,"props":8510,"children":8511},{"class":1074,"line":7593},[8512],{"type":39,"tag":1072,"props":8513,"children":8514},{"style":7445},[8515],{"type":45,"value":7599},{"type":39,"tag":1072,"props":8517,"children":8518},{"class":1074,"line":7602},[8519],{"type":39,"tag":1072,"props":8520,"children":8521},{"style":7445},[8522],{"type":45,"value":7608},{"type":39,"tag":1072,"props":8524,"children":8525},{"class":1074,"line":7611},[8526],{"type":39,"tag":1072,"props":8527,"children":8528},{"style":7445},[8529],{"type":45,"value":7617},{"type":39,"tag":1072,"props":8531,"children":8532},{"class":1074,"line":7620},[8533],{"type":39,"tag":1072,"props":8534,"children":8535},{"style":7445},[8536],{"type":45,"value":7626},{"type":39,"tag":1072,"props":8538,"children":8539},{"class":1074,"line":7629},[8540],{"type":39,"tag":1072,"props":8541,"children":8542},{"style":7445},[8543],{"type":45,"value":7635},{"type":39,"tag":1072,"props":8545,"children":8546},{"class":1074,"line":7638},[8547],{"type":39,"tag":1072,"props":8548,"children":8549},{"emptyLinePlaceholder":19},[8550],{"type":45,"value":7644},{"type":39,"tag":1072,"props":8552,"children":8553},{"class":1074,"line":7647},[8554],{"type":39,"tag":1072,"props":8555,"children":8556},{"style":1195},[8557],{"type":45,"value":7653},{"type":39,"tag":1072,"props":8559,"children":8560},{"class":1074,"line":7656},[8561,8565,8569,8573,8577],{"type":39,"tag":1072,"props":8562,"children":8563},{"style":1096},[8564],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8566,"children":8567},{"style":1090},[8568],{"type":45,"value":934},{"type":39,"tag":1072,"props":8570,"children":8571},{"style":1096},[8572],{"type":45,"value":7671},{"type":39,"tag":1072,"props":8574,"children":8575},{"style":1195},[8576],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8578,"children":8579},{"style":1090},[8580],{"type":45,"value":7681},{"type":39,"tag":1072,"props":8582,"children":8583},{"class":1074,"line":7684},[8584,8588,8592,8596],{"type":39,"tag":1072,"props":8585,"children":8586},{"style":1096},[8587],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8589,"children":8590},{"style":1090},[8591],{"type":45,"value":934},{"type":39,"tag":1072,"props":8593,"children":8594},{"style":1096},[8595],{"type":45,"value":7698},{"type":39,"tag":1072,"props":8597,"children":8598},{"style":1090},[8599],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8601,"children":8602},{"class":1074,"line":7706},[8603,8607,8611,8615,8619],{"type":39,"tag":1072,"props":8604,"children":8605},{"style":1096},[8606],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8608,"children":8609},{"style":1090},[8610],{"type":45,"value":934},{"type":39,"tag":1072,"props":8612,"children":8613},{"style":1096},[8614],{"type":45,"value":7720},{"type":39,"tag":1072,"props":8616,"children":8617},{"style":1195},[8618],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8620,"children":8621},{"style":1090},[8622],{"type":45,"value":7729},{"type":39,"tag":1072,"props":8624,"children":8625},{"class":1074,"line":7732},[8626,8630,8634,8638,8642],{"type":39,"tag":1072,"props":8627,"children":8628},{"style":1096},[8629],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8631,"children":8632},{"style":1090},[8633],{"type":45,"value":934},{"type":39,"tag":1072,"props":8635,"children":8636},{"style":1096},[8637],{"type":45,"value":7746},{"type":39,"tag":1072,"props":8639,"children":8640},{"style":1195},[8641],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8643,"children":8644},{"style":1090},[8645],{"type":45,"value":7755},{"type":39,"tag":1072,"props":8647,"children":8648},{"class":1074,"line":7758},[8649,8653,8657,8661,8665],{"type":39,"tag":1072,"props":8650,"children":8651},{"style":1096},[8652],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8654,"children":8655},{"style":1090},[8656],{"type":45,"value":934},{"type":39,"tag":1072,"props":8658,"children":8659},{"style":1096},[8660],{"type":45,"value":3415},{"type":39,"tag":1072,"props":8662,"children":8663},{"style":1195},[8664],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8666,"children":8667},{"style":1090},[8668],{"type":45,"value":7780},{"type":39,"tag":1072,"props":8670,"children":8671},{"class":1074,"line":7783},[8672,8676,8680,8684],{"type":39,"tag":1072,"props":8673,"children":8674},{"style":1096},[8675],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8677,"children":8678},{"style":1090},[8679],{"type":45,"value":934},{"type":39,"tag":1072,"props":8681,"children":8682},{"style":1096},[8683],{"type":45,"value":7797},{"type":39,"tag":1072,"props":8685,"children":8686},{"style":1090},[8687],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8689,"children":8690},{"class":1074,"line":7804},[8691,8696,8700,8704,8708,8712,8716,8720,8724,8728,8732,8736,8740],{"type":39,"tag":1072,"props":8692,"children":8693},{"style":1090},[8694],{"type":45,"value":8695},"    SAFE_CAST(",{"type":39,"tag":1072,"props":8697,"children":8698},{"style":1096},[8699],{"type":45,"value":7820},{"type":39,"tag":1072,"props":8701,"children":8702},{"style":1090},[8703],{"type":45,"value":934},{"type":39,"tag":1072,"props":8705,"children":8706},{"style":1096},[8707],{"type":45,"value":3422},{"type":39,"tag":1072,"props":8709,"children":8710},{"style":1195},[8711],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8713,"children":8714},{"style":1195},[8715],{"type":45,"value":7837},{"type":39,"tag":1072,"props":8717,"children":8718},{"style":1090},[8719],{"type":45,"value":7815},{"type":39,"tag":1072,"props":8721,"children":8722},{"style":1096},[8723],{"type":45,"value":7846},{"type":39,"tag":1072,"props":8725,"children":8726},{"style":1090},[8727],{"type":45,"value":7851},{"type":39,"tag":1072,"props":8729,"children":8730},{"style":1096},[8731],{"type":45,"value":7856},{"type":39,"tag":1072,"props":8733,"children":8734},{"style":1090},[8735],{"type":45,"value":7861},{"type":39,"tag":1072,"props":8737,"children":8738},{"style":1195},[8739],{"type":45,"value":7866},{"type":39,"tag":1072,"props":8741,"children":8742},{"style":1090},[8743],{"type":45,"value":7871},{"type":39,"tag":1072,"props":8745,"children":8746},{"class":1074,"line":7874},[8747,8751,8755,8759,8763,8767,8771,8775,8779,8783,8787,8791,8795],{"type":39,"tag":1072,"props":8748,"children":8749},{"style":1090},[8750],{"type":45,"value":8695},{"type":39,"tag":1072,"props":8752,"children":8753},{"style":1096},[8754],{"type":45,"value":7820},{"type":39,"tag":1072,"props":8756,"children":8757},{"style":1090},[8758],{"type":45,"value":934},{"type":39,"tag":1072,"props":8760,"children":8761},{"style":1096},[8762],{"type":45,"value":7896},{"type":39,"tag":1072,"props":8764,"children":8765},{"style":1195},[8766],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8768,"children":8769},{"style":1195},[8770],{"type":45,"value":7837},{"type":39,"tag":1072,"props":8772,"children":8773},{"style":1090},[8774],{"type":45,"value":7815},{"type":39,"tag":1072,"props":8776,"children":8777},{"style":1096},[8778],{"type":45,"value":7846},{"type":39,"tag":1072,"props":8780,"children":8781},{"style":1090},[8782],{"type":45,"value":7851},{"type":39,"tag":1072,"props":8784,"children":8785},{"style":1096},[8786],{"type":45,"value":7856},{"type":39,"tag":1072,"props":8788,"children":8789},{"style":1090},[8790],{"type":45,"value":7861},{"type":39,"tag":1072,"props":8792,"children":8793},{"style":1195},[8794],{"type":45,"value":7866},{"type":39,"tag":1072,"props":8796,"children":8797},{"style":1090},[8798],{"type":45,"value":7933},{"type":39,"tag":1072,"props":8800,"children":8801},{"class":1074,"line":7936},[8802,8806,8810,8814,8818,8822,8826,8830,8834,8838,8842,8846,8850],{"type":39,"tag":1072,"props":8803,"children":8804},{"style":1090},[8805],{"type":45,"value":8695},{"type":39,"tag":1072,"props":8807,"children":8808},{"style":1096},[8809],{"type":45,"value":7820},{"type":39,"tag":1072,"props":8811,"children":8812},{"style":1090},[8813],{"type":45,"value":934},{"type":39,"tag":1072,"props":8815,"children":8816},{"style":1096},[8817],{"type":45,"value":7958},{"type":39,"tag":1072,"props":8819,"children":8820},{"style":1195},[8821],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8823,"children":8824},{"style":1195},[8825],{"type":45,"value":7837},{"type":39,"tag":1072,"props":8827,"children":8828},{"style":1090},[8829],{"type":45,"value":7815},{"type":39,"tag":1072,"props":8831,"children":8832},{"style":1096},[8833],{"type":45,"value":7846},{"type":39,"tag":1072,"props":8835,"children":8836},{"style":1090},[8837],{"type":45,"value":7851},{"type":39,"tag":1072,"props":8839,"children":8840},{"style":1096},[8841],{"type":45,"value":7856},{"type":39,"tag":1072,"props":8843,"children":8844},{"style":1090},[8845],{"type":45,"value":7861},{"type":39,"tag":1072,"props":8847,"children":8848},{"style":1195},[8849],{"type":45,"value":7866},{"type":39,"tag":1072,"props":8851,"children":8852},{"style":1090},[8853],{"type":45,"value":7995},{"type":39,"tag":1072,"props":8855,"children":8856},{"class":1074,"line":7998},[8857,8861,8865,8869,8873,8877,8881,8885,8889,8893,8897,8901,8905],{"type":39,"tag":1072,"props":8858,"children":8859},{"style":1090},[8860],{"type":45,"value":8695},{"type":39,"tag":1072,"props":8862,"children":8863},{"style":1096},[8864],{"type":45,"value":7820},{"type":39,"tag":1072,"props":8866,"children":8867},{"style":1090},[8868],{"type":45,"value":934},{"type":39,"tag":1072,"props":8870,"children":8871},{"style":1096},[8872],{"type":45,"value":8020},{"type":39,"tag":1072,"props":8874,"children":8875},{"style":1195},[8876],{"type":45,"value":7676},{"type":39,"tag":1072,"props":8878,"children":8879},{"style":1195},[8880],{"type":45,"value":7837},{"type":39,"tag":1072,"props":8882,"children":8883},{"style":1090},[8884],{"type":45,"value":7815},{"type":39,"tag":1072,"props":8886,"children":8887},{"style":1096},[8888],{"type":45,"value":7846},{"type":39,"tag":1072,"props":8890,"children":8891},{"style":1090},[8892],{"type":45,"value":7851},{"type":39,"tag":1072,"props":8894,"children":8895},{"style":1096},[8896],{"type":45,"value":7856},{"type":39,"tag":1072,"props":8898,"children":8899},{"style":1090},[8900],{"type":45,"value":7861},{"type":39,"tag":1072,"props":8902,"children":8903},{"style":1195},[8904],{"type":45,"value":7866},{"type":39,"tag":1072,"props":8906,"children":8907},{"style":1090},[8908],{"type":45,"value":8057},{"type":39,"tag":1072,"props":8910,"children":8911},{"class":1074,"line":8060},[8912,8916,8920,8924],{"type":39,"tag":1072,"props":8913,"children":8914},{"style":1096},[8915],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8917,"children":8918},{"style":1090},[8919],{"type":45,"value":934},{"type":39,"tag":1072,"props":8921,"children":8922},{"style":1096},[8923],{"type":45,"value":8074},{"type":39,"tag":1072,"props":8925,"children":8926},{"style":1090},[8927],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8929,"children":8930},{"class":1074,"line":8081},[8931,8935,8939,8943],{"type":39,"tag":1072,"props":8932,"children":8933},{"style":1096},[8934],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8936,"children":8937},{"style":1090},[8938],{"type":45,"value":934},{"type":39,"tag":1072,"props":8940,"children":8941},{"style":1096},[8942],{"type":45,"value":8095},{"type":39,"tag":1072,"props":8944,"children":8945},{"style":1090},[8946],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8948,"children":8949},{"class":1074,"line":8102},[8950,8954,8958,8962],{"type":39,"tag":1072,"props":8951,"children":8952},{"style":1096},[8953],{"type":45,"value":7662},{"type":39,"tag":1072,"props":8955,"children":8956},{"style":1090},[8957],{"type":45,"value":934},{"type":39,"tag":1072,"props":8959,"children":8960},{"style":1096},[8961],{"type":45,"value":8116},{"type":39,"tag":1072,"props":8963,"children":8964},{"style":1090},[8965],{"type":45,"value":7703},{"type":39,"tag":1072,"props":8967,"children":8968},{"class":1074,"line":8123},[8969,8973,8977,8981,8985,8989,8993,8997,9001],{"type":39,"tag":1072,"props":8970,"children":8971},{"style":1096},[8972],{"type":45,"value":8129},{"type":39,"tag":1072,"props":8974,"children":8975},{"style":1090},[8976],{"type":45,"value":934},{"type":39,"tag":1072,"props":8978,"children":8979},{"style":1096},[8980],{"type":45,"value":8138},{"type":39,"tag":1072,"props":8982,"children":8983},{"style":1195},[8984],{"type":45,"value":8143},{"type":39,"tag":1072,"props":8986,"children":8987},{"style":1096},[8988],{"type":45,"value":8148},{"type":39,"tag":1072,"props":8990,"children":8991},{"style":1090},[8992],{"type":45,"value":934},{"type":39,"tag":1072,"props":8994,"children":8995},{"style":1096},[8996],{"type":45,"value":8157},{"type":39,"tag":1072,"props":8998,"children":8999},{"style":1195},[9000],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9002,"children":9003},{"style":1090},[9004],{"type":45,"value":8166},{"type":39,"tag":1072,"props":9006,"children":9007},{"class":1074,"line":8169},[9008,9012,9016,9020,9024],{"type":39,"tag":1072,"props":9009,"children":9010},{"style":1096},[9011],{"type":45,"value":8129},{"type":39,"tag":1072,"props":9013,"children":9014},{"style":1090},[9015],{"type":45,"value":934},{"type":39,"tag":1072,"props":9017,"children":9018},{"style":1096},[9019],{"type":45,"value":8183},{"type":39,"tag":1072,"props":9021,"children":9022},{"style":1195},[9023],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9025,"children":9026},{"style":1090},[9027],{"type":45,"value":8192},{"type":39,"tag":1072,"props":9029,"children":9030},{"class":1074,"line":8195},[9031,9035,9039,9043,9047],{"type":39,"tag":1072,"props":9032,"children":9033},{"style":1096},[9034],{"type":45,"value":8129},{"type":39,"tag":1072,"props":9036,"children":9037},{"style":1090},[9038],{"type":45,"value":934},{"type":39,"tag":1072,"props":9040,"children":9041},{"style":1096},[9042],{"type":45,"value":8209},{"type":39,"tag":1072,"props":9044,"children":9045},{"style":1195},[9046],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9048,"children":9049},{"style":1090},[9050],{"type":45,"value":8218},{"type":39,"tag":1072,"props":9052,"children":9053},{"class":1074,"line":8221},[9054,9058,9062,9066,9070],{"type":39,"tag":1072,"props":9055,"children":9056},{"style":1195},[9057],{"type":45,"value":8227},{"type":39,"tag":1072,"props":9059,"children":9060},{"style":1096},[9061],{"type":45,"value":8232},{"type":39,"tag":1072,"props":9063,"children":9064},{"style":1090},[9065],{"type":45,"value":934},{"type":39,"tag":1072,"props":9067,"children":9068},{"style":1096},[9069],{"type":45,"value":8241},{"type":39,"tag":1072,"props":9071,"children":9072},{"style":1090},[9073],{"type":45,"value":8246},{"type":39,"tag":1072,"props":9075,"children":9076},{"class":1074,"line":8249},[9077,9081,9085,9089,9093],{"type":39,"tag":1072,"props":9078,"children":9079},{"style":1195},[9080],{"type":45,"value":7335},{"type":39,"tag":1072,"props":9082,"children":9083},{"style":1096},[9084],{"type":45,"value":8232},{"type":39,"tag":1072,"props":9086,"children":9087},{"style":1090},[9088],{"type":45,"value":934},{"type":39,"tag":1072,"props":9090,"children":9091},{"style":1096},[9092],{"type":45,"value":8267},{"type":39,"tag":1072,"props":9094,"children":9095},{"style":1090},[9096],{"type":45,"value":8272},{"type":39,"tag":1072,"props":9098,"children":9099},{"class":1074,"line":8275},[9100,9104,9108,9112,9116,9120,9124,9128],{"type":39,"tag":1072,"props":9101,"children":9102},{"style":1195},[9103],{"type":45,"value":8281},{"type":39,"tag":1072,"props":9105,"children":9106},{"style":1096},[9107],{"type":45,"value":8286},{"type":39,"tag":1072,"props":9109,"children":9110},{"style":1090},[9111],{"type":45,"value":934},{"type":39,"tag":1072,"props":9113,"children":9114},{"style":1096},[9115],{"type":45,"value":7720},{"type":39,"tag":1072,"props":9117,"children":9118},{"style":1195},[9119],{"type":45,"value":8299},{"type":39,"tag":1072,"props":9121,"children":9122},{"style":1096},[9123],{"type":45,"value":8304},{"type":39,"tag":1072,"props":9125,"children":9126},{"style":1090},[9127],{"type":45,"value":934},{"type":39,"tag":1072,"props":9129,"children":9130},{"style":1096},[9131],{"type":45,"value":8313},{"type":39,"tag":1072,"props":9133,"children":9134},{"class":1074,"line":8316},[9135,9139,9144,9148,9152,9156,9160,9164,9168,9172,9176,9180,9184,9188],{"type":39,"tag":1072,"props":9136,"children":9137},{"style":1195},[9138],{"type":45,"value":8322},{"type":39,"tag":1072,"props":9140,"children":9141},{"style":1195},[9142],{"type":45,"value":9143}," DATE",{"type":39,"tag":1072,"props":9145,"children":9146},{"style":1090},[9147],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9149,"children":9150},{"style":1096},[9151],{"type":45,"value":7820},{"type":39,"tag":1072,"props":9153,"children":9154},{"style":1090},[9155],{"type":45,"value":934},{"type":39,"tag":1072,"props":9157,"children":9158},{"style":1096},[9159],{"type":45,"value":7746},{"type":39,"tag":1072,"props":9161,"children":9162},{"style":1090},[9163],{"type":45,"value":8344},{"type":39,"tag":1072,"props":9165,"children":9166},{"style":1195},[9167],{"type":45,"value":8349},{"type":39,"tag":1072,"props":9169,"children":9170},{"style":1195},[9171],{"type":45,"value":9143},{"type":39,"tag":1072,"props":9173,"children":9174},{"style":1090},[9175],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9177,"children":9178},{"style":1096},[9179],{"type":45,"value":8358},{"type":39,"tag":1072,"props":9181,"children":9182},{"style":1090},[9183],{"type":45,"value":934},{"type":39,"tag":1072,"props":9185,"children":9186},{"style":1096},[9187],{"type":45,"value":8367},{"type":39,"tag":1072,"props":9189,"children":9190},{"style":1090},[9191],{"type":45,"value":8372},{"type":39,"tag":1072,"props":9193,"children":9195},{"class":1074,"line":9194},46,[9196,9201,9205,9209,9214,9219,9224,9229,9234,9238,9242,9246],{"type":39,"tag":1072,"props":9197,"children":9198},{"style":1195},[9199],{"type":45,"value":9200},"WHERE",{"type":39,"tag":1072,"props":9202,"children":9203},{"style":1096},[9204],{"type":45,"value":8286},{"type":39,"tag":1072,"props":9206,"children":9207},{"style":1090},[9208],{"type":45,"value":934},{"type":39,"tag":1072,"props":9210,"children":9211},{"style":1096},[9212],{"type":45,"value":9213},"test",{"type":39,"tag":1072,"props":9215,"children":9216},{"style":1195},[9217],{"type":45,"value":9218}," IS",{"type":39,"tag":1072,"props":9220,"children":9221},{"style":1195},[9222],{"type":45,"value":9223}," NOT",{"type":39,"tag":1072,"props":9225,"children":9226},{"style":1090},[9227],{"type":45,"value":9228}," TRUE ",{"type":39,"tag":1072,"props":9230,"children":9231},{"style":1195},[9232],{"type":45,"value":9233},"AND",{"type":39,"tag":1072,"props":9235,"children":9236},{"style":1096},[9237],{"type":45,"value":8286},{"type":39,"tag":1072,"props":9239,"children":9240},{"style":1090},[9241],{"type":45,"value":934},{"type":39,"tag":1072,"props":9243,"children":9244},{"style":1096},[9245],{"type":45,"value":3415},{"type":39,"tag":1072,"props":9247,"children":9248},{"style":1195},[9249],{"type":45,"value":9250}," IS NOT NULL\n",{"type":39,"tag":1072,"props":9252,"children":9254},{"class":1074,"line":9253},47,[9255,9260,9265,9270,9275,9280,9285,9290,9294,9298,9302,9307,9311,9315,9320,9325,9329,9333],{"type":39,"tag":1072,"props":9256,"children":9257},{"style":1090},[9258],{"type":45,"value":9259},"QUALIFY ",{"type":39,"tag":1072,"props":9261,"children":9262},{"style":1096},[9263],{"type":45,"value":9264},"ROW_NUMBER",{"type":39,"tag":1072,"props":9266,"children":9267},{"style":1090},[9268],{"type":45,"value":9269},"() ",{"type":39,"tag":1072,"props":9271,"children":9272},{"style":1195},[9273],{"type":45,"value":9274},"OVER",{"type":39,"tag":1072,"props":9276,"children":9277},{"style":1090},[9278],{"type":45,"value":9279}," (",{"type":39,"tag":1072,"props":9281,"children":9282},{"style":1195},[9283],{"type":45,"value":9284},"PARTITION",{"type":39,"tag":1072,"props":9286,"children":9287},{"style":1195},[9288],{"type":45,"value":9289}," BY",{"type":39,"tag":1072,"props":9291,"children":9292},{"style":1096},[9293],{"type":45,"value":8286},{"type":39,"tag":1072,"props":9295,"children":9296},{"style":1090},[9297],{"type":45,"value":934},{"type":39,"tag":1072,"props":9299,"children":9300},{"style":1096},[9301],{"type":45,"value":7671},{"type":39,"tag":1072,"props":9303,"children":9304},{"style":1195},[9305],{"type":45,"value":9306}," ORDER BY",{"type":39,"tag":1072,"props":9308,"children":9309},{"style":1096},[9310],{"type":45,"value":8286},{"type":39,"tag":1072,"props":9312,"children":9313},{"style":1090},[9314],{"type":45,"value":934},{"type":39,"tag":1072,"props":9316,"children":9317},{"style":1096},[9318],{"type":45,"value":9319},"updated_at",{"type":39,"tag":1072,"props":9321,"children":9322},{"style":1195},[9323],{"type":45,"value":9324}," DESC",{"type":39,"tag":1072,"props":9326,"children":9327},{"style":1090},[9328],{"type":45,"value":8344},{"type":39,"tag":1072,"props":9330,"children":9331},{"style":1195},[9332],{"type":45,"value":8349},{"type":39,"tag":1072,"props":9334,"children":9335},{"style":1096},[9336],{"type":45,"value":9337}," 1\n",{"type":39,"tag":1248,"props":9339,"children":9340},{"v-slot:snowflake":7},[9341],{"type":39,"tag":1062,"props":9342,"children":9344},{"className":7433,"code":9343,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_orders\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.shopify_orders\n  - raw.stripe_charges\ncolumns:\n  - name: order_id\n    type: varchar\n    checks:\n      - name: not_null\n      - name: unique\n  - name: order_date\n    type: timestamp\n    checks:\n      - name: not_null\ncustom_checks:\n  - name: has_rows\n    query: \"SELECT count(*) > 0 FROM staging.stg_orders\"\n    value: 1\n@bruin *\u002F\n\nSELECT\n    o.id AS order_id,\n    o.order_number,\n    o.email AS customer_email,\n    o.created_at AS order_date,\n    o.financial_status AS payment_status,\n    o.fulfillment_status,\n    CAST(o.total_price AS DECIMAL(12,2)) AS order_total,\n    CAST(o.subtotal_price AS DECIMAL(12,2)) AS subtotal,\n    CAST(o.total_tax AS DECIMAL(12,2)) AS tax_amount,\n    CAST(o.total_discounts AS DECIMAL(12,2)) AS discount_amount,\n    o.currency,\n    o.cancel_reason,\n    o.cancelled_at,\n    c.amount \u002F 100.0 AS stripe_charge_amount,\n    c.status AS stripe_status,\n    c.paid AS stripe_paid\nFROM raw.shopify_orders o\nLEFT JOIN raw.stripe_charges c\n    ON o.email = c.receipt_email\n    AND o.created_at::DATE = c.created::DATE\n",[9345],{"type":39,"tag":70,"props":9346,"children":9347},{"__ignoreMap":7},[9348,9355,9362,9369,9376,9383,9390,9397,9404,9411,9418,9425,9432,9439,9446,9453,9460,9467,9474,9481,9488,9495,9502,9509,9516,9523,9546,9565,9588,9611,9634,9653,9712,9771,9830,9889,9908,9927,9946,9985,10008,10031,10054,10077,10112],{"type":39,"tag":1072,"props":9349,"children":9350},{"class":1074,"line":868},[9351],{"type":39,"tag":1072,"props":9352,"children":9353},{"style":7445},[9354],{"type":45,"value":7448},{"type":39,"tag":1072,"props":9356,"children":9357},{"class":1074,"line":476},[9358],{"type":39,"tag":1072,"props":9359,"children":9360},{"style":7445},[9361],{"type":45,"value":7456},{"type":39,"tag":1072,"props":9363,"children":9364},{"class":1074,"line":483},[9365],{"type":39,"tag":1072,"props":9366,"children":9367},{"style":7445},[9368],{"type":45,"value":7464},{"type":39,"tag":1072,"props":9370,"children":9371},{"class":1074,"line":1626},[9372],{"type":39,"tag":1072,"props":9373,"children":9374},{"style":7445},[9375],{"type":45,"value":7472},{"type":39,"tag":1072,"props":9377,"children":9378},{"class":1074,"line":11},[9379],{"type":39,"tag":1072,"props":9380,"children":9381},{"style":7445},[9382],{"type":45,"value":7480},{"type":39,"tag":1072,"props":9384,"children":9385},{"class":1074,"line":20},[9386],{"type":39,"tag":1072,"props":9387,"children":9388},{"style":7445},[9389],{"type":45,"value":7488},{"type":39,"tag":1072,"props":9391,"children":9392},{"class":1074,"line":1679},[9393],{"type":39,"tag":1072,"props":9394,"children":9395},{"style":7445},[9396],{"type":45,"value":7496},{"type":39,"tag":1072,"props":9398,"children":9399},{"class":1074,"line":860},[9400],{"type":39,"tag":1072,"props":9401,"children":9402},{"style":7445},[9403],{"type":45,"value":7504},{"type":39,"tag":1072,"props":9405,"children":9406},{"class":1074,"line":2907},[9407],{"type":39,"tag":1072,"props":9408,"children":9409},{"style":7445},[9410],{"type":45,"value":7512},{"type":39,"tag":1072,"props":9412,"children":9413},{"class":1074,"line":7515},[9414],{"type":39,"tag":1072,"props":9415,"children":9416},{"style":7445},[9417],{"type":45,"value":7521},{"type":39,"tag":1072,"props":9419,"children":9420},{"class":1074,"line":7524},[9421],{"type":39,"tag":1072,"props":9422,"children":9423},{"style":7445},[9424],{"type":45,"value":7530},{"type":39,"tag":1072,"props":9426,"children":9427},{"class":1074,"line":7533},[9428],{"type":39,"tag":1072,"props":9429,"children":9430},{"style":7445},[9431],{"type":45,"value":7539},{"type":39,"tag":1072,"props":9433,"children":9434},{"class":1074,"line":7542},[9435],{"type":39,"tag":1072,"props":9436,"children":9437},{"style":7445},[9438],{"type":45,"value":7548},{"type":39,"tag":1072,"props":9440,"children":9441},{"class":1074,"line":7551},[9442],{"type":39,"tag":1072,"props":9443,"children":9444},{"style":7445},[9445],{"type":45,"value":7557},{"type":39,"tag":1072,"props":9447,"children":9448},{"class":1074,"line":2380},[9449],{"type":39,"tag":1072,"props":9450,"children":9451},{"style":7445},[9452],{"type":45,"value":7565},{"type":39,"tag":1072,"props":9454,"children":9455},{"class":1074,"line":7568},[9456],{"type":39,"tag":1072,"props":9457,"children":9458},{"style":7445},[9459],{"type":45,"value":7574},{"type":39,"tag":1072,"props":9461,"children":9462},{"class":1074,"line":7577},[9463],{"type":39,"tag":1072,"props":9464,"children":9465},{"style":7445},[9466],{"type":45,"value":7539},{"type":39,"tag":1072,"props":9468,"children":9469},{"class":1074,"line":7585},[9470],{"type":39,"tag":1072,"props":9471,"children":9472},{"style":7445},[9473],{"type":45,"value":7548},{"type":39,"tag":1072,"props":9475,"children":9476},{"class":1074,"line":7593},[9477],{"type":39,"tag":1072,"props":9478,"children":9479},{"style":7445},[9480],{"type":45,"value":7599},{"type":39,"tag":1072,"props":9482,"children":9483},{"class":1074,"line":7602},[9484],{"type":39,"tag":1072,"props":9485,"children":9486},{"style":7445},[9487],{"type":45,"value":7608},{"type":39,"tag":1072,"props":9489,"children":9490},{"class":1074,"line":7611},[9491],{"type":39,"tag":1072,"props":9492,"children":9493},{"style":7445},[9494],{"type":45,"value":7617},{"type":39,"tag":1072,"props":9496,"children":9497},{"class":1074,"line":7620},[9498],{"type":39,"tag":1072,"props":9499,"children":9500},{"style":7445},[9501],{"type":45,"value":7626},{"type":39,"tag":1072,"props":9503,"children":9504},{"class":1074,"line":7629},[9505],{"type":39,"tag":1072,"props":9506,"children":9507},{"style":7445},[9508],{"type":45,"value":7635},{"type":39,"tag":1072,"props":9510,"children":9511},{"class":1074,"line":7638},[9512],{"type":39,"tag":1072,"props":9513,"children":9514},{"emptyLinePlaceholder":19},[9515],{"type":45,"value":7644},{"type":39,"tag":1072,"props":9517,"children":9518},{"class":1074,"line":7647},[9519],{"type":39,"tag":1072,"props":9520,"children":9521},{"style":1195},[9522],{"type":45,"value":7653},{"type":39,"tag":1072,"props":9524,"children":9525},{"class":1074,"line":7656},[9526,9530,9534,9538,9542],{"type":39,"tag":1072,"props":9527,"children":9528},{"style":1096},[9529],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9531,"children":9532},{"style":1090},[9533],{"type":45,"value":934},{"type":39,"tag":1072,"props":9535,"children":9536},{"style":1096},[9537],{"type":45,"value":7671},{"type":39,"tag":1072,"props":9539,"children":9540},{"style":1195},[9541],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9543,"children":9544},{"style":1090},[9545],{"type":45,"value":7681},{"type":39,"tag":1072,"props":9547,"children":9548},{"class":1074,"line":7684},[9549,9553,9557,9561],{"type":39,"tag":1072,"props":9550,"children":9551},{"style":1096},[9552],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9554,"children":9555},{"style":1090},[9556],{"type":45,"value":934},{"type":39,"tag":1072,"props":9558,"children":9559},{"style":1096},[9560],{"type":45,"value":7698},{"type":39,"tag":1072,"props":9562,"children":9563},{"style":1090},[9564],{"type":45,"value":7703},{"type":39,"tag":1072,"props":9566,"children":9567},{"class":1074,"line":7706},[9568,9572,9576,9580,9584],{"type":39,"tag":1072,"props":9569,"children":9570},{"style":1096},[9571],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9573,"children":9574},{"style":1090},[9575],{"type":45,"value":934},{"type":39,"tag":1072,"props":9577,"children":9578},{"style":1096},[9579],{"type":45,"value":7720},{"type":39,"tag":1072,"props":9581,"children":9582},{"style":1195},[9583],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9585,"children":9586},{"style":1090},[9587],{"type":45,"value":7729},{"type":39,"tag":1072,"props":9589,"children":9590},{"class":1074,"line":7732},[9591,9595,9599,9603,9607],{"type":39,"tag":1072,"props":9592,"children":9593},{"style":1096},[9594],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9596,"children":9597},{"style":1090},[9598],{"type":45,"value":934},{"type":39,"tag":1072,"props":9600,"children":9601},{"style":1096},[9602],{"type":45,"value":7746},{"type":39,"tag":1072,"props":9604,"children":9605},{"style":1195},[9606],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9608,"children":9609},{"style":1090},[9610],{"type":45,"value":7755},{"type":39,"tag":1072,"props":9612,"children":9613},{"class":1074,"line":7758},[9614,9618,9622,9626,9630],{"type":39,"tag":1072,"props":9615,"children":9616},{"style":1096},[9617],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9619,"children":9620},{"style":1090},[9621],{"type":45,"value":934},{"type":39,"tag":1072,"props":9623,"children":9624},{"style":1096},[9625],{"type":45,"value":3415},{"type":39,"tag":1072,"props":9627,"children":9628},{"style":1195},[9629],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9631,"children":9632},{"style":1090},[9633],{"type":45,"value":7780},{"type":39,"tag":1072,"props":9635,"children":9636},{"class":1074,"line":7783},[9637,9641,9645,9649],{"type":39,"tag":1072,"props":9638,"children":9639},{"style":1096},[9640],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9642,"children":9643},{"style":1090},[9644],{"type":45,"value":934},{"type":39,"tag":1072,"props":9646,"children":9647},{"style":1096},[9648],{"type":45,"value":7797},{"type":39,"tag":1072,"props":9650,"children":9651},{"style":1090},[9652],{"type":45,"value":7703},{"type":39,"tag":1072,"props":9654,"children":9655},{"class":1074,"line":7804},[9656,9660,9664,9668,9672,9676,9680,9684,9688,9692,9696,9700,9704,9708],{"type":39,"tag":1072,"props":9657,"children":9658},{"style":1096},[9659],{"type":45,"value":7810},{"type":39,"tag":1072,"props":9661,"children":9662},{"style":1090},[9663],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9665,"children":9666},{"style":1096},[9667],{"type":45,"value":7820},{"type":39,"tag":1072,"props":9669,"children":9670},{"style":1090},[9671],{"type":45,"value":934},{"type":39,"tag":1072,"props":9673,"children":9674},{"style":1096},[9675],{"type":45,"value":3422},{"type":39,"tag":1072,"props":9677,"children":9678},{"style":1195},[9679],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9681,"children":9682},{"style":1195},[9683],{"type":45,"value":7837},{"type":39,"tag":1072,"props":9685,"children":9686},{"style":1090},[9687],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9689,"children":9690},{"style":1096},[9691],{"type":45,"value":7846},{"type":39,"tag":1072,"props":9693,"children":9694},{"style":1090},[9695],{"type":45,"value":7851},{"type":39,"tag":1072,"props":9697,"children":9698},{"style":1096},[9699],{"type":45,"value":7856},{"type":39,"tag":1072,"props":9701,"children":9702},{"style":1090},[9703],{"type":45,"value":7861},{"type":39,"tag":1072,"props":9705,"children":9706},{"style":1195},[9707],{"type":45,"value":7866},{"type":39,"tag":1072,"props":9709,"children":9710},{"style":1090},[9711],{"type":45,"value":7871},{"type":39,"tag":1072,"props":9713,"children":9714},{"class":1074,"line":7874},[9715,9719,9723,9727,9731,9735,9739,9743,9747,9751,9755,9759,9763,9767],{"type":39,"tag":1072,"props":9716,"children":9717},{"style":1096},[9718],{"type":45,"value":7810},{"type":39,"tag":1072,"props":9720,"children":9721},{"style":1090},[9722],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9724,"children":9725},{"style":1096},[9726],{"type":45,"value":7820},{"type":39,"tag":1072,"props":9728,"children":9729},{"style":1090},[9730],{"type":45,"value":934},{"type":39,"tag":1072,"props":9732,"children":9733},{"style":1096},[9734],{"type":45,"value":7896},{"type":39,"tag":1072,"props":9736,"children":9737},{"style":1195},[9738],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9740,"children":9741},{"style":1195},[9742],{"type":45,"value":7837},{"type":39,"tag":1072,"props":9744,"children":9745},{"style":1090},[9746],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9748,"children":9749},{"style":1096},[9750],{"type":45,"value":7846},{"type":39,"tag":1072,"props":9752,"children":9753},{"style":1090},[9754],{"type":45,"value":7851},{"type":39,"tag":1072,"props":9756,"children":9757},{"style":1096},[9758],{"type":45,"value":7856},{"type":39,"tag":1072,"props":9760,"children":9761},{"style":1090},[9762],{"type":45,"value":7861},{"type":39,"tag":1072,"props":9764,"children":9765},{"style":1195},[9766],{"type":45,"value":7866},{"type":39,"tag":1072,"props":9768,"children":9769},{"style":1090},[9770],{"type":45,"value":7933},{"type":39,"tag":1072,"props":9772,"children":9773},{"class":1074,"line":7936},[9774,9778,9782,9786,9790,9794,9798,9802,9806,9810,9814,9818,9822,9826],{"type":39,"tag":1072,"props":9775,"children":9776},{"style":1096},[9777],{"type":45,"value":7810},{"type":39,"tag":1072,"props":9779,"children":9780},{"style":1090},[9781],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9783,"children":9784},{"style":1096},[9785],{"type":45,"value":7820},{"type":39,"tag":1072,"props":9787,"children":9788},{"style":1090},[9789],{"type":45,"value":934},{"type":39,"tag":1072,"props":9791,"children":9792},{"style":1096},[9793],{"type":45,"value":7958},{"type":39,"tag":1072,"props":9795,"children":9796},{"style":1195},[9797],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9799,"children":9800},{"style":1195},[9801],{"type":45,"value":7837},{"type":39,"tag":1072,"props":9803,"children":9804},{"style":1090},[9805],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9807,"children":9808},{"style":1096},[9809],{"type":45,"value":7846},{"type":39,"tag":1072,"props":9811,"children":9812},{"style":1090},[9813],{"type":45,"value":7851},{"type":39,"tag":1072,"props":9815,"children":9816},{"style":1096},[9817],{"type":45,"value":7856},{"type":39,"tag":1072,"props":9819,"children":9820},{"style":1090},[9821],{"type":45,"value":7861},{"type":39,"tag":1072,"props":9823,"children":9824},{"style":1195},[9825],{"type":45,"value":7866},{"type":39,"tag":1072,"props":9827,"children":9828},{"style":1090},[9829],{"type":45,"value":7995},{"type":39,"tag":1072,"props":9831,"children":9832},{"class":1074,"line":7998},[9833,9837,9841,9845,9849,9853,9857,9861,9865,9869,9873,9877,9881,9885],{"type":39,"tag":1072,"props":9834,"children":9835},{"style":1096},[9836],{"type":45,"value":7810},{"type":39,"tag":1072,"props":9838,"children":9839},{"style":1090},[9840],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9842,"children":9843},{"style":1096},[9844],{"type":45,"value":7820},{"type":39,"tag":1072,"props":9846,"children":9847},{"style":1090},[9848],{"type":45,"value":934},{"type":39,"tag":1072,"props":9850,"children":9851},{"style":1096},[9852],{"type":45,"value":8020},{"type":39,"tag":1072,"props":9854,"children":9855},{"style":1195},[9856],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9858,"children":9859},{"style":1195},[9860],{"type":45,"value":7837},{"type":39,"tag":1072,"props":9862,"children":9863},{"style":1090},[9864],{"type":45,"value":7815},{"type":39,"tag":1072,"props":9866,"children":9867},{"style":1096},[9868],{"type":45,"value":7846},{"type":39,"tag":1072,"props":9870,"children":9871},{"style":1090},[9872],{"type":45,"value":7851},{"type":39,"tag":1072,"props":9874,"children":9875},{"style":1096},[9876],{"type":45,"value":7856},{"type":39,"tag":1072,"props":9878,"children":9879},{"style":1090},[9880],{"type":45,"value":7861},{"type":39,"tag":1072,"props":9882,"children":9883},{"style":1195},[9884],{"type":45,"value":7866},{"type":39,"tag":1072,"props":9886,"children":9887},{"style":1090},[9888],{"type":45,"value":8057},{"type":39,"tag":1072,"props":9890,"children":9891},{"class":1074,"line":8060},[9892,9896,9900,9904],{"type":39,"tag":1072,"props":9893,"children":9894},{"style":1096},[9895],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9897,"children":9898},{"style":1090},[9899],{"type":45,"value":934},{"type":39,"tag":1072,"props":9901,"children":9902},{"style":1096},[9903],{"type":45,"value":8074},{"type":39,"tag":1072,"props":9905,"children":9906},{"style":1090},[9907],{"type":45,"value":7703},{"type":39,"tag":1072,"props":9909,"children":9910},{"class":1074,"line":8081},[9911,9915,9919,9923],{"type":39,"tag":1072,"props":9912,"children":9913},{"style":1096},[9914],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9916,"children":9917},{"style":1090},[9918],{"type":45,"value":934},{"type":39,"tag":1072,"props":9920,"children":9921},{"style":1096},[9922],{"type":45,"value":8095},{"type":39,"tag":1072,"props":9924,"children":9925},{"style":1090},[9926],{"type":45,"value":7703},{"type":39,"tag":1072,"props":9928,"children":9929},{"class":1074,"line":8102},[9930,9934,9938,9942],{"type":39,"tag":1072,"props":9931,"children":9932},{"style":1096},[9933],{"type":45,"value":7662},{"type":39,"tag":1072,"props":9935,"children":9936},{"style":1090},[9937],{"type":45,"value":934},{"type":39,"tag":1072,"props":9939,"children":9940},{"style":1096},[9941],{"type":45,"value":8116},{"type":39,"tag":1072,"props":9943,"children":9944},{"style":1090},[9945],{"type":45,"value":7703},{"type":39,"tag":1072,"props":9947,"children":9948},{"class":1074,"line":8123},[9949,9953,9957,9961,9965,9969,9973,9977,9981],{"type":39,"tag":1072,"props":9950,"children":9951},{"style":1096},[9952],{"type":45,"value":8129},{"type":39,"tag":1072,"props":9954,"children":9955},{"style":1090},[9956],{"type":45,"value":934},{"type":39,"tag":1072,"props":9958,"children":9959},{"style":1096},[9960],{"type":45,"value":8138},{"type":39,"tag":1072,"props":9962,"children":9963},{"style":1195},[9964],{"type":45,"value":8143},{"type":39,"tag":1072,"props":9966,"children":9967},{"style":1096},[9968],{"type":45,"value":8148},{"type":39,"tag":1072,"props":9970,"children":9971},{"style":1090},[9972],{"type":45,"value":934},{"type":39,"tag":1072,"props":9974,"children":9975},{"style":1096},[9976],{"type":45,"value":8157},{"type":39,"tag":1072,"props":9978,"children":9979},{"style":1195},[9980],{"type":45,"value":7676},{"type":39,"tag":1072,"props":9982,"children":9983},{"style":1090},[9984],{"type":45,"value":8166},{"type":39,"tag":1072,"props":9986,"children":9987},{"class":1074,"line":8169},[9988,9992,9996,10000,10004],{"type":39,"tag":1072,"props":9989,"children":9990},{"style":1096},[9991],{"type":45,"value":8129},{"type":39,"tag":1072,"props":9993,"children":9994},{"style":1090},[9995],{"type":45,"value":934},{"type":39,"tag":1072,"props":9997,"children":9998},{"style":1096},[9999],{"type":45,"value":8183},{"type":39,"tag":1072,"props":10001,"children":10002},{"style":1195},[10003],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10005,"children":10006},{"style":1090},[10007],{"type":45,"value":8192},{"type":39,"tag":1072,"props":10009,"children":10010},{"class":1074,"line":8195},[10011,10015,10019,10023,10027],{"type":39,"tag":1072,"props":10012,"children":10013},{"style":1096},[10014],{"type":45,"value":8129},{"type":39,"tag":1072,"props":10016,"children":10017},{"style":1090},[10018],{"type":45,"value":934},{"type":39,"tag":1072,"props":10020,"children":10021},{"style":1096},[10022],{"type":45,"value":8209},{"type":39,"tag":1072,"props":10024,"children":10025},{"style":1195},[10026],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10028,"children":10029},{"style":1090},[10030],{"type":45,"value":8218},{"type":39,"tag":1072,"props":10032,"children":10033},{"class":1074,"line":8221},[10034,10038,10042,10046,10050],{"type":39,"tag":1072,"props":10035,"children":10036},{"style":1195},[10037],{"type":45,"value":8227},{"type":39,"tag":1072,"props":10039,"children":10040},{"style":1096},[10041],{"type":45,"value":8232},{"type":39,"tag":1072,"props":10043,"children":10044},{"style":1090},[10045],{"type":45,"value":934},{"type":39,"tag":1072,"props":10047,"children":10048},{"style":1096},[10049],{"type":45,"value":8241},{"type":39,"tag":1072,"props":10051,"children":10052},{"style":1090},[10053],{"type":45,"value":8246},{"type":39,"tag":1072,"props":10055,"children":10056},{"class":1074,"line":8249},[10057,10061,10065,10069,10073],{"type":39,"tag":1072,"props":10058,"children":10059},{"style":1195},[10060],{"type":45,"value":7335},{"type":39,"tag":1072,"props":10062,"children":10063},{"style":1096},[10064],{"type":45,"value":8232},{"type":39,"tag":1072,"props":10066,"children":10067},{"style":1090},[10068],{"type":45,"value":934},{"type":39,"tag":1072,"props":10070,"children":10071},{"style":1096},[10072],{"type":45,"value":8267},{"type":39,"tag":1072,"props":10074,"children":10075},{"style":1090},[10076],{"type":45,"value":8272},{"type":39,"tag":1072,"props":10078,"children":10079},{"class":1074,"line":8275},[10080,10084,10088,10092,10096,10100,10104,10108],{"type":39,"tag":1072,"props":10081,"children":10082},{"style":1195},[10083],{"type":45,"value":8281},{"type":39,"tag":1072,"props":10085,"children":10086},{"style":1096},[10087],{"type":45,"value":8286},{"type":39,"tag":1072,"props":10089,"children":10090},{"style":1090},[10091],{"type":45,"value":934},{"type":39,"tag":1072,"props":10093,"children":10094},{"style":1096},[10095],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10097,"children":10098},{"style":1195},[10099],{"type":45,"value":8299},{"type":39,"tag":1072,"props":10101,"children":10102},{"style":1096},[10103],{"type":45,"value":8304},{"type":39,"tag":1072,"props":10105,"children":10106},{"style":1090},[10107],{"type":45,"value":934},{"type":39,"tag":1072,"props":10109,"children":10110},{"style":1096},[10111],{"type":45,"value":8313},{"type":39,"tag":1072,"props":10113,"children":10114},{"class":1074,"line":8316},[10115,10119,10123,10127,10131,10136,10141,10145,10149,10153,10157,10161],{"type":39,"tag":1072,"props":10116,"children":10117},{"style":1195},[10118],{"type":45,"value":8322},{"type":39,"tag":1072,"props":10120,"children":10121},{"style":1096},[10122],{"type":45,"value":8286},{"type":39,"tag":1072,"props":10124,"children":10125},{"style":1090},[10126],{"type":45,"value":934},{"type":39,"tag":1072,"props":10128,"children":10129},{"style":1096},[10130],{"type":45,"value":7746},{"type":39,"tag":1072,"props":10132,"children":10133},{"style":1090},[10134],{"type":45,"value":10135},"::",{"type":39,"tag":1072,"props":10137,"children":10138},{"style":1195},[10139],{"type":45,"value":10140},"DATE",{"type":39,"tag":1072,"props":10142,"children":10143},{"style":1195},[10144],{"type":45,"value":8299},{"type":39,"tag":1072,"props":10146,"children":10147},{"style":1096},[10148],{"type":45,"value":8304},{"type":39,"tag":1072,"props":10150,"children":10151},{"style":1090},[10152],{"type":45,"value":934},{"type":39,"tag":1072,"props":10154,"children":10155},{"style":1096},[10156],{"type":45,"value":8367},{"type":39,"tag":1072,"props":10158,"children":10159},{"style":1090},[10160],{"type":45,"value":10135},{"type":39,"tag":1072,"props":10162,"children":10163},{"style":1195},[10164],{"type":45,"value":10165},"DATE\n",{"type":39,"tag":48,"props":10167,"children":10168},{},[10169,10171,10176,10178,10184],{"type":45,"value":10170},"The ",{"type":39,"tag":70,"props":10172,"children":10174},{"className":10173},[],[10175],{"type":45,"value":7335},{"type":45,"value":10177}," keeps all Shopify orders even if the Stripe charge hasn't synced yet. The ",{"type":39,"tag":70,"props":10179,"children":10181},{"className":10180},[],[10182],{"type":45,"value":10183},"\u002F 100.0",{"type":45,"value":10185}," converts Stripe's cent-based amounts to dollars.",{"type":39,"tag":85,"props":10187,"children":10189},{"id":10188},"_2-staged-customers-stg_customerssql",[10190,10192],{"type":45,"value":10191},"2) Staged customers - ",{"type":39,"tag":70,"props":10193,"children":10195},{"className":10194},[],[10196],{"type":45,"value":10197},"stg_customers.sql",{"type":39,"tag":48,"props":10199,"children":10200},{},[10201,10203,10209,10210,10216,10217,10223,10224,10230],{"type":45,"value":10202},"A unified customer table that merges Shopify and Stripe profiles. This query uses ",{"type":39,"tag":70,"props":10204,"children":10206},{"className":10205},[],[10207],{"type":45,"value":10208},"COALESCE",{"type":45,"value":978},{"type":39,"tag":70,"props":10211,"children":10213},{"className":10212},[],[10214],{"type":45,"value":10215},"LEAST",{"type":45,"value":978},{"type":39,"tag":70,"props":10218,"children":10220},{"className":10219},[],[10221],{"type":45,"value":10222},"FULL OUTER JOIN",{"type":45,"value":1000},{"type":39,"tag":70,"props":10225,"children":10227},{"className":10226},[],[10228],{"type":45,"value":10229},"lower()",{"type":45,"value":10231}," - all of which work the same across warehouses, so there is no warehouse-specific variant needed.",{"type":39,"tag":1023,"props":10233,"children":10234},{"type":7323},[10235],{"type":39,"tag":48,"props":10236,"children":10237},{},[10238,10240,10246,10248,10254,10255,10259,10260,10265,10266,10271,10273,10278,10280,10286,10288,10293,10295,10300],{"type":45,"value":10239},"The SQL below joins ",{"type":39,"tag":70,"props":10241,"children":10243},{"className":10242},[],[10244],{"type":45,"value":10245},"raw.shopify_customers",{"type":45,"value":10247}," with ",{"type":39,"tag":70,"props":10249,"children":10251},{"className":10250},[],[10252],{"type":45,"value":10253},"raw.stripe_customers",{"type":45,"value":7353},{"type":39,"tag":97,"props":10256,"children":10257},{},[10258],{"type":45,"value":3404},{"type":45,"value":7359},{"type":39,"tag":70,"props":10261,"children":10263},{"className":10262},[],[10264],{"type":45,"value":10253},{"type":45,"value":7366},{"type":39,"tag":70,"props":10267,"children":10269},{"className":10268},[],[10270],{"type":45,"value":7351},{"type":45,"value":10272}," list, replace the ",{"type":39,"tag":70,"props":10274,"children":10276},{"className":10275},[],[10277],{"type":45,"value":10222},{"type":45,"value":10279}," with a plain ",{"type":39,"tag":70,"props":10281,"children":10283},{"className":10282},[],[10284],{"type":45,"value":10285},"SELECT",{"type":45,"value":10287}," from ",{"type":39,"tag":70,"props":10289,"children":10291},{"className":10290},[],[10292],{"type":45,"value":10245},{"type":45,"value":10294},", and drop the ",{"type":39,"tag":70,"props":10296,"children":10298},{"className":10297},[],[10299],{"type":45,"value":7386},{"type":45,"value":10301}," columns. Ask Claude Code to adjust the query for you if needed.",{"type":39,"tag":48,"props":10303,"children":10304},{},[10305,10306,10315],{"type":45,"value":7413},{"type":39,"tag":97,"props":10307,"children":10308},{},[10309],{"type":39,"tag":70,"props":10310,"children":10312},{"className":10311},[],[10313],{"type":45,"value":10314},"ecommerce\u002Fassets\u002Fstaging\u002Fstg_customers.sql",{"type":45,"value":7424},{"type":39,"tag":1062,"props":10317,"children":10319},{"className":7433,"code":10318,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_customers\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.shopify_customers\n  - raw.stripe_customers\ncolumns:\n  - name: customer_email\n    type: varchar\n    checks:\n      - name: not_null\n      - name: unique\n@bruin *\u002F\n\nSELECT\n    COALESCE(sc.email, st.email) AS customer_email,\n    sc.id AS shopify_customer_id,\n    st.id AS stripe_customer_id,\n    sc.first_name,\n    sc.last_name,\n    sc.created_at AS shopify_created_at,\n    st.created AS stripe_created_at,\n    LEAST(sc.created_at, st.created) AS first_seen_at,\n    sc.orders_count,\n    CAST(sc.total_spent AS DECIMAL(12,2)) AS shopify_total_spent,\n    sc.tags AS customer_tags,\n    sc.state AS customer_state\nFROM raw.shopify_customers sc\nFULL OUTER JOIN raw.stripe_customers st\n    ON lower(sc.email) = lower(st.email)\nWHERE COALESCE(sc.email, st.email) IS NOT NULL\n",[10320],{"type":39,"tag":70,"props":10321,"children":10322},{"__ignoreMap":7},[10323,10330,10338,10345,10352,10359,10366,10374,10382,10389,10397,10404,10411,10418,10425,10432,10439,10446,10500,10525,10550,10570,10590,10614,10638,10691,10711,10772,10797,10822,10847,10872,10932],{"type":39,"tag":1072,"props":10324,"children":10325},{"class":1074,"line":868},[10326],{"type":39,"tag":1072,"props":10327,"children":10328},{"style":7445},[10329],{"type":45,"value":7448},{"type":39,"tag":1072,"props":10331,"children":10332},{"class":1074,"line":476},[10333],{"type":39,"tag":1072,"props":10334,"children":10335},{"style":7445},[10336],{"type":45,"value":10337},"name: staging.stg_customers\n",{"type":39,"tag":1072,"props":10339,"children":10340},{"class":1074,"line":483},[10341],{"type":39,"tag":1072,"props":10342,"children":10343},{"style":7445},[10344],{"type":45,"value":7464},{"type":39,"tag":1072,"props":10346,"children":10347},{"class":1074,"line":1626},[10348],{"type":39,"tag":1072,"props":10349,"children":10350},{"style":7445},[10351],{"type":45,"value":7472},{"type":39,"tag":1072,"props":10353,"children":10354},{"class":1074,"line":11},[10355],{"type":39,"tag":1072,"props":10356,"children":10357},{"style":7445},[10358],{"type":45,"value":7480},{"type":39,"tag":1072,"props":10360,"children":10361},{"class":1074,"line":20},[10362],{"type":39,"tag":1072,"props":10363,"children":10364},{"style":7445},[10365],{"type":45,"value":7488},{"type":39,"tag":1072,"props":10367,"children":10368},{"class":1074,"line":1679},[10369],{"type":39,"tag":1072,"props":10370,"children":10371},{"style":7445},[10372],{"type":45,"value":10373},"  - raw.shopify_customers\n",{"type":39,"tag":1072,"props":10375,"children":10376},{"class":1074,"line":860},[10377],{"type":39,"tag":1072,"props":10378,"children":10379},{"style":7445},[10380],{"type":45,"value":10381},"  - raw.stripe_customers\n",{"type":39,"tag":1072,"props":10383,"children":10384},{"class":1074,"line":2907},[10385],{"type":39,"tag":1072,"props":10386,"children":10387},{"style":7445},[10388],{"type":45,"value":7512},{"type":39,"tag":1072,"props":10390,"children":10391},{"class":1074,"line":7515},[10392],{"type":39,"tag":1072,"props":10393,"children":10394},{"style":7445},[10395],{"type":45,"value":10396},"  - name: customer_email\n",{"type":39,"tag":1072,"props":10398,"children":10399},{"class":1074,"line":7524},[10400],{"type":39,"tag":1072,"props":10401,"children":10402},{"style":7445},[10403],{"type":45,"value":7530},{"type":39,"tag":1072,"props":10405,"children":10406},{"class":1074,"line":7533},[10407],{"type":39,"tag":1072,"props":10408,"children":10409},{"style":7445},[10410],{"type":45,"value":7539},{"type":39,"tag":1072,"props":10412,"children":10413},{"class":1074,"line":7542},[10414],{"type":39,"tag":1072,"props":10415,"children":10416},{"style":7445},[10417],{"type":45,"value":7548},{"type":39,"tag":1072,"props":10419,"children":10420},{"class":1074,"line":7551},[10421],{"type":39,"tag":1072,"props":10422,"children":10423},{"style":7445},[10424],{"type":45,"value":7557},{"type":39,"tag":1072,"props":10426,"children":10427},{"class":1074,"line":2380},[10428],{"type":39,"tag":1072,"props":10429,"children":10430},{"style":7445},[10431],{"type":45,"value":7635},{"type":39,"tag":1072,"props":10433,"children":10434},{"class":1074,"line":7568},[10435],{"type":39,"tag":1072,"props":10436,"children":10437},{"emptyLinePlaceholder":19},[10438],{"type":45,"value":7644},{"type":39,"tag":1072,"props":10440,"children":10441},{"class":1074,"line":7577},[10442],{"type":39,"tag":1072,"props":10443,"children":10444},{"style":1195},[10445],{"type":45,"value":7653},{"type":39,"tag":1072,"props":10447,"children":10448},{"class":1074,"line":7585},[10449,10454,10458,10463,10467,10471,10475,10480,10484,10488,10492,10496],{"type":39,"tag":1072,"props":10450,"children":10451},{"style":1096},[10452],{"type":45,"value":10453},"    COALESCE",{"type":39,"tag":1072,"props":10455,"children":10456},{"style":1090},[10457],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10459,"children":10460},{"style":1096},[10461],{"type":45,"value":10462},"sc",{"type":39,"tag":1072,"props":10464,"children":10465},{"style":1090},[10466],{"type":45,"value":934},{"type":39,"tag":1072,"props":10468,"children":10469},{"style":1096},[10470],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10472,"children":10473},{"style":1090},[10474],{"type":45,"value":978},{"type":39,"tag":1072,"props":10476,"children":10477},{"style":1096},[10478],{"type":45,"value":10479},"st",{"type":39,"tag":1072,"props":10481,"children":10482},{"style":1090},[10483],{"type":45,"value":934},{"type":39,"tag":1072,"props":10485,"children":10486},{"style":1096},[10487],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10489,"children":10490},{"style":1090},[10491],{"type":45,"value":8344},{"type":39,"tag":1072,"props":10493,"children":10494},{"style":1195},[10495],{"type":45,"value":7866},{"type":39,"tag":1072,"props":10497,"children":10498},{"style":1090},[10499],{"type":45,"value":7729},{"type":39,"tag":1072,"props":10501,"children":10502},{"class":1074,"line":7593},[10503,10508,10512,10516,10520],{"type":39,"tag":1072,"props":10504,"children":10505},{"style":1096},[10506],{"type":45,"value":10507},"    sc",{"type":39,"tag":1072,"props":10509,"children":10510},{"style":1090},[10511],{"type":45,"value":934},{"type":39,"tag":1072,"props":10513,"children":10514},{"style":1096},[10515],{"type":45,"value":7671},{"type":39,"tag":1072,"props":10517,"children":10518},{"style":1195},[10519],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10521,"children":10522},{"style":1090},[10523],{"type":45,"value":10524}," shopify_customer_id,\n",{"type":39,"tag":1072,"props":10526,"children":10527},{"class":1074,"line":7602},[10528,10533,10537,10541,10545],{"type":39,"tag":1072,"props":10529,"children":10530},{"style":1096},[10531],{"type":45,"value":10532},"    st",{"type":39,"tag":1072,"props":10534,"children":10535},{"style":1090},[10536],{"type":45,"value":934},{"type":39,"tag":1072,"props":10538,"children":10539},{"style":1096},[10540],{"type":45,"value":7671},{"type":39,"tag":1072,"props":10542,"children":10543},{"style":1195},[10544],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10546,"children":10547},{"style":1090},[10548],{"type":45,"value":10549}," stripe_customer_id,\n",{"type":39,"tag":1072,"props":10551,"children":10552},{"class":1074,"line":7611},[10553,10557,10561,10566],{"type":39,"tag":1072,"props":10554,"children":10555},{"style":1096},[10556],{"type":45,"value":10507},{"type":39,"tag":1072,"props":10558,"children":10559},{"style":1090},[10560],{"type":45,"value":934},{"type":39,"tag":1072,"props":10562,"children":10563},{"style":1096},[10564],{"type":45,"value":10565},"first_name",{"type":39,"tag":1072,"props":10567,"children":10568},{"style":1090},[10569],{"type":45,"value":7703},{"type":39,"tag":1072,"props":10571,"children":10572},{"class":1074,"line":7620},[10573,10577,10581,10586],{"type":39,"tag":1072,"props":10574,"children":10575},{"style":1096},[10576],{"type":45,"value":10507},{"type":39,"tag":1072,"props":10578,"children":10579},{"style":1090},[10580],{"type":45,"value":934},{"type":39,"tag":1072,"props":10582,"children":10583},{"style":1096},[10584],{"type":45,"value":10585},"last_name",{"type":39,"tag":1072,"props":10587,"children":10588},{"style":1090},[10589],{"type":45,"value":7703},{"type":39,"tag":1072,"props":10591,"children":10592},{"class":1074,"line":7629},[10593,10597,10601,10605,10609],{"type":39,"tag":1072,"props":10594,"children":10595},{"style":1096},[10596],{"type":45,"value":10507},{"type":39,"tag":1072,"props":10598,"children":10599},{"style":1090},[10600],{"type":45,"value":934},{"type":39,"tag":1072,"props":10602,"children":10603},{"style":1096},[10604],{"type":45,"value":7746},{"type":39,"tag":1072,"props":10606,"children":10607},{"style":1195},[10608],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10610,"children":10611},{"style":1090},[10612],{"type":45,"value":10613}," shopify_created_at,\n",{"type":39,"tag":1072,"props":10615,"children":10616},{"class":1074,"line":7638},[10617,10621,10625,10629,10633],{"type":39,"tag":1072,"props":10618,"children":10619},{"style":1096},[10620],{"type":45,"value":10532},{"type":39,"tag":1072,"props":10622,"children":10623},{"style":1090},[10624],{"type":45,"value":934},{"type":39,"tag":1072,"props":10626,"children":10627},{"style":1096},[10628],{"type":45,"value":8367},{"type":39,"tag":1072,"props":10630,"children":10631},{"style":1195},[10632],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10634,"children":10635},{"style":1090},[10636],{"type":45,"value":10637}," stripe_created_at,\n",{"type":39,"tag":1072,"props":10639,"children":10640},{"class":1074,"line":7647},[10641,10646,10650,10654,10658,10662,10666,10670,10674,10678,10682,10686],{"type":39,"tag":1072,"props":10642,"children":10643},{"style":1096},[10644],{"type":45,"value":10645},"    LEAST",{"type":39,"tag":1072,"props":10647,"children":10648},{"style":1090},[10649],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10651,"children":10652},{"style":1096},[10653],{"type":45,"value":10462},{"type":39,"tag":1072,"props":10655,"children":10656},{"style":1090},[10657],{"type":45,"value":934},{"type":39,"tag":1072,"props":10659,"children":10660},{"style":1096},[10661],{"type":45,"value":7746},{"type":39,"tag":1072,"props":10663,"children":10664},{"style":1090},[10665],{"type":45,"value":978},{"type":39,"tag":1072,"props":10667,"children":10668},{"style":1096},[10669],{"type":45,"value":10479},{"type":39,"tag":1072,"props":10671,"children":10672},{"style":1090},[10673],{"type":45,"value":934},{"type":39,"tag":1072,"props":10675,"children":10676},{"style":1096},[10677],{"type":45,"value":8367},{"type":39,"tag":1072,"props":10679,"children":10680},{"style":1090},[10681],{"type":45,"value":8344},{"type":39,"tag":1072,"props":10683,"children":10684},{"style":1195},[10685],{"type":45,"value":7866},{"type":39,"tag":1072,"props":10687,"children":10688},{"style":1090},[10689],{"type":45,"value":10690}," first_seen_at,\n",{"type":39,"tag":1072,"props":10692,"children":10693},{"class":1074,"line":7656},[10694,10698,10702,10707],{"type":39,"tag":1072,"props":10695,"children":10696},{"style":1096},[10697],{"type":45,"value":10507},{"type":39,"tag":1072,"props":10699,"children":10700},{"style":1090},[10701],{"type":45,"value":934},{"type":39,"tag":1072,"props":10703,"children":10704},{"style":1096},[10705],{"type":45,"value":10706},"orders_count",{"type":39,"tag":1072,"props":10708,"children":10709},{"style":1090},[10710],{"type":45,"value":7703},{"type":39,"tag":1072,"props":10712,"children":10713},{"class":1074,"line":7684},[10714,10718,10722,10726,10730,10735,10739,10743,10747,10751,10755,10759,10763,10767],{"type":39,"tag":1072,"props":10715,"children":10716},{"style":1096},[10717],{"type":45,"value":7810},{"type":39,"tag":1072,"props":10719,"children":10720},{"style":1090},[10721],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10723,"children":10724},{"style":1096},[10725],{"type":45,"value":10462},{"type":39,"tag":1072,"props":10727,"children":10728},{"style":1090},[10729],{"type":45,"value":934},{"type":39,"tag":1072,"props":10731,"children":10732},{"style":1096},[10733],{"type":45,"value":10734},"total_spent",{"type":39,"tag":1072,"props":10736,"children":10737},{"style":1195},[10738],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10740,"children":10741},{"style":1195},[10742],{"type":45,"value":7837},{"type":39,"tag":1072,"props":10744,"children":10745},{"style":1090},[10746],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10748,"children":10749},{"style":1096},[10750],{"type":45,"value":7846},{"type":39,"tag":1072,"props":10752,"children":10753},{"style":1090},[10754],{"type":45,"value":7851},{"type":39,"tag":1072,"props":10756,"children":10757},{"style":1096},[10758],{"type":45,"value":7856},{"type":39,"tag":1072,"props":10760,"children":10761},{"style":1090},[10762],{"type":45,"value":7861},{"type":39,"tag":1072,"props":10764,"children":10765},{"style":1195},[10766],{"type":45,"value":7866},{"type":39,"tag":1072,"props":10768,"children":10769},{"style":1090},[10770],{"type":45,"value":10771}," shopify_total_spent,\n",{"type":39,"tag":1072,"props":10773,"children":10774},{"class":1074,"line":7706},[10775,10779,10783,10788,10792],{"type":39,"tag":1072,"props":10776,"children":10777},{"style":1096},[10778],{"type":45,"value":10507},{"type":39,"tag":1072,"props":10780,"children":10781},{"style":1090},[10782],{"type":45,"value":934},{"type":39,"tag":1072,"props":10784,"children":10785},{"style":1096},[10786],{"type":45,"value":10787},"tags",{"type":39,"tag":1072,"props":10789,"children":10790},{"style":1195},[10791],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10793,"children":10794},{"style":1090},[10795],{"type":45,"value":10796}," customer_tags,\n",{"type":39,"tag":1072,"props":10798,"children":10799},{"class":1074,"line":7732},[10800,10804,10808,10813,10817],{"type":39,"tag":1072,"props":10801,"children":10802},{"style":1096},[10803],{"type":45,"value":10507},{"type":39,"tag":1072,"props":10805,"children":10806},{"style":1090},[10807],{"type":45,"value":934},{"type":39,"tag":1072,"props":10809,"children":10810},{"style":1096},[10811],{"type":45,"value":10812},"state",{"type":39,"tag":1072,"props":10814,"children":10815},{"style":1195},[10816],{"type":45,"value":7676},{"type":39,"tag":1072,"props":10818,"children":10819},{"style":1090},[10820],{"type":45,"value":10821}," customer_state\n",{"type":39,"tag":1072,"props":10823,"children":10824},{"class":1074,"line":7758},[10825,10829,10833,10837,10842],{"type":39,"tag":1072,"props":10826,"children":10827},{"style":1195},[10828],{"type":45,"value":8227},{"type":39,"tag":1072,"props":10830,"children":10831},{"style":1096},[10832],{"type":45,"value":8232},{"type":39,"tag":1072,"props":10834,"children":10835},{"style":1090},[10836],{"type":45,"value":934},{"type":39,"tag":1072,"props":10838,"children":10839},{"style":1096},[10840],{"type":45,"value":10841},"shopify_customers",{"type":39,"tag":1072,"props":10843,"children":10844},{"style":1090},[10845],{"type":45,"value":10846}," sc\n",{"type":39,"tag":1072,"props":10848,"children":10849},{"class":1074,"line":7783},[10850,10854,10858,10862,10867],{"type":39,"tag":1072,"props":10851,"children":10852},{"style":1195},[10853],{"type":45,"value":10222},{"type":39,"tag":1072,"props":10855,"children":10856},{"style":1096},[10857],{"type":45,"value":8232},{"type":39,"tag":1072,"props":10859,"children":10860},{"style":1090},[10861],{"type":45,"value":934},{"type":39,"tag":1072,"props":10863,"children":10864},{"style":1096},[10865],{"type":45,"value":10866},"stripe_customers",{"type":39,"tag":1072,"props":10868,"children":10869},{"style":1090},[10870],{"type":45,"value":10871}," st\n",{"type":39,"tag":1072,"props":10873,"children":10874},{"class":1074,"line":7804},[10875,10879,10884,10888,10892,10896,10900,10904,10908,10912,10916,10920,10924,10928],{"type":39,"tag":1072,"props":10876,"children":10877},{"style":1195},[10878],{"type":45,"value":8281},{"type":39,"tag":1072,"props":10880,"children":10881},{"style":1096},[10882],{"type":45,"value":10883}," lower",{"type":39,"tag":1072,"props":10885,"children":10886},{"style":1090},[10887],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10889,"children":10890},{"style":1096},[10891],{"type":45,"value":10462},{"type":39,"tag":1072,"props":10893,"children":10894},{"style":1090},[10895],{"type":45,"value":934},{"type":39,"tag":1072,"props":10897,"children":10898},{"style":1096},[10899],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10901,"children":10902},{"style":1090},[10903],{"type":45,"value":8344},{"type":39,"tag":1072,"props":10905,"children":10906},{"style":1195},[10907],{"type":45,"value":8349},{"type":39,"tag":1072,"props":10909,"children":10910},{"style":1096},[10911],{"type":45,"value":10883},{"type":39,"tag":1072,"props":10913,"children":10914},{"style":1090},[10915],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10917,"children":10918},{"style":1096},[10919],{"type":45,"value":10479},{"type":39,"tag":1072,"props":10921,"children":10922},{"style":1090},[10923],{"type":45,"value":934},{"type":39,"tag":1072,"props":10925,"children":10926},{"style":1096},[10927],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10929,"children":10930},{"style":1090},[10931],{"type":45,"value":8372},{"type":39,"tag":1072,"props":10933,"children":10934},{"class":1074,"line":7874},[10935,10939,10944,10948,10952,10956,10960,10964,10968,10972,10976,10980],{"type":39,"tag":1072,"props":10936,"children":10937},{"style":1195},[10938],{"type":45,"value":9200},{"type":39,"tag":1072,"props":10940,"children":10941},{"style":1096},[10942],{"type":45,"value":10943}," COALESCE",{"type":39,"tag":1072,"props":10945,"children":10946},{"style":1090},[10947],{"type":45,"value":7815},{"type":39,"tag":1072,"props":10949,"children":10950},{"style":1096},[10951],{"type":45,"value":10462},{"type":39,"tag":1072,"props":10953,"children":10954},{"style":1090},[10955],{"type":45,"value":934},{"type":39,"tag":1072,"props":10957,"children":10958},{"style":1096},[10959],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10961,"children":10962},{"style":1090},[10963],{"type":45,"value":978},{"type":39,"tag":1072,"props":10965,"children":10966},{"style":1096},[10967],{"type":45,"value":10479},{"type":39,"tag":1072,"props":10969,"children":10970},{"style":1090},[10971],{"type":45,"value":934},{"type":39,"tag":1072,"props":10973,"children":10974},{"style":1096},[10975],{"type":45,"value":7720},{"type":39,"tag":1072,"props":10977,"children":10978},{"style":1090},[10979],{"type":45,"value":8344},{"type":39,"tag":1072,"props":10981,"children":10982},{"style":1195},[10983],{"type":45,"value":10984},"IS NOT NULL\n",{"type":39,"tag":48,"props":10986,"children":10987},{},[10988,10989,10994,10996,11001],{"type":45,"value":10170},{"type":39,"tag":70,"props":10990,"children":10992},{"className":10991},[],[10993],{"type":45,"value":10222},{"type":45,"value":10995}," catches customers who only exist in one system. ",{"type":39,"tag":70,"props":10997,"children":10999},{"className":10998},[],[11000],{"type":45,"value":10208},{"type":45,"value":11002}," gives priority to Shopify's email since it's the primary ecommerce platform.",{"type":39,"tag":85,"props":11004,"children":11006},{"id":11005},"_3-staged-products-stg_productssql",[11007,11009],{"type":45,"value":11008},"3) Staged products - ",{"type":39,"tag":70,"props":11010,"children":11012},{"className":11011},[],[11013],{"type":45,"value":11014},"stg_products.sql",{"type":39,"tag":48,"props":11016,"children":11017},{},[11018,11020,11026,11027,11032],{"type":45,"value":11019},"A clean product catalog. This query uses only standard SQL (",{"type":39,"tag":70,"props":11021,"children":11023},{"className":11022},[],[11024],{"type":45,"value":11025},"CAST",{"type":45,"value":978},{"type":39,"tag":70,"props":11028,"children":11030},{"className":11029},[],[11031],{"type":45,"value":9200},{"type":45,"value":11033},"), so it works identically on every warehouse.",{"type":39,"tag":1023,"props":11035,"children":11037},{"type":11036},"info",[11038],{"type":39,"tag":48,"props":11039,"children":11040},{},[11041,11043,11048,11050,11055,11057,11062],{"type":45,"value":11042},"Shopify product IDs are in GID format (e.g. ",{"type":39,"tag":70,"props":11044,"children":11046},{"className":11045},[],[11047],{"type":45,"value":7262},{"type":45,"value":11049},"). Depending on how your Shopify data lands in the warehouse, the raw ",{"type":39,"tag":70,"props":11051,"children":11053},{"className":11052},[],[11054],{"type":45,"value":7671},{"type":45,"value":11056}," column may need parsing with ",{"type":39,"tag":70,"props":11058,"children":11060},{"className":11059},[],[11061],{"type":45,"value":7270},{"type":45,"value":11063}," to extract the numeric ID.",{"type":39,"tag":48,"props":11065,"children":11066},{},[11067,11068,11077],{"type":45,"value":7413},{"type":39,"tag":97,"props":11069,"children":11070},{},[11071],{"type":39,"tag":70,"props":11072,"children":11074},{"className":11073},[],[11075],{"type":45,"value":11076},"ecommerce\u002Fassets\u002Fstaging\u002Fstg_products.sql",{"type":45,"value":7424},{"type":39,"tag":1062,"props":11079,"children":11081},{"className":7433,"code":11080,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_products\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.shopify_products\ncolumns:\n  - name: product_id\n    type: varchar\n    checks:\n      - name: not_null\n      - name: unique\n@bruin *\u002F\n\nSELECT\n    id AS product_id,\n    title AS product_name,\n    product_type AS category,\n    vendor,\n    status AS product_status,\n    CAST(price AS DECIMAL(12,2)) AS price,  -- column name depends on how your Shopify data is structured; ask Claude Code to check raw.shopify_products\n    tags,\n    created_at,\n    updated_at\nFROM raw.shopify_products\nWHERE status = 'active'\n",[11082],{"type":39,"tag":70,"props":11083,"children":11084},{"__ignoreMap":7},[11085,11092,11100,11107,11114,11121,11128,11136,11143,11151,11158,11165,11172,11179,11186,11193,11200,11217,11234,11251,11259,11276,11330,11338,11346,11354,11374],{"type":39,"tag":1072,"props":11086,"children":11087},{"class":1074,"line":868},[11088],{"type":39,"tag":1072,"props":11089,"children":11090},{"style":7445},[11091],{"type":45,"value":7448},{"type":39,"tag":1072,"props":11093,"children":11094},{"class":1074,"line":476},[11095],{"type":39,"tag":1072,"props":11096,"children":11097},{"style":7445},[11098],{"type":45,"value":11099},"name: staging.stg_products\n",{"type":39,"tag":1072,"props":11101,"children":11102},{"class":1074,"line":483},[11103],{"type":39,"tag":1072,"props":11104,"children":11105},{"style":7445},[11106],{"type":45,"value":7464},{"type":39,"tag":1072,"props":11108,"children":11109},{"class":1074,"line":1626},[11110],{"type":39,"tag":1072,"props":11111,"children":11112},{"style":7445},[11113],{"type":45,"value":7472},{"type":39,"tag":1072,"props":11115,"children":11116},{"class":1074,"line":11},[11117],{"type":39,"tag":1072,"props":11118,"children":11119},{"style":7445},[11120],{"type":45,"value":7480},{"type":39,"tag":1072,"props":11122,"children":11123},{"class":1074,"line":20},[11124],{"type":39,"tag":1072,"props":11125,"children":11126},{"style":7445},[11127],{"type":45,"value":7488},{"type":39,"tag":1072,"props":11129,"children":11130},{"class":1074,"line":1679},[11131],{"type":39,"tag":1072,"props":11132,"children":11133},{"style":7445},[11134],{"type":45,"value":11135},"  - raw.shopify_products\n",{"type":39,"tag":1072,"props":11137,"children":11138},{"class":1074,"line":860},[11139],{"type":39,"tag":1072,"props":11140,"children":11141},{"style":7445},[11142],{"type":45,"value":7512},{"type":39,"tag":1072,"props":11144,"children":11145},{"class":1074,"line":2907},[11146],{"type":39,"tag":1072,"props":11147,"children":11148},{"style":7445},[11149],{"type":45,"value":11150},"  - name: product_id\n",{"type":39,"tag":1072,"props":11152,"children":11153},{"class":1074,"line":7515},[11154],{"type":39,"tag":1072,"props":11155,"children":11156},{"style":7445},[11157],{"type":45,"value":7530},{"type":39,"tag":1072,"props":11159,"children":11160},{"class":1074,"line":7524},[11161],{"type":39,"tag":1072,"props":11162,"children":11163},{"style":7445},[11164],{"type":45,"value":7539},{"type":39,"tag":1072,"props":11166,"children":11167},{"class":1074,"line":7533},[11168],{"type":39,"tag":1072,"props":11169,"children":11170},{"style":7445},[11171],{"type":45,"value":7548},{"type":39,"tag":1072,"props":11173,"children":11174},{"class":1074,"line":7542},[11175],{"type":39,"tag":1072,"props":11176,"children":11177},{"style":7445},[11178],{"type":45,"value":7557},{"type":39,"tag":1072,"props":11180,"children":11181},{"class":1074,"line":7551},[11182],{"type":39,"tag":1072,"props":11183,"children":11184},{"style":7445},[11185],{"type":45,"value":7635},{"type":39,"tag":1072,"props":11187,"children":11188},{"class":1074,"line":2380},[11189],{"type":39,"tag":1072,"props":11190,"children":11191},{"emptyLinePlaceholder":19},[11192],{"type":45,"value":7644},{"type":39,"tag":1072,"props":11194,"children":11195},{"class":1074,"line":7568},[11196],{"type":39,"tag":1072,"props":11197,"children":11198},{"style":1195},[11199],{"type":45,"value":7653},{"type":39,"tag":1072,"props":11201,"children":11202},{"class":1074,"line":7577},[11203,11208,11212],{"type":39,"tag":1072,"props":11204,"children":11205},{"style":1090},[11206],{"type":45,"value":11207},"    id ",{"type":39,"tag":1072,"props":11209,"children":11210},{"style":1195},[11211],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11213,"children":11214},{"style":1090},[11215],{"type":45,"value":11216}," product_id,\n",{"type":39,"tag":1072,"props":11218,"children":11219},{"class":1074,"line":7585},[11220,11225,11229],{"type":39,"tag":1072,"props":11221,"children":11222},{"style":1090},[11223],{"type":45,"value":11224},"    title ",{"type":39,"tag":1072,"props":11226,"children":11227},{"style":1195},[11228],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11230,"children":11231},{"style":1090},[11232],{"type":45,"value":11233}," product_name,\n",{"type":39,"tag":1072,"props":11235,"children":11236},{"class":1074,"line":7593},[11237,11242,11246],{"type":39,"tag":1072,"props":11238,"children":11239},{"style":1090},[11240],{"type":45,"value":11241},"    product_type ",{"type":39,"tag":1072,"props":11243,"children":11244},{"style":1195},[11245],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11247,"children":11248},{"style":1090},[11249],{"type":45,"value":11250}," category,\n",{"type":39,"tag":1072,"props":11252,"children":11253},{"class":1074,"line":7602},[11254],{"type":39,"tag":1072,"props":11255,"children":11256},{"style":1090},[11257],{"type":45,"value":11258},"    vendor,\n",{"type":39,"tag":1072,"props":11260,"children":11261},{"class":1074,"line":7611},[11262,11267,11271],{"type":39,"tag":1072,"props":11263,"children":11264},{"style":1195},[11265],{"type":45,"value":11266},"    status",{"type":39,"tag":1072,"props":11268,"children":11269},{"style":1195},[11270],{"type":45,"value":7676},{"type":39,"tag":1072,"props":11272,"children":11273},{"style":1090},[11274],{"type":45,"value":11275}," product_status,\n",{"type":39,"tag":1072,"props":11277,"children":11278},{"class":1074,"line":7620},[11279,11283,11288,11292,11296,11300,11304,11308,11312,11316,11320,11325],{"type":39,"tag":1072,"props":11280,"children":11281},{"style":1096},[11282],{"type":45,"value":7810},{"type":39,"tag":1072,"props":11284,"children":11285},{"style":1090},[11286],{"type":45,"value":11287},"(price ",{"type":39,"tag":1072,"props":11289,"children":11290},{"style":1195},[11291],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11293,"children":11294},{"style":1195},[11295],{"type":45,"value":7837},{"type":39,"tag":1072,"props":11297,"children":11298},{"style":1090},[11299],{"type":45,"value":7815},{"type":39,"tag":1072,"props":11301,"children":11302},{"style":1096},[11303],{"type":45,"value":7846},{"type":39,"tag":1072,"props":11305,"children":11306},{"style":1090},[11307],{"type":45,"value":7851},{"type":39,"tag":1072,"props":11309,"children":11310},{"style":1096},[11311],{"type":45,"value":7856},{"type":39,"tag":1072,"props":11313,"children":11314},{"style":1090},[11315],{"type":45,"value":7861},{"type":39,"tag":1072,"props":11317,"children":11318},{"style":1195},[11319],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11321,"children":11322},{"style":1090},[11323],{"type":45,"value":11324}," price,  ",{"type":39,"tag":1072,"props":11326,"children":11327},{"style":7445},[11328],{"type":45,"value":11329},"-- column name depends on how your Shopify data is structured; ask Claude Code to check raw.shopify_products\n",{"type":39,"tag":1072,"props":11331,"children":11332},{"class":1074,"line":7629},[11333],{"type":39,"tag":1072,"props":11334,"children":11335},{"style":1090},[11336],{"type":45,"value":11337},"    tags,\n",{"type":39,"tag":1072,"props":11339,"children":11340},{"class":1074,"line":7638},[11341],{"type":39,"tag":1072,"props":11342,"children":11343},{"style":1090},[11344],{"type":45,"value":11345},"    created_at,\n",{"type":39,"tag":1072,"props":11347,"children":11348},{"class":1074,"line":7647},[11349],{"type":39,"tag":1072,"props":11350,"children":11351},{"style":1090},[11352],{"type":45,"value":11353},"    updated_at\n",{"type":39,"tag":1072,"props":11355,"children":11356},{"class":1074,"line":7656},[11357,11361,11365,11369],{"type":39,"tag":1072,"props":11358,"children":11359},{"style":1195},[11360],{"type":45,"value":8227},{"type":39,"tag":1072,"props":11362,"children":11363},{"style":1096},[11364],{"type":45,"value":8232},{"type":39,"tag":1072,"props":11366,"children":11367},{"style":1090},[11368],{"type":45,"value":934},{"type":39,"tag":1072,"props":11370,"children":11371},{"style":1096},[11372],{"type":45,"value":11373},"shopify_products\n",{"type":39,"tag":1072,"props":11375,"children":11376},{"class":1074,"line":7684},[11377,11381,11386,11390],{"type":39,"tag":1072,"props":11378,"children":11379},{"style":1195},[11380],{"type":45,"value":9200},{"type":39,"tag":1072,"props":11382,"children":11383},{"style":1195},[11384],{"type":45,"value":11385}," status",{"type":39,"tag":1072,"props":11387,"children":11388},{"style":1195},[11389],{"type":45,"value":8299},{"type":39,"tag":1072,"props":11391,"children":11392},{"style":1084},[11393],{"type":45,"value":11394}," 'active'\n",{"type":39,"tag":85,"props":11396,"children":11398},{"id":11397},"_4-staged-marketing-spend-stg_marketing_spendsql",[11399,11401],{"type":45,"value":11400},"4) Staged marketing spend - ",{"type":39,"tag":70,"props":11402,"children":11404},{"className":11403},[],[11405],{"type":45,"value":11406},"stg_marketing_spend.sql",{"type":39,"tag":48,"props":11408,"children":11409},{},[11410],{"type":45,"value":11411},"A unified marketing performance table that combines your ad platform and email marketing data into a common format. This query varies by warehouse (date functions), by marketing tool (email side), and by ads platform (ads side).",{"type":39,"tag":48,"props":11413,"children":11414},{},[11415,11416,11425],{"type":45,"value":7413},{"type":39,"tag":97,"props":11417,"children":11418},{},[11419],{"type":39,"tag":70,"props":11420,"children":11422},{"className":11421},[],[11423],{"type":45,"value":11424},"ecommerce\u002Fassets\u002Fstaging\u002Fstg_marketing_spend.sql",{"type":45,"value":7424},{"type":39,"tag":48,"props":11427,"children":11428},{},[11429,11431,11437,11439,11445,11446,11452],{"type":45,"value":11430},"The ads portion of this query depends on which ad platform you connected in Step 2. Each platform uses its own table name and date column, so select the tab that matches your ad platform. The date casting also differs by warehouse - adjust the ",{"type":39,"tag":70,"props":11432,"children":11434},{"className":11433},[],[11435],{"type":45,"value":11436},"toDate()",{"type":45,"value":11438}," \u002F ",{"type":39,"tag":70,"props":11440,"children":11442},{"className":11441},[],[11443],{"type":45,"value":11444},"DATE()",{"type":45,"value":11438},{"type":39,"tag":70,"props":11447,"children":11449},{"className":11448},[],[11450],{"type":45,"value":11451},"::DATE",{"type":45,"value":11453}," wrapper to match yours (see the warehouse tabs in the web sessions section below for examples).",{"type":39,"tag":2730,"props":11455,"children":11457},{"id":11456},"ads-portion",[11458],{"type":45,"value":11459},"Ads portion",{"type":39,"tag":1242,"props":11461,"children":11462},{":variants":4997,"group":4998},[11463,11811,12150],{"type":39,"tag":1248,"props":11464,"children":11465},{"v-slot:facebook-ads":7},[11466],{"type":39,"tag":1062,"props":11467,"children":11469},{"className":7433,"code":11468,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_marketing_spend\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.facebook_ad_insights\ncolumns:\n  - name: spend_date\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\n-- Facebook Ads spend\nSELECT\n    DATE(date_start) AS spend_date,       -- use toDate() for ClickHouse, ::DATE for Snowflake\n    'paid_ads' AS channel,\n    campaign_name,\n    CAST(spend AS DECIMAL(12,2)) AS spend,\n    CAST(impressions AS INTEGER) AS impressions,\n    CAST(clicks AS INTEGER) AS clicks,\n    CAST(conversions AS INTEGER) AS conversions\nFROM raw.facebook_ad_insights\n",[11470],{"type":39,"tag":70,"props":11471,"children":11472},{"__ignoreMap":7},[11473,11480,11488,11495,11502,11509,11516,11524,11531,11539,11547,11554,11561,11568,11575,11583,11590,11617,11634,11642,11691,11725,11758,11791],{"type":39,"tag":1072,"props":11474,"children":11475},{"class":1074,"line":868},[11476],{"type":39,"tag":1072,"props":11477,"children":11478},{"style":7445},[11479],{"type":45,"value":7448},{"type":39,"tag":1072,"props":11481,"children":11482},{"class":1074,"line":476},[11483],{"type":39,"tag":1072,"props":11484,"children":11485},{"style":7445},[11486],{"type":45,"value":11487},"name: staging.stg_marketing_spend\n",{"type":39,"tag":1072,"props":11489,"children":11490},{"class":1074,"line":483},[11491],{"type":39,"tag":1072,"props":11492,"children":11493},{"style":7445},[11494],{"type":45,"value":7464},{"type":39,"tag":1072,"props":11496,"children":11497},{"class":1074,"line":1626},[11498],{"type":39,"tag":1072,"props":11499,"children":11500},{"style":7445},[11501],{"type":45,"value":7472},{"type":39,"tag":1072,"props":11503,"children":11504},{"class":1074,"line":11},[11505],{"type":39,"tag":1072,"props":11506,"children":11507},{"style":7445},[11508],{"type":45,"value":7480},{"type":39,"tag":1072,"props":11510,"children":11511},{"class":1074,"line":20},[11512],{"type":39,"tag":1072,"props":11513,"children":11514},{"style":7445},[11515],{"type":45,"value":7488},{"type":39,"tag":1072,"props":11517,"children":11518},{"class":1074,"line":1679},[11519],{"type":39,"tag":1072,"props":11520,"children":11521},{"style":7445},[11522],{"type":45,"value":11523},"  - raw.facebook_ad_insights\n",{"type":39,"tag":1072,"props":11525,"children":11526},{"class":1074,"line":860},[11527],{"type":39,"tag":1072,"props":11528,"children":11529},{"style":7445},[11530],{"type":45,"value":7512},{"type":39,"tag":1072,"props":11532,"children":11533},{"class":1074,"line":2907},[11534],{"type":39,"tag":1072,"props":11535,"children":11536},{"style":7445},[11537],{"type":45,"value":11538},"  - name: spend_date\n",{"type":39,"tag":1072,"props":11540,"children":11541},{"class":1074,"line":7515},[11542],{"type":39,"tag":1072,"props":11543,"children":11544},{"style":7445},[11545],{"type":45,"value":11546},"    type: date\n",{"type":39,"tag":1072,"props":11548,"children":11549},{"class":1074,"line":7524},[11550],{"type":39,"tag":1072,"props":11551,"children":11552},{"style":7445},[11553],{"type":45,"value":7539},{"type":39,"tag":1072,"props":11555,"children":11556},{"class":1074,"line":7533},[11557],{"type":39,"tag":1072,"props":11558,"children":11559},{"style":7445},[11560],{"type":45,"value":7548},{"type":39,"tag":1072,"props":11562,"children":11563},{"class":1074,"line":7542},[11564],{"type":39,"tag":1072,"props":11565,"children":11566},{"style":7445},[11567],{"type":45,"value":7635},{"type":39,"tag":1072,"props":11569,"children":11570},{"class":1074,"line":7551},[11571],{"type":39,"tag":1072,"props":11572,"children":11573},{"emptyLinePlaceholder":19},[11574],{"type":45,"value":7644},{"type":39,"tag":1072,"props":11576,"children":11577},{"class":1074,"line":2380},[11578],{"type":39,"tag":1072,"props":11579,"children":11580},{"style":7445},[11581],{"type":45,"value":11582},"-- Facebook Ads spend\n",{"type":39,"tag":1072,"props":11584,"children":11585},{"class":1074,"line":7568},[11586],{"type":39,"tag":1072,"props":11587,"children":11588},{"style":1195},[11589],{"type":45,"value":7653},{"type":39,"tag":1072,"props":11591,"children":11592},{"class":1074,"line":7577},[11593,11598,11603,11607,11612],{"type":39,"tag":1072,"props":11594,"children":11595},{"style":1195},[11596],{"type":45,"value":11597},"    DATE",{"type":39,"tag":1072,"props":11599,"children":11600},{"style":1090},[11601],{"type":45,"value":11602},"(date_start) ",{"type":39,"tag":1072,"props":11604,"children":11605},{"style":1195},[11606],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11608,"children":11609},{"style":1090},[11610],{"type":45,"value":11611}," spend_date,       ",{"type":39,"tag":1072,"props":11613,"children":11614},{"style":7445},[11615],{"type":45,"value":11616},"-- use toDate() for ClickHouse, ::DATE for Snowflake\n",{"type":39,"tag":1072,"props":11618,"children":11619},{"class":1074,"line":7585},[11620,11625,11629],{"type":39,"tag":1072,"props":11621,"children":11622},{"style":1084},[11623],{"type":45,"value":11624},"    'paid_ads'",{"type":39,"tag":1072,"props":11626,"children":11627},{"style":1195},[11628],{"type":45,"value":7676},{"type":39,"tag":1072,"props":11630,"children":11631},{"style":1090},[11632],{"type":45,"value":11633}," channel,\n",{"type":39,"tag":1072,"props":11635,"children":11636},{"class":1074,"line":7593},[11637],{"type":39,"tag":1072,"props":11638,"children":11639},{"style":1090},[11640],{"type":45,"value":11641},"    campaign_name,\n",{"type":39,"tag":1072,"props":11643,"children":11644},{"class":1074,"line":7602},[11645,11649,11654,11658,11662,11666,11670,11674,11678,11682,11686],{"type":39,"tag":1072,"props":11646,"children":11647},{"style":1096},[11648],{"type":45,"value":7810},{"type":39,"tag":1072,"props":11650,"children":11651},{"style":1090},[11652],{"type":45,"value":11653},"(spend ",{"type":39,"tag":1072,"props":11655,"children":11656},{"style":1195},[11657],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11659,"children":11660},{"style":1195},[11661],{"type":45,"value":7837},{"type":39,"tag":1072,"props":11663,"children":11664},{"style":1090},[11665],{"type":45,"value":7815},{"type":39,"tag":1072,"props":11667,"children":11668},{"style":1096},[11669],{"type":45,"value":7846},{"type":39,"tag":1072,"props":11671,"children":11672},{"style":1090},[11673],{"type":45,"value":7851},{"type":39,"tag":1072,"props":11675,"children":11676},{"style":1096},[11677],{"type":45,"value":7856},{"type":39,"tag":1072,"props":11679,"children":11680},{"style":1090},[11681],{"type":45,"value":7861},{"type":39,"tag":1072,"props":11683,"children":11684},{"style":1195},[11685],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11687,"children":11688},{"style":1090},[11689],{"type":45,"value":11690}," spend,\n",{"type":39,"tag":1072,"props":11692,"children":11693},{"class":1074,"line":7611},[11694,11698,11703,11707,11712,11716,11720],{"type":39,"tag":1072,"props":11695,"children":11696},{"style":1096},[11697],{"type":45,"value":7810},{"type":39,"tag":1072,"props":11699,"children":11700},{"style":1090},[11701],{"type":45,"value":11702},"(impressions ",{"type":39,"tag":1072,"props":11704,"children":11705},{"style":1195},[11706],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11708,"children":11709},{"style":1195},[11710],{"type":45,"value":11711}," INTEGER",{"type":39,"tag":1072,"props":11713,"children":11714},{"style":1090},[11715],{"type":45,"value":8344},{"type":39,"tag":1072,"props":11717,"children":11718},{"style":1195},[11719],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11721,"children":11722},{"style":1090},[11723],{"type":45,"value":11724}," impressions,\n",{"type":39,"tag":1072,"props":11726,"children":11727},{"class":1074,"line":7620},[11728,11732,11737,11741,11745,11749,11753],{"type":39,"tag":1072,"props":11729,"children":11730},{"style":1096},[11731],{"type":45,"value":7810},{"type":39,"tag":1072,"props":11733,"children":11734},{"style":1090},[11735],{"type":45,"value":11736},"(clicks ",{"type":39,"tag":1072,"props":11738,"children":11739},{"style":1195},[11740],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11742,"children":11743},{"style":1195},[11744],{"type":45,"value":11711},{"type":39,"tag":1072,"props":11746,"children":11747},{"style":1090},[11748],{"type":45,"value":8344},{"type":39,"tag":1072,"props":11750,"children":11751},{"style":1195},[11752],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11754,"children":11755},{"style":1090},[11756],{"type":45,"value":11757}," clicks,\n",{"type":39,"tag":1072,"props":11759,"children":11760},{"class":1074,"line":7629},[11761,11765,11770,11774,11778,11782,11786],{"type":39,"tag":1072,"props":11762,"children":11763},{"style":1096},[11764],{"type":45,"value":7810},{"type":39,"tag":1072,"props":11766,"children":11767},{"style":1090},[11768],{"type":45,"value":11769},"(conversions ",{"type":39,"tag":1072,"props":11771,"children":11772},{"style":1195},[11773],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11775,"children":11776},{"style":1195},[11777],{"type":45,"value":11711},{"type":39,"tag":1072,"props":11779,"children":11780},{"style":1090},[11781],{"type":45,"value":8344},{"type":39,"tag":1072,"props":11783,"children":11784},{"style":1195},[11785],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11787,"children":11788},{"style":1090},[11789],{"type":45,"value":11790}," conversions\n",{"type":39,"tag":1072,"props":11792,"children":11793},{"class":1074,"line":7638},[11794,11798,11802,11806],{"type":39,"tag":1072,"props":11795,"children":11796},{"style":1195},[11797],{"type":45,"value":8227},{"type":39,"tag":1072,"props":11799,"children":11800},{"style":1096},[11801],{"type":45,"value":8232},{"type":39,"tag":1072,"props":11803,"children":11804},{"style":1090},[11805],{"type":45,"value":934},{"type":39,"tag":1072,"props":11807,"children":11808},{"style":1096},[11809],{"type":45,"value":11810},"facebook_ad_insights\n",{"type":39,"tag":1248,"props":11812,"children":11813},{"v-slot:google-ads":7},[11814],{"type":39,"tag":1062,"props":11815,"children":11817},{"className":7433,"code":11816,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_marketing_spend\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.google_ad_insights\ncolumns:\n  - name: spend_date\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\n-- Google Ads spend\nSELECT\n    DATE(date) AS spend_date,             -- use toDate() for ClickHouse, ::DATE for Snowflake\n    'paid_ads' AS channel,\n    campaign_name,\n    CAST(spend AS DECIMAL(12,2)) AS spend,\n    CAST(impressions AS INTEGER) AS impressions,\n    CAST(clicks AS INTEGER) AS clicks,\n    CAST(conversions AS INTEGER) AS conversions\nFROM raw.google_ad_insights\n",[11818],{"type":39,"tag":70,"props":11819,"children":11820},{"__ignoreMap":7},[11821,11828,11835,11842,11849,11856,11863,11871,11878,11885,11892,11899,11906,11913,11920,11928,11935,11968,11983,11990,12037,12068,12099,12130],{"type":39,"tag":1072,"props":11822,"children":11823},{"class":1074,"line":868},[11824],{"type":39,"tag":1072,"props":11825,"children":11826},{"style":7445},[11827],{"type":45,"value":7448},{"type":39,"tag":1072,"props":11829,"children":11830},{"class":1074,"line":476},[11831],{"type":39,"tag":1072,"props":11832,"children":11833},{"style":7445},[11834],{"type":45,"value":11487},{"type":39,"tag":1072,"props":11836,"children":11837},{"class":1074,"line":483},[11838],{"type":39,"tag":1072,"props":11839,"children":11840},{"style":7445},[11841],{"type":45,"value":7464},{"type":39,"tag":1072,"props":11843,"children":11844},{"class":1074,"line":1626},[11845],{"type":39,"tag":1072,"props":11846,"children":11847},{"style":7445},[11848],{"type":45,"value":7472},{"type":39,"tag":1072,"props":11850,"children":11851},{"class":1074,"line":11},[11852],{"type":39,"tag":1072,"props":11853,"children":11854},{"style":7445},[11855],{"type":45,"value":7480},{"type":39,"tag":1072,"props":11857,"children":11858},{"class":1074,"line":20},[11859],{"type":39,"tag":1072,"props":11860,"children":11861},{"style":7445},[11862],{"type":45,"value":7488},{"type":39,"tag":1072,"props":11864,"children":11865},{"class":1074,"line":1679},[11866],{"type":39,"tag":1072,"props":11867,"children":11868},{"style":7445},[11869],{"type":45,"value":11870},"  - raw.google_ad_insights\n",{"type":39,"tag":1072,"props":11872,"children":11873},{"class":1074,"line":860},[11874],{"type":39,"tag":1072,"props":11875,"children":11876},{"style":7445},[11877],{"type":45,"value":7512},{"type":39,"tag":1072,"props":11879,"children":11880},{"class":1074,"line":2907},[11881],{"type":39,"tag":1072,"props":11882,"children":11883},{"style":7445},[11884],{"type":45,"value":11538},{"type":39,"tag":1072,"props":11886,"children":11887},{"class":1074,"line":7515},[11888],{"type":39,"tag":1072,"props":11889,"children":11890},{"style":7445},[11891],{"type":45,"value":11546},{"type":39,"tag":1072,"props":11893,"children":11894},{"class":1074,"line":7524},[11895],{"type":39,"tag":1072,"props":11896,"children":11897},{"style":7445},[11898],{"type":45,"value":7539},{"type":39,"tag":1072,"props":11900,"children":11901},{"class":1074,"line":7533},[11902],{"type":39,"tag":1072,"props":11903,"children":11904},{"style":7445},[11905],{"type":45,"value":7548},{"type":39,"tag":1072,"props":11907,"children":11908},{"class":1074,"line":7542},[11909],{"type":39,"tag":1072,"props":11910,"children":11911},{"style":7445},[11912],{"type":45,"value":7635},{"type":39,"tag":1072,"props":11914,"children":11915},{"class":1074,"line":7551},[11916],{"type":39,"tag":1072,"props":11917,"children":11918},{"emptyLinePlaceholder":19},[11919],{"type":45,"value":7644},{"type":39,"tag":1072,"props":11921,"children":11922},{"class":1074,"line":2380},[11923],{"type":39,"tag":1072,"props":11924,"children":11925},{"style":7445},[11926],{"type":45,"value":11927},"-- Google Ads spend\n",{"type":39,"tag":1072,"props":11929,"children":11930},{"class":1074,"line":7568},[11931],{"type":39,"tag":1072,"props":11932,"children":11933},{"style":1195},[11934],{"type":45,"value":7653},{"type":39,"tag":1072,"props":11936,"children":11937},{"class":1074,"line":7577},[11938,11942,11946,11951,11955,11959,11964],{"type":39,"tag":1072,"props":11939,"children":11940},{"style":1195},[11941],{"type":45,"value":11597},{"type":39,"tag":1072,"props":11943,"children":11944},{"style":1090},[11945],{"type":45,"value":7815},{"type":39,"tag":1072,"props":11947,"children":11948},{"style":1195},[11949],{"type":45,"value":11950},"date",{"type":39,"tag":1072,"props":11952,"children":11953},{"style":1090},[11954],{"type":45,"value":8344},{"type":39,"tag":1072,"props":11956,"children":11957},{"style":1195},[11958],{"type":45,"value":7866},{"type":39,"tag":1072,"props":11960,"children":11961},{"style":1090},[11962],{"type":45,"value":11963}," spend_date,             ",{"type":39,"tag":1072,"props":11965,"children":11966},{"style":7445},[11967],{"type":45,"value":11616},{"type":39,"tag":1072,"props":11969,"children":11970},{"class":1074,"line":7585},[11971,11975,11979],{"type":39,"tag":1072,"props":11972,"children":11973},{"style":1084},[11974],{"type":45,"value":11624},{"type":39,"tag":1072,"props":11976,"children":11977},{"style":1195},[11978],{"type":45,"value":7676},{"type":39,"tag":1072,"props":11980,"children":11981},{"style":1090},[11982],{"type":45,"value":11633},{"type":39,"tag":1072,"props":11984,"children":11985},{"class":1074,"line":7593},[11986],{"type":39,"tag":1072,"props":11987,"children":11988},{"style":1090},[11989],{"type":45,"value":11641},{"type":39,"tag":1072,"props":11991,"children":11992},{"class":1074,"line":7602},[11993,11997,12001,12005,12009,12013,12017,12021,12025,12029,12033],{"type":39,"tag":1072,"props":11994,"children":11995},{"style":1096},[11996],{"type":45,"value":7810},{"type":39,"tag":1072,"props":11998,"children":11999},{"style":1090},[12000],{"type":45,"value":11653},{"type":39,"tag":1072,"props":12002,"children":12003},{"style":1195},[12004],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12006,"children":12007},{"style":1195},[12008],{"type":45,"value":7837},{"type":39,"tag":1072,"props":12010,"children":12011},{"style":1090},[12012],{"type":45,"value":7815},{"type":39,"tag":1072,"props":12014,"children":12015},{"style":1096},[12016],{"type":45,"value":7846},{"type":39,"tag":1072,"props":12018,"children":12019},{"style":1090},[12020],{"type":45,"value":7851},{"type":39,"tag":1072,"props":12022,"children":12023},{"style":1096},[12024],{"type":45,"value":7856},{"type":39,"tag":1072,"props":12026,"children":12027},{"style":1090},[12028],{"type":45,"value":7861},{"type":39,"tag":1072,"props":12030,"children":12031},{"style":1195},[12032],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12034,"children":12035},{"style":1090},[12036],{"type":45,"value":11690},{"type":39,"tag":1072,"props":12038,"children":12039},{"class":1074,"line":7611},[12040,12044,12048,12052,12056,12060,12064],{"type":39,"tag":1072,"props":12041,"children":12042},{"style":1096},[12043],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12045,"children":12046},{"style":1090},[12047],{"type":45,"value":11702},{"type":39,"tag":1072,"props":12049,"children":12050},{"style":1195},[12051],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12053,"children":12054},{"style":1195},[12055],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12057,"children":12058},{"style":1090},[12059],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12061,"children":12062},{"style":1195},[12063],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12065,"children":12066},{"style":1090},[12067],{"type":45,"value":11724},{"type":39,"tag":1072,"props":12069,"children":12070},{"class":1074,"line":7620},[12071,12075,12079,12083,12087,12091,12095],{"type":39,"tag":1072,"props":12072,"children":12073},{"style":1096},[12074],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12076,"children":12077},{"style":1090},[12078],{"type":45,"value":11736},{"type":39,"tag":1072,"props":12080,"children":12081},{"style":1195},[12082],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12084,"children":12085},{"style":1195},[12086],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12088,"children":12089},{"style":1090},[12090],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12092,"children":12093},{"style":1195},[12094],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12096,"children":12097},{"style":1090},[12098],{"type":45,"value":11757},{"type":39,"tag":1072,"props":12100,"children":12101},{"class":1074,"line":7629},[12102,12106,12110,12114,12118,12122,12126],{"type":39,"tag":1072,"props":12103,"children":12104},{"style":1096},[12105],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12107,"children":12108},{"style":1090},[12109],{"type":45,"value":11769},{"type":39,"tag":1072,"props":12111,"children":12112},{"style":1195},[12113],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12115,"children":12116},{"style":1195},[12117],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12119,"children":12120},{"style":1090},[12121],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12123,"children":12124},{"style":1195},[12125],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12127,"children":12128},{"style":1090},[12129],{"type":45,"value":11790},{"type":39,"tag":1072,"props":12131,"children":12132},{"class":1074,"line":7638},[12133,12137,12141,12145],{"type":39,"tag":1072,"props":12134,"children":12135},{"style":1195},[12136],{"type":45,"value":8227},{"type":39,"tag":1072,"props":12138,"children":12139},{"style":1096},[12140],{"type":45,"value":8232},{"type":39,"tag":1072,"props":12142,"children":12143},{"style":1090},[12144],{"type":45,"value":934},{"type":39,"tag":1072,"props":12146,"children":12147},{"style":1096},[12148],{"type":45,"value":12149},"google_ad_insights\n",{"type":39,"tag":1248,"props":12151,"children":12152},{"v-slot:tiktok-ads":7},[12153],{"type":39,"tag":1062,"props":12154,"children":12156},{"className":7433,"code":12155,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_marketing_spend\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.tiktok_ad_insights\ncolumns:\n  - name: spend_date\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\n-- TikTok Ads spend\nSELECT\n    DATE(stat_datetime) AS spend_date,    -- use toDate() for ClickHouse, ::DATE for Snowflake\n    'paid_ads' AS channel,\n    campaign_name,\n    CAST(spend AS DECIMAL(12,2)) AS spend,\n    CAST(impressions AS INTEGER) AS impressions,\n    CAST(clicks AS INTEGER) AS clicks,\n    CAST(conversions AS INTEGER) AS conversions\nFROM raw.tiktok_ad_insights\n",[12157],{"type":39,"tag":70,"props":12158,"children":12159},{"__ignoreMap":7},[12160,12167,12174,12181,12188,12195,12202,12210,12217,12224,12231,12238,12245,12252,12259,12267,12274,12299,12314,12321,12368,12399,12430,12461],{"type":39,"tag":1072,"props":12161,"children":12162},{"class":1074,"line":868},[12163],{"type":39,"tag":1072,"props":12164,"children":12165},{"style":7445},[12166],{"type":45,"value":7448},{"type":39,"tag":1072,"props":12168,"children":12169},{"class":1074,"line":476},[12170],{"type":39,"tag":1072,"props":12171,"children":12172},{"style":7445},[12173],{"type":45,"value":11487},{"type":39,"tag":1072,"props":12175,"children":12176},{"class":1074,"line":483},[12177],{"type":39,"tag":1072,"props":12178,"children":12179},{"style":7445},[12180],{"type":45,"value":7464},{"type":39,"tag":1072,"props":12182,"children":12183},{"class":1074,"line":1626},[12184],{"type":39,"tag":1072,"props":12185,"children":12186},{"style":7445},[12187],{"type":45,"value":7472},{"type":39,"tag":1072,"props":12189,"children":12190},{"class":1074,"line":11},[12191],{"type":39,"tag":1072,"props":12192,"children":12193},{"style":7445},[12194],{"type":45,"value":7480},{"type":39,"tag":1072,"props":12196,"children":12197},{"class":1074,"line":20},[12198],{"type":39,"tag":1072,"props":12199,"children":12200},{"style":7445},[12201],{"type":45,"value":7488},{"type":39,"tag":1072,"props":12203,"children":12204},{"class":1074,"line":1679},[12205],{"type":39,"tag":1072,"props":12206,"children":12207},{"style":7445},[12208],{"type":45,"value":12209},"  - raw.tiktok_ad_insights\n",{"type":39,"tag":1072,"props":12211,"children":12212},{"class":1074,"line":860},[12213],{"type":39,"tag":1072,"props":12214,"children":12215},{"style":7445},[12216],{"type":45,"value":7512},{"type":39,"tag":1072,"props":12218,"children":12219},{"class":1074,"line":2907},[12220],{"type":39,"tag":1072,"props":12221,"children":12222},{"style":7445},[12223],{"type":45,"value":11538},{"type":39,"tag":1072,"props":12225,"children":12226},{"class":1074,"line":7515},[12227],{"type":39,"tag":1072,"props":12228,"children":12229},{"style":7445},[12230],{"type":45,"value":11546},{"type":39,"tag":1072,"props":12232,"children":12233},{"class":1074,"line":7524},[12234],{"type":39,"tag":1072,"props":12235,"children":12236},{"style":7445},[12237],{"type":45,"value":7539},{"type":39,"tag":1072,"props":12239,"children":12240},{"class":1074,"line":7533},[12241],{"type":39,"tag":1072,"props":12242,"children":12243},{"style":7445},[12244],{"type":45,"value":7548},{"type":39,"tag":1072,"props":12246,"children":12247},{"class":1074,"line":7542},[12248],{"type":39,"tag":1072,"props":12249,"children":12250},{"style":7445},[12251],{"type":45,"value":7635},{"type":39,"tag":1072,"props":12253,"children":12254},{"class":1074,"line":7551},[12255],{"type":39,"tag":1072,"props":12256,"children":12257},{"emptyLinePlaceholder":19},[12258],{"type":45,"value":7644},{"type":39,"tag":1072,"props":12260,"children":12261},{"class":1074,"line":2380},[12262],{"type":39,"tag":1072,"props":12263,"children":12264},{"style":7445},[12265],{"type":45,"value":12266},"-- TikTok Ads spend\n",{"type":39,"tag":1072,"props":12268,"children":12269},{"class":1074,"line":7568},[12270],{"type":39,"tag":1072,"props":12271,"children":12272},{"style":1195},[12273],{"type":45,"value":7653},{"type":39,"tag":1072,"props":12275,"children":12276},{"class":1074,"line":7577},[12277,12281,12286,12290,12295],{"type":39,"tag":1072,"props":12278,"children":12279},{"style":1195},[12280],{"type":45,"value":11597},{"type":39,"tag":1072,"props":12282,"children":12283},{"style":1090},[12284],{"type":45,"value":12285},"(stat_datetime) ",{"type":39,"tag":1072,"props":12287,"children":12288},{"style":1195},[12289],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12291,"children":12292},{"style":1090},[12293],{"type":45,"value":12294}," spend_date,    ",{"type":39,"tag":1072,"props":12296,"children":12297},{"style":7445},[12298],{"type":45,"value":11616},{"type":39,"tag":1072,"props":12300,"children":12301},{"class":1074,"line":7585},[12302,12306,12310],{"type":39,"tag":1072,"props":12303,"children":12304},{"style":1084},[12305],{"type":45,"value":11624},{"type":39,"tag":1072,"props":12307,"children":12308},{"style":1195},[12309],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12311,"children":12312},{"style":1090},[12313],{"type":45,"value":11633},{"type":39,"tag":1072,"props":12315,"children":12316},{"class":1074,"line":7593},[12317],{"type":39,"tag":1072,"props":12318,"children":12319},{"style":1090},[12320],{"type":45,"value":11641},{"type":39,"tag":1072,"props":12322,"children":12323},{"class":1074,"line":7602},[12324,12328,12332,12336,12340,12344,12348,12352,12356,12360,12364],{"type":39,"tag":1072,"props":12325,"children":12326},{"style":1096},[12327],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12329,"children":12330},{"style":1090},[12331],{"type":45,"value":11653},{"type":39,"tag":1072,"props":12333,"children":12334},{"style":1195},[12335],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12337,"children":12338},{"style":1195},[12339],{"type":45,"value":7837},{"type":39,"tag":1072,"props":12341,"children":12342},{"style":1090},[12343],{"type":45,"value":7815},{"type":39,"tag":1072,"props":12345,"children":12346},{"style":1096},[12347],{"type":45,"value":7846},{"type":39,"tag":1072,"props":12349,"children":12350},{"style":1090},[12351],{"type":45,"value":7851},{"type":39,"tag":1072,"props":12353,"children":12354},{"style":1096},[12355],{"type":45,"value":7856},{"type":39,"tag":1072,"props":12357,"children":12358},{"style":1090},[12359],{"type":45,"value":7861},{"type":39,"tag":1072,"props":12361,"children":12362},{"style":1195},[12363],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12365,"children":12366},{"style":1090},[12367],{"type":45,"value":11690},{"type":39,"tag":1072,"props":12369,"children":12370},{"class":1074,"line":7611},[12371,12375,12379,12383,12387,12391,12395],{"type":39,"tag":1072,"props":12372,"children":12373},{"style":1096},[12374],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12376,"children":12377},{"style":1090},[12378],{"type":45,"value":11702},{"type":39,"tag":1072,"props":12380,"children":12381},{"style":1195},[12382],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12384,"children":12385},{"style":1195},[12386],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12388,"children":12389},{"style":1090},[12390],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12392,"children":12393},{"style":1195},[12394],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12396,"children":12397},{"style":1090},[12398],{"type":45,"value":11724},{"type":39,"tag":1072,"props":12400,"children":12401},{"class":1074,"line":7620},[12402,12406,12410,12414,12418,12422,12426],{"type":39,"tag":1072,"props":12403,"children":12404},{"style":1096},[12405],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12407,"children":12408},{"style":1090},[12409],{"type":45,"value":11736},{"type":39,"tag":1072,"props":12411,"children":12412},{"style":1195},[12413],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12415,"children":12416},{"style":1195},[12417],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12419,"children":12420},{"style":1090},[12421],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12423,"children":12424},{"style":1195},[12425],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12427,"children":12428},{"style":1090},[12429],{"type":45,"value":11757},{"type":39,"tag":1072,"props":12431,"children":12432},{"class":1074,"line":7629},[12433,12437,12441,12445,12449,12453,12457],{"type":39,"tag":1072,"props":12434,"children":12435},{"style":1096},[12436],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12438,"children":12439},{"style":1090},[12440],{"type":45,"value":11769},{"type":39,"tag":1072,"props":12442,"children":12443},{"style":1195},[12444],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12446,"children":12447},{"style":1195},[12448],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12450,"children":12451},{"style":1090},[12452],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12454,"children":12455},{"style":1195},[12456],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12458,"children":12459},{"style":1090},[12460],{"type":45,"value":11790},{"type":39,"tag":1072,"props":12462,"children":12463},{"class":1074,"line":7638},[12464,12468,12472,12476],{"type":39,"tag":1072,"props":12465,"children":12466},{"style":1195},[12467],{"type":45,"value":8227},{"type":39,"tag":1072,"props":12469,"children":12470},{"style":1096},[12471],{"type":45,"value":8232},{"type":39,"tag":1072,"props":12473,"children":12474},{"style":1090},[12475],{"type":45,"value":934},{"type":39,"tag":1072,"props":12477,"children":12478},{"style":1096},[12479],{"type":45,"value":12480},"tiktok_ad_insights\n",{"type":39,"tag":2730,"props":12482,"children":12484},{"id":12483},"email-marketing-portion",[12485],{"type":45,"value":12486},"Email marketing portion",{"type":39,"tag":48,"props":12488,"children":12489},{},[12490,12492,12498],{"type":45,"value":12491},"The email side of the query uses ",{"type":39,"tag":70,"props":12493,"children":12495},{"className":12494},[],[12496],{"type":45,"value":12497},"UNION ALL",{"type":45,"value":12499}," to append email campaign data below the ads data. The columns and table names differ by email platform:",{"type":39,"tag":1242,"props":12501,"children":12502},{":variants":4143,"group":4144},[12503,12849],{"type":39,"tag":1248,"props":12504,"children":12505},{"v-slot:klaviyo":7},[12506,12517,12822],{"type":39,"tag":48,"props":12507,"children":12508},{},[12509,12511,12516],{"type":45,"value":12510},"Append this to the ads query above with ",{"type":39,"tag":70,"props":12512,"children":12514},{"className":12513},[],[12515],{"type":45,"value":12497},{"type":45,"value":7424},{"type":39,"tag":1062,"props":12518,"children":12520},{"className":7433,"code":12519,"language":7435,"meta":7,"style":7},"UNION ALL\n\n-- Klaviyo email campaigns (no direct spend, but track engagement)\nSELECT\n    send_time::date AS spend_date,   -- adjust cast for your warehouse\n    'email' AS channel,\n    name AS campaign_name,\n    0.00 AS spend,\n    num_recipients AS impressions,\n    CAST(click_count AS INTEGER) AS clicks,\n    CAST(conversion_count AS INTEGER) AS conversions\nFROM raw.klaviyo_campaigns kc\nLEFT JOIN raw.klaviyo_metrics km\n    ON kc.id = km.campaign_id\nWHERE send_time IS NOT NULL\n",[12521],{"type":39,"tag":70,"props":12522,"children":12523},{"__ignoreMap":7},[12524,12532,12539,12547,12554,12580,12596,12613,12638,12654,12686,12718,12743,12768,12806],{"type":39,"tag":1072,"props":12525,"children":12526},{"class":1074,"line":868},[12527],{"type":39,"tag":1072,"props":12528,"children":12529},{"style":1195},[12530],{"type":45,"value":12531},"UNION ALL\n",{"type":39,"tag":1072,"props":12533,"children":12534},{"class":1074,"line":476},[12535],{"type":39,"tag":1072,"props":12536,"children":12537},{"emptyLinePlaceholder":19},[12538],{"type":45,"value":7644},{"type":39,"tag":1072,"props":12540,"children":12541},{"class":1074,"line":483},[12542],{"type":39,"tag":1072,"props":12543,"children":12544},{"style":7445},[12545],{"type":45,"value":12546},"-- Klaviyo email campaigns (no direct spend, but track engagement)\n",{"type":39,"tag":1072,"props":12548,"children":12549},{"class":1074,"line":1626},[12550],{"type":39,"tag":1072,"props":12551,"children":12552},{"style":1195},[12553],{"type":45,"value":7653},{"type":39,"tag":1072,"props":12555,"children":12556},{"class":1074,"line":11},[12557,12562,12566,12570,12575],{"type":39,"tag":1072,"props":12558,"children":12559},{"style":1090},[12560],{"type":45,"value":12561},"    send_time::",{"type":39,"tag":1072,"props":12563,"children":12564},{"style":1195},[12565],{"type":45,"value":11950},{"type":39,"tag":1072,"props":12567,"children":12568},{"style":1195},[12569],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12571,"children":12572},{"style":1090},[12573],{"type":45,"value":12574}," spend_date,   ",{"type":39,"tag":1072,"props":12576,"children":12577},{"style":7445},[12578],{"type":45,"value":12579},"-- adjust cast for your warehouse\n",{"type":39,"tag":1072,"props":12581,"children":12582},{"class":1074,"line":20},[12583,12588,12592],{"type":39,"tag":1072,"props":12584,"children":12585},{"style":1084},[12586],{"type":45,"value":12587},"    'email'",{"type":39,"tag":1072,"props":12589,"children":12590},{"style":1195},[12591],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12593,"children":12594},{"style":1090},[12595],{"type":45,"value":11633},{"type":39,"tag":1072,"props":12597,"children":12598},{"class":1074,"line":1679},[12599,12604,12608],{"type":39,"tag":1072,"props":12600,"children":12601},{"style":1195},[12602],{"type":45,"value":12603},"    name",{"type":39,"tag":1072,"props":12605,"children":12606},{"style":1195},[12607],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12609,"children":12610},{"style":1090},[12611],{"type":45,"value":12612}," campaign_name,\n",{"type":39,"tag":1072,"props":12614,"children":12615},{"class":1074,"line":860},[12616,12621,12625,12630,12634],{"type":39,"tag":1072,"props":12617,"children":12618},{"style":1096},[12619],{"type":45,"value":12620},"    0",{"type":39,"tag":1072,"props":12622,"children":12623},{"style":1090},[12624],{"type":45,"value":934},{"type":39,"tag":1072,"props":12626,"children":12627},{"style":1096},[12628],{"type":45,"value":12629},"00",{"type":39,"tag":1072,"props":12631,"children":12632},{"style":1195},[12633],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12635,"children":12636},{"style":1090},[12637],{"type":45,"value":11690},{"type":39,"tag":1072,"props":12639,"children":12640},{"class":1074,"line":2907},[12641,12646,12650],{"type":39,"tag":1072,"props":12642,"children":12643},{"style":1090},[12644],{"type":45,"value":12645},"    num_recipients ",{"type":39,"tag":1072,"props":12647,"children":12648},{"style":1195},[12649],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12651,"children":12652},{"style":1090},[12653],{"type":45,"value":11724},{"type":39,"tag":1072,"props":12655,"children":12656},{"class":1074,"line":7515},[12657,12661,12666,12670,12674,12678,12682],{"type":39,"tag":1072,"props":12658,"children":12659},{"style":1096},[12660],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12662,"children":12663},{"style":1090},[12664],{"type":45,"value":12665},"(click_count ",{"type":39,"tag":1072,"props":12667,"children":12668},{"style":1195},[12669],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12671,"children":12672},{"style":1195},[12673],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12675,"children":12676},{"style":1090},[12677],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12679,"children":12680},{"style":1195},[12681],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12683,"children":12684},{"style":1090},[12685],{"type":45,"value":11757},{"type":39,"tag":1072,"props":12687,"children":12688},{"class":1074,"line":7524},[12689,12693,12698,12702,12706,12710,12714],{"type":39,"tag":1072,"props":12690,"children":12691},{"style":1096},[12692],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12694,"children":12695},{"style":1090},[12696],{"type":45,"value":12697},"(conversion_count ",{"type":39,"tag":1072,"props":12699,"children":12700},{"style":1195},[12701],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12703,"children":12704},{"style":1195},[12705],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12707,"children":12708},{"style":1090},[12709],{"type":45,"value":8344},{"type":39,"tag":1072,"props":12711,"children":12712},{"style":1195},[12713],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12715,"children":12716},{"style":1090},[12717],{"type":45,"value":11790},{"type":39,"tag":1072,"props":12719,"children":12720},{"class":1074,"line":7533},[12721,12725,12729,12733,12738],{"type":39,"tag":1072,"props":12722,"children":12723},{"style":1195},[12724],{"type":45,"value":8227},{"type":39,"tag":1072,"props":12726,"children":12727},{"style":1096},[12728],{"type":45,"value":8232},{"type":39,"tag":1072,"props":12730,"children":12731},{"style":1090},[12732],{"type":45,"value":934},{"type":39,"tag":1072,"props":12734,"children":12735},{"style":1096},[12736],{"type":45,"value":12737},"klaviyo_campaigns",{"type":39,"tag":1072,"props":12739,"children":12740},{"style":1090},[12741],{"type":45,"value":12742}," kc\n",{"type":39,"tag":1072,"props":12744,"children":12745},{"class":1074,"line":7542},[12746,12750,12754,12758,12763],{"type":39,"tag":1072,"props":12747,"children":12748},{"style":1195},[12749],{"type":45,"value":7335},{"type":39,"tag":1072,"props":12751,"children":12752},{"style":1096},[12753],{"type":45,"value":8232},{"type":39,"tag":1072,"props":12755,"children":12756},{"style":1090},[12757],{"type":45,"value":934},{"type":39,"tag":1072,"props":12759,"children":12760},{"style":1096},[12761],{"type":45,"value":12762},"klaviyo_metrics",{"type":39,"tag":1072,"props":12764,"children":12765},{"style":1090},[12766],{"type":45,"value":12767}," km\n",{"type":39,"tag":1072,"props":12769,"children":12770},{"class":1074,"line":7551},[12771,12775,12780,12784,12788,12792,12797,12801],{"type":39,"tag":1072,"props":12772,"children":12773},{"style":1195},[12774],{"type":45,"value":8281},{"type":39,"tag":1072,"props":12776,"children":12777},{"style":1096},[12778],{"type":45,"value":12779}," kc",{"type":39,"tag":1072,"props":12781,"children":12782},{"style":1090},[12783],{"type":45,"value":934},{"type":39,"tag":1072,"props":12785,"children":12786},{"style":1096},[12787],{"type":45,"value":7671},{"type":39,"tag":1072,"props":12789,"children":12790},{"style":1195},[12791],{"type":45,"value":8299},{"type":39,"tag":1072,"props":12793,"children":12794},{"style":1096},[12795],{"type":45,"value":12796}," km",{"type":39,"tag":1072,"props":12798,"children":12799},{"style":1090},[12800],{"type":45,"value":934},{"type":39,"tag":1072,"props":12802,"children":12803},{"style":1096},[12804],{"type":45,"value":12805},"campaign_id\n",{"type":39,"tag":1072,"props":12807,"children":12808},{"class":1074,"line":2380},[12809,12813,12818],{"type":39,"tag":1072,"props":12810,"children":12811},{"style":1195},[12812],{"type":45,"value":9200},{"type":39,"tag":1072,"props":12814,"children":12815},{"style":1090},[12816],{"type":45,"value":12817}," send_time ",{"type":39,"tag":1072,"props":12819,"children":12820},{"style":1195},[12821],{"type":45,"value":10984},{"type":39,"tag":48,"props":12823,"children":12824},{},[12825,12827,12833,12834,12840,12842,12847],{"type":45,"value":12826},"Add ",{"type":39,"tag":70,"props":12828,"children":12830},{"className":12829},[],[12831],{"type":45,"value":12832},"raw.klaviyo_campaigns",{"type":45,"value":6830},{"type":39,"tag":70,"props":12835,"children":12837},{"className":12836},[],[12838],{"type":45,"value":12839},"raw.klaviyo_metrics",{"type":45,"value":12841}," to the ",{"type":39,"tag":70,"props":12843,"children":12845},{"className":12844},[],[12846],{"type":45,"value":7351},{"type":45,"value":12848}," list in the Bruin asset header.",{"type":39,"tag":1248,"props":12850,"children":12851},{"v-slot:hubspot":7},[12852,12862,13090],{"type":39,"tag":48,"props":12853,"children":12854},{},[12855,12856,12861],{"type":45,"value":12510},{"type":39,"tag":70,"props":12857,"children":12859},{"className":12858},[],[12860],{"type":45,"value":12497},{"type":45,"value":7424},{"type":39,"tag":1062,"props":12863,"children":12865},{"className":7433,"code":12864,"language":7435,"meta":7,"style":7},"UNION ALL\n\n-- HubSpot email campaigns (no direct spend, but track engagement)\nSELECT\n    updated_at::date AS spend_date,   -- adjust cast for your warehouse\n    'email' AS channel,\n    name AS campaign_name,\n    0.00 AS spend,\n    CAST(num_included AS INTEGER) AS impressions,\n    CAST(num_clicks AS INTEGER) AS clicks,\n    0 AS conversions\nFROM raw.hubspot_campaigns\nWHERE name IS NOT NULL\n",[12866],{"type":39,"tag":70,"props":12867,"children":12868},{"__ignoreMap":7},[12869,12876,12883,12891,12898,12922,12937,12952,12975,13007,13039,13054,13074],{"type":39,"tag":1072,"props":12870,"children":12871},{"class":1074,"line":868},[12872],{"type":39,"tag":1072,"props":12873,"children":12874},{"style":1195},[12875],{"type":45,"value":12531},{"type":39,"tag":1072,"props":12877,"children":12878},{"class":1074,"line":476},[12879],{"type":39,"tag":1072,"props":12880,"children":12881},{"emptyLinePlaceholder":19},[12882],{"type":45,"value":7644},{"type":39,"tag":1072,"props":12884,"children":12885},{"class":1074,"line":483},[12886],{"type":39,"tag":1072,"props":12887,"children":12888},{"style":7445},[12889],{"type":45,"value":12890},"-- HubSpot email campaigns (no direct spend, but track engagement)\n",{"type":39,"tag":1072,"props":12892,"children":12893},{"class":1074,"line":1626},[12894],{"type":39,"tag":1072,"props":12895,"children":12896},{"style":1195},[12897],{"type":45,"value":7653},{"type":39,"tag":1072,"props":12899,"children":12900},{"class":1074,"line":11},[12901,12906,12910,12914,12918],{"type":39,"tag":1072,"props":12902,"children":12903},{"style":1090},[12904],{"type":45,"value":12905},"    updated_at::",{"type":39,"tag":1072,"props":12907,"children":12908},{"style":1195},[12909],{"type":45,"value":11950},{"type":39,"tag":1072,"props":12911,"children":12912},{"style":1195},[12913],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12915,"children":12916},{"style":1090},[12917],{"type":45,"value":12574},{"type":39,"tag":1072,"props":12919,"children":12920},{"style":7445},[12921],{"type":45,"value":12579},{"type":39,"tag":1072,"props":12923,"children":12924},{"class":1074,"line":20},[12925,12929,12933],{"type":39,"tag":1072,"props":12926,"children":12927},{"style":1084},[12928],{"type":45,"value":12587},{"type":39,"tag":1072,"props":12930,"children":12931},{"style":1195},[12932],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12934,"children":12935},{"style":1090},[12936],{"type":45,"value":11633},{"type":39,"tag":1072,"props":12938,"children":12939},{"class":1074,"line":1679},[12940,12944,12948],{"type":39,"tag":1072,"props":12941,"children":12942},{"style":1195},[12943],{"type":45,"value":12603},{"type":39,"tag":1072,"props":12945,"children":12946},{"style":1195},[12947],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12949,"children":12950},{"style":1090},[12951],{"type":45,"value":12612},{"type":39,"tag":1072,"props":12953,"children":12954},{"class":1074,"line":860},[12955,12959,12963,12967,12971],{"type":39,"tag":1072,"props":12956,"children":12957},{"style":1096},[12958],{"type":45,"value":12620},{"type":39,"tag":1072,"props":12960,"children":12961},{"style":1090},[12962],{"type":45,"value":934},{"type":39,"tag":1072,"props":12964,"children":12965},{"style":1096},[12966],{"type":45,"value":12629},{"type":39,"tag":1072,"props":12968,"children":12969},{"style":1195},[12970],{"type":45,"value":7676},{"type":39,"tag":1072,"props":12972,"children":12973},{"style":1090},[12974],{"type":45,"value":11690},{"type":39,"tag":1072,"props":12976,"children":12977},{"class":1074,"line":2907},[12978,12982,12987,12991,12995,12999,13003],{"type":39,"tag":1072,"props":12979,"children":12980},{"style":1096},[12981],{"type":45,"value":7810},{"type":39,"tag":1072,"props":12983,"children":12984},{"style":1090},[12985],{"type":45,"value":12986},"(num_included ",{"type":39,"tag":1072,"props":12988,"children":12989},{"style":1195},[12990],{"type":45,"value":7866},{"type":39,"tag":1072,"props":12992,"children":12993},{"style":1195},[12994],{"type":45,"value":11711},{"type":39,"tag":1072,"props":12996,"children":12997},{"style":1090},[12998],{"type":45,"value":8344},{"type":39,"tag":1072,"props":13000,"children":13001},{"style":1195},[13002],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13004,"children":13005},{"style":1090},[13006],{"type":45,"value":11724},{"type":39,"tag":1072,"props":13008,"children":13009},{"class":1074,"line":7515},[13010,13014,13019,13023,13027,13031,13035],{"type":39,"tag":1072,"props":13011,"children":13012},{"style":1096},[13013],{"type":45,"value":7810},{"type":39,"tag":1072,"props":13015,"children":13016},{"style":1090},[13017],{"type":45,"value":13018},"(num_clicks ",{"type":39,"tag":1072,"props":13020,"children":13021},{"style":1195},[13022],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13024,"children":13025},{"style":1195},[13026],{"type":45,"value":11711},{"type":39,"tag":1072,"props":13028,"children":13029},{"style":1090},[13030],{"type":45,"value":8344},{"type":39,"tag":1072,"props":13032,"children":13033},{"style":1195},[13034],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13036,"children":13037},{"style":1090},[13038],{"type":45,"value":11757},{"type":39,"tag":1072,"props":13040,"children":13041},{"class":1074,"line":7524},[13042,13046,13050],{"type":39,"tag":1072,"props":13043,"children":13044},{"style":1096},[13045],{"type":45,"value":12620},{"type":39,"tag":1072,"props":13047,"children":13048},{"style":1195},[13049],{"type":45,"value":7676},{"type":39,"tag":1072,"props":13051,"children":13052},{"style":1090},[13053],{"type":45,"value":11790},{"type":39,"tag":1072,"props":13055,"children":13056},{"class":1074,"line":7533},[13057,13061,13065,13069],{"type":39,"tag":1072,"props":13058,"children":13059},{"style":1195},[13060],{"type":45,"value":8227},{"type":39,"tag":1072,"props":13062,"children":13063},{"style":1096},[13064],{"type":45,"value":8232},{"type":39,"tag":1072,"props":13066,"children":13067},{"style":1090},[13068],{"type":45,"value":934},{"type":39,"tag":1072,"props":13070,"children":13071},{"style":1096},[13072],{"type":45,"value":13073},"hubspot_campaigns\n",{"type":39,"tag":1072,"props":13075,"children":13076},{"class":1074,"line":7542},[13077,13081,13086],{"type":39,"tag":1072,"props":13078,"children":13079},{"style":1195},[13080],{"type":45,"value":9200},{"type":39,"tag":1072,"props":13082,"children":13083},{"style":1195},[13084],{"type":45,"value":13085}," name",{"type":39,"tag":1072,"props":13087,"children":13088},{"style":1195},[13089],{"type":45,"value":9250},{"type":39,"tag":48,"props":13091,"children":13092},{},[13093,13094,13100,13101,13106],{"type":45,"value":12826},{"type":39,"tag":70,"props":13095,"children":13097},{"className":13096},[],[13098],{"type":45,"value":13099},"raw.hubspot_campaigns",{"type":45,"value":12841},{"type":39,"tag":70,"props":13102,"children":13104},{"className":13103},[],[13105],{"type":45,"value":7351},{"type":45,"value":12848},{"type":39,"tag":1023,"props":13108,"children":13109},{},[13110],{"type":39,"tag":48,"props":13111,"children":13112},{},[13113,13115,13121,13123,13128,13130,13135],{"type":45,"value":13114},"The email portion needs both the right source columns (Klaviyo vs HubSpot) and the right date cast for your warehouse. The ",{"type":39,"tag":70,"props":13116,"children":13118},{"className":13117},[],[13119],{"type":45,"value":13120},"::date",{"type":45,"value":13122}," cast above is Snowflake syntax - ClickHouse uses ",{"type":39,"tag":70,"props":13124,"children":13126},{"className":13125},[],[13127],{"type":45,"value":11436},{"type":45,"value":13129},", BigQuery uses ",{"type":39,"tag":70,"props":13131,"children":13133},{"className":13132},[],[13134],{"type":45,"value":11444},{"type":45,"value":13136},". Ask Claude Code to generate the combined SQL for your specific stack.",{"type":39,"tag":85,"props":13138,"children":13140},{"id":13139},"_5-staged-web-sessions-stg_web_sessionssql",[13141,13143],{"type":45,"value":13142},"5) Staged web sessions - ",{"type":39,"tag":70,"props":13144,"children":13146},{"className":13145},[],[13147],{"type":45,"value":13148},"stg_web_sessions.sql",{"type":39,"tag":48,"props":13150,"children":13151},{},[13152],{"type":45,"value":13153},"Clean session data with traffic source mapping. The column names differ depending on whether you use GA4 or Mixpanel, and the date functions differ by warehouse.",{"type":39,"tag":48,"props":13155,"children":13156},{},[13157,13158,13167],{"type":45,"value":7413},{"type":39,"tag":97,"props":13159,"children":13160},{},[13161],{"type":39,"tag":70,"props":13162,"children":13164},{"className":13163},[],[13165],{"type":45,"value":13166},"ecommerce\u002Fassets\u002Fstaging\u002Fstg_web_sessions.sql",{"type":45,"value":7424},{"type":39,"tag":2730,"props":13169,"children":13171},{"id":13170},"source-specific-columns",[13172],{"type":45,"value":13173},"Source-specific columns",{"type":39,"tag":48,"props":13175,"children":13176},{},[13177,13179,13185,13186,13192,13194,13200],{"type":45,"value":13178},"The raw table names differ by analytics tool. GA4 creates ",{"type":39,"tag":70,"props":13180,"children":13182},{"className":13181},[],[13183],{"type":45,"value":13184},"raw.ga4_sessions",{"type":45,"value":6830},{"type":39,"tag":70,"props":13187,"children":13189},{"className":13188},[],[13190],{"type":45,"value":13191},"raw.ga4_events",{"type":45,"value":13193},"; Mixpanel creates ",{"type":39,"tag":70,"props":13195,"children":13197},{"className":13196},[],[13198],{"type":45,"value":13199},"raw.mixpanel_events",{"type":45,"value":13201}," (no separate sessions table). Select the tab that matches your analytics tool:",{"type":39,"tag":1242,"props":13203,"children":13204},{":variants":6020,"group":6021},[13205,13707],{"type":39,"tag":1248,"props":13206,"children":13207},{"v-slot:ga4":7},[13208,13229],{"type":39,"tag":48,"props":13209,"children":13210},{},[13211,13213,13219,13221,13227],{"type":45,"value":13212},"GA4 gives you sessions and events as separate tables. The ",{"type":39,"tag":70,"props":13214,"children":13216},{"className":13215},[],[13217],{"type":45,"value":13218},"CASE",{"type":45,"value":13220}," statement maps GA4 traffic sources to the same channel names used in ",{"type":39,"tag":70,"props":13222,"children":13224},{"className":13223},[],[13225],{"type":45,"value":13226},"stg_marketing_spend",{"type":45,"value":13228},", so you can join them later for attribution.",{"type":39,"tag":1062,"props":13230,"children":13232},{"className":7433,"code":13231,"language":7435,"meta":7,"style":7},"SELECT\n    s.date AS session_raw_date,       -- cast with your warehouse's date function\n    s.sessions AS total_sessions,\n    s.new_users,\n    s.engaged_sessions,\n    e.event_count AS purchase_events,\n    CASE\n        WHEN s.source = 'facebook' THEN 'paid_ads'\n        WHEN s.medium = 'email' THEN 'email'\n        WHEN s.medium = 'organic' THEN 'organic_search'\n        WHEN s.medium = 'cpc' THEN 'paid_search'\n        WHEN s.source = '(direct)' THEN 'direct'\n        ELSE 'other'\n    END AS channel\nFROM raw.ga4_sessions s\nLEFT JOIN raw.ga4_events e\n    ON s.date = e.date\n    AND e.event_name = 'purchase'\n",[13233],{"type":39,"tag":70,"props":13234,"children":13235},{"__ignoreMap":7},[13236,13243,13273,13298,13318,13338,13364,13372,13413,13451,13488,13525,13562,13575,13592,13617,13642,13678],{"type":39,"tag":1072,"props":13237,"children":13238},{"class":1074,"line":868},[13239],{"type":39,"tag":1072,"props":13240,"children":13241},{"style":1195},[13242],{"type":45,"value":7653},{"type":39,"tag":1072,"props":13244,"children":13245},{"class":1074,"line":476},[13246,13251,13255,13259,13263,13268],{"type":39,"tag":1072,"props":13247,"children":13248},{"style":1096},[13249],{"type":45,"value":13250},"    s",{"type":39,"tag":1072,"props":13252,"children":13253},{"style":1090},[13254],{"type":45,"value":934},{"type":39,"tag":1072,"props":13256,"children":13257},{"style":1096},[13258],{"type":45,"value":11950},{"type":39,"tag":1072,"props":13260,"children":13261},{"style":1195},[13262],{"type":45,"value":7676},{"type":39,"tag":1072,"props":13264,"children":13265},{"style":1090},[13266],{"type":45,"value":13267}," session_raw_date,       ",{"type":39,"tag":1072,"props":13269,"children":13270},{"style":7445},[13271],{"type":45,"value":13272},"-- cast with your warehouse's date function\n",{"type":39,"tag":1072,"props":13274,"children":13275},{"class":1074,"line":483},[13276,13280,13284,13289,13293],{"type":39,"tag":1072,"props":13277,"children":13278},{"style":1096},[13279],{"type":45,"value":13250},{"type":39,"tag":1072,"props":13281,"children":13282},{"style":1090},[13283],{"type":45,"value":934},{"type":39,"tag":1072,"props":13285,"children":13286},{"style":1096},[13287],{"type":45,"value":13288},"sessions",{"type":39,"tag":1072,"props":13290,"children":13291},{"style":1195},[13292],{"type":45,"value":7676},{"type":39,"tag":1072,"props":13294,"children":13295},{"style":1090},[13296],{"type":45,"value":13297}," total_sessions,\n",{"type":39,"tag":1072,"props":13299,"children":13300},{"class":1074,"line":1626},[13301,13305,13309,13314],{"type":39,"tag":1072,"props":13302,"children":13303},{"style":1096},[13304],{"type":45,"value":13250},{"type":39,"tag":1072,"props":13306,"children":13307},{"style":1090},[13308],{"type":45,"value":934},{"type":39,"tag":1072,"props":13310,"children":13311},{"style":1096},[13312],{"type":45,"value":13313},"new_users",{"type":39,"tag":1072,"props":13315,"children":13316},{"style":1090},[13317],{"type":45,"value":7703},{"type":39,"tag":1072,"props":13319,"children":13320},{"class":1074,"line":11},[13321,13325,13329,13334],{"type":39,"tag":1072,"props":13322,"children":13323},{"style":1096},[13324],{"type":45,"value":13250},{"type":39,"tag":1072,"props":13326,"children":13327},{"style":1090},[13328],{"type":45,"value":934},{"type":39,"tag":1072,"props":13330,"children":13331},{"style":1096},[13332],{"type":45,"value":13333},"engaged_sessions",{"type":39,"tag":1072,"props":13335,"children":13336},{"style":1090},[13337],{"type":45,"value":7703},{"type":39,"tag":1072,"props":13339,"children":13340},{"class":1074,"line":20},[13341,13346,13350,13355,13359],{"type":39,"tag":1072,"props":13342,"children":13343},{"style":1096},[13344],{"type":45,"value":13345},"    e",{"type":39,"tag":1072,"props":13347,"children":13348},{"style":1090},[13349],{"type":45,"value":934},{"type":39,"tag":1072,"props":13351,"children":13352},{"style":1096},[13353],{"type":45,"value":13354},"event_count",{"type":39,"tag":1072,"props":13356,"children":13357},{"style":1195},[13358],{"type":45,"value":7676},{"type":39,"tag":1072,"props":13360,"children":13361},{"style":1090},[13362],{"type":45,"value":13363}," purchase_events,\n",{"type":39,"tag":1072,"props":13365,"children":13366},{"class":1074,"line":1679},[13367],{"type":39,"tag":1072,"props":13368,"children":13369},{"style":1195},[13370],{"type":45,"value":13371},"    CASE\n",{"type":39,"tag":1072,"props":13373,"children":13374},{"class":1074,"line":860},[13375,13380,13385,13389,13394,13398,13403,13408],{"type":39,"tag":1072,"props":13376,"children":13377},{"style":1195},[13378],{"type":45,"value":13379},"        WHEN",{"type":39,"tag":1072,"props":13381,"children":13382},{"style":1096},[13383],{"type":45,"value":13384}," s",{"type":39,"tag":1072,"props":13386,"children":13387},{"style":1090},[13388],{"type":45,"value":934},{"type":39,"tag":1072,"props":13390,"children":13391},{"style":1096},[13392],{"type":45,"value":13393},"source",{"type":39,"tag":1072,"props":13395,"children":13396},{"style":1195},[13397],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13399,"children":13400},{"style":1084},[13401],{"type":45,"value":13402}," 'facebook'",{"type":39,"tag":1072,"props":13404,"children":13405},{"style":1195},[13406],{"type":45,"value":13407}," THEN",{"type":39,"tag":1072,"props":13409,"children":13410},{"style":1084},[13411],{"type":45,"value":13412}," 'paid_ads'\n",{"type":39,"tag":1072,"props":13414,"children":13415},{"class":1074,"line":2907},[13416,13420,13424,13428,13433,13437,13442,13446],{"type":39,"tag":1072,"props":13417,"children":13418},{"style":1195},[13419],{"type":45,"value":13379},{"type":39,"tag":1072,"props":13421,"children":13422},{"style":1096},[13423],{"type":45,"value":13384},{"type":39,"tag":1072,"props":13425,"children":13426},{"style":1090},[13427],{"type":45,"value":934},{"type":39,"tag":1072,"props":13429,"children":13430},{"style":1096},[13431],{"type":45,"value":13432},"medium",{"type":39,"tag":1072,"props":13434,"children":13435},{"style":1195},[13436],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13438,"children":13439},{"style":1084},[13440],{"type":45,"value":13441}," 'email'",{"type":39,"tag":1072,"props":13443,"children":13444},{"style":1195},[13445],{"type":45,"value":13407},{"type":39,"tag":1072,"props":13447,"children":13448},{"style":1084},[13449],{"type":45,"value":13450}," 'email'\n",{"type":39,"tag":1072,"props":13452,"children":13453},{"class":1074,"line":7515},[13454,13458,13462,13466,13470,13474,13479,13483],{"type":39,"tag":1072,"props":13455,"children":13456},{"style":1195},[13457],{"type":45,"value":13379},{"type":39,"tag":1072,"props":13459,"children":13460},{"style":1096},[13461],{"type":45,"value":13384},{"type":39,"tag":1072,"props":13463,"children":13464},{"style":1090},[13465],{"type":45,"value":934},{"type":39,"tag":1072,"props":13467,"children":13468},{"style":1096},[13469],{"type":45,"value":13432},{"type":39,"tag":1072,"props":13471,"children":13472},{"style":1195},[13473],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13475,"children":13476},{"style":1084},[13477],{"type":45,"value":13478}," 'organic'",{"type":39,"tag":1072,"props":13480,"children":13481},{"style":1195},[13482],{"type":45,"value":13407},{"type":39,"tag":1072,"props":13484,"children":13485},{"style":1084},[13486],{"type":45,"value":13487}," 'organic_search'\n",{"type":39,"tag":1072,"props":13489,"children":13490},{"class":1074,"line":7524},[13491,13495,13499,13503,13507,13511,13516,13520],{"type":39,"tag":1072,"props":13492,"children":13493},{"style":1195},[13494],{"type":45,"value":13379},{"type":39,"tag":1072,"props":13496,"children":13497},{"style":1096},[13498],{"type":45,"value":13384},{"type":39,"tag":1072,"props":13500,"children":13501},{"style":1090},[13502],{"type":45,"value":934},{"type":39,"tag":1072,"props":13504,"children":13505},{"style":1096},[13506],{"type":45,"value":13432},{"type":39,"tag":1072,"props":13508,"children":13509},{"style":1195},[13510],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13512,"children":13513},{"style":1084},[13514],{"type":45,"value":13515}," 'cpc'",{"type":39,"tag":1072,"props":13517,"children":13518},{"style":1195},[13519],{"type":45,"value":13407},{"type":39,"tag":1072,"props":13521,"children":13522},{"style":1084},[13523],{"type":45,"value":13524}," 'paid_search'\n",{"type":39,"tag":1072,"props":13526,"children":13527},{"class":1074,"line":7533},[13528,13532,13536,13540,13544,13548,13553,13557],{"type":39,"tag":1072,"props":13529,"children":13530},{"style":1195},[13531],{"type":45,"value":13379},{"type":39,"tag":1072,"props":13533,"children":13534},{"style":1096},[13535],{"type":45,"value":13384},{"type":39,"tag":1072,"props":13537,"children":13538},{"style":1090},[13539],{"type":45,"value":934},{"type":39,"tag":1072,"props":13541,"children":13542},{"style":1096},[13543],{"type":45,"value":13393},{"type":39,"tag":1072,"props":13545,"children":13546},{"style":1195},[13547],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13549,"children":13550},{"style":1084},[13551],{"type":45,"value":13552}," '(direct)'",{"type":39,"tag":1072,"props":13554,"children":13555},{"style":1195},[13556],{"type":45,"value":13407},{"type":39,"tag":1072,"props":13558,"children":13559},{"style":1084},[13560],{"type":45,"value":13561}," 'direct'\n",{"type":39,"tag":1072,"props":13563,"children":13564},{"class":1074,"line":7542},[13565,13570],{"type":39,"tag":1072,"props":13566,"children":13567},{"style":1195},[13568],{"type":45,"value":13569},"        ELSE",{"type":39,"tag":1072,"props":13571,"children":13572},{"style":1084},[13573],{"type":45,"value":13574}," 'other'\n",{"type":39,"tag":1072,"props":13576,"children":13577},{"class":1074,"line":7551},[13578,13583,13587],{"type":39,"tag":1072,"props":13579,"children":13580},{"style":1195},[13581],{"type":45,"value":13582},"    END",{"type":39,"tag":1072,"props":13584,"children":13585},{"style":1195},[13586],{"type":45,"value":7676},{"type":39,"tag":1072,"props":13588,"children":13589},{"style":1090},[13590],{"type":45,"value":13591}," channel\n",{"type":39,"tag":1072,"props":13593,"children":13594},{"class":1074,"line":2380},[13595,13599,13603,13607,13612],{"type":39,"tag":1072,"props":13596,"children":13597},{"style":1195},[13598],{"type":45,"value":8227},{"type":39,"tag":1072,"props":13600,"children":13601},{"style":1096},[13602],{"type":45,"value":8232},{"type":39,"tag":1072,"props":13604,"children":13605},{"style":1090},[13606],{"type":45,"value":934},{"type":39,"tag":1072,"props":13608,"children":13609},{"style":1096},[13610],{"type":45,"value":13611},"ga4_sessions",{"type":39,"tag":1072,"props":13613,"children":13614},{"style":1090},[13615],{"type":45,"value":13616}," s\n",{"type":39,"tag":1072,"props":13618,"children":13619},{"class":1074,"line":7568},[13620,13624,13628,13632,13637],{"type":39,"tag":1072,"props":13621,"children":13622},{"style":1195},[13623],{"type":45,"value":7335},{"type":39,"tag":1072,"props":13625,"children":13626},{"style":1096},[13627],{"type":45,"value":8232},{"type":39,"tag":1072,"props":13629,"children":13630},{"style":1090},[13631],{"type":45,"value":934},{"type":39,"tag":1072,"props":13633,"children":13634},{"style":1096},[13635],{"type":45,"value":13636},"ga4_events",{"type":39,"tag":1072,"props":13638,"children":13639},{"style":1090},[13640],{"type":45,"value":13641}," e\n",{"type":39,"tag":1072,"props":13643,"children":13644},{"class":1074,"line":7577},[13645,13649,13653,13657,13661,13665,13670,13674],{"type":39,"tag":1072,"props":13646,"children":13647},{"style":1195},[13648],{"type":45,"value":8281},{"type":39,"tag":1072,"props":13650,"children":13651},{"style":1096},[13652],{"type":45,"value":13384},{"type":39,"tag":1072,"props":13654,"children":13655},{"style":1090},[13656],{"type":45,"value":934},{"type":39,"tag":1072,"props":13658,"children":13659},{"style":1096},[13660],{"type":45,"value":11950},{"type":39,"tag":1072,"props":13662,"children":13663},{"style":1195},[13664],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13666,"children":13667},{"style":1096},[13668],{"type":45,"value":13669}," e",{"type":39,"tag":1072,"props":13671,"children":13672},{"style":1090},[13673],{"type":45,"value":934},{"type":39,"tag":1072,"props":13675,"children":13676},{"style":1096},[13677],{"type":45,"value":5659},{"type":39,"tag":1072,"props":13679,"children":13680},{"class":1074,"line":7585},[13681,13685,13689,13693,13698,13702],{"type":39,"tag":1072,"props":13682,"children":13683},{"style":1195},[13684],{"type":45,"value":8322},{"type":39,"tag":1072,"props":13686,"children":13687},{"style":1096},[13688],{"type":45,"value":13669},{"type":39,"tag":1072,"props":13690,"children":13691},{"style":1090},[13692],{"type":45,"value":934},{"type":39,"tag":1072,"props":13694,"children":13695},{"style":1096},[13696],{"type":45,"value":13697},"event_name",{"type":39,"tag":1072,"props":13699,"children":13700},{"style":1195},[13701],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13703,"children":13704},{"style":1084},[13705],{"type":45,"value":13706}," 'purchase'\n",{"type":39,"tag":1248,"props":13708,"children":13709},{"v-slot:mixpanel":7},[13710,13722],{"type":39,"tag":48,"props":13711,"children":13712},{},[13713,13715,13720],{"type":45,"value":13714},"Mixpanel stores everything as events - there is no separate sessions table. You aggregate session-like metrics from ",{"type":39,"tag":70,"props":13716,"children":13718},{"className":13717},[],[13719],{"type":45,"value":13199},{"type":45,"value":13721}," directly.",{"type":39,"tag":1062,"props":13723,"children":13725},{"className":7433,"code":13724,"language":7435,"meta":7,"style":7},"SELECT\n    e.time AS session_raw_date,       -- cast with your warehouse's date function\n    COUNT(*) AS total_sessions,\n    COUNT(CASE WHEN e.is_new_user = true THEN 1 END) AS new_users,\n    COUNT(CASE WHEN e.session_duration > 10 THEN 1 END) AS engaged_sessions,\n    COUNT(CASE WHEN e.event_name = 'purchase' THEN 1 END) AS purchase_events,\n    CASE\n        WHEN e.utm_source = 'facebook' THEN 'paid_ads'\n        WHEN e.utm_medium = 'email' THEN 'email'\n        WHEN e.utm_medium = 'organic' THEN 'organic_search'\n        WHEN e.utm_medium = 'cpc' THEN 'paid_search'\n        ELSE 'other'\n    END AS channel\nFROM raw.mixpanel_events e\nWHERE e.event_name = 'session_start'\nGROUP BY session_raw_date, channel\n",[13726],{"type":39,"tag":70,"props":13727,"children":13728},{"__ignoreMap":7},[13729,13736,13764,13793,13863,13930,13994,14001,14037,14073,14108,14143,14154,14169,14193,14221],{"type":39,"tag":1072,"props":13730,"children":13731},{"class":1074,"line":868},[13732],{"type":39,"tag":1072,"props":13733,"children":13734},{"style":1195},[13735],{"type":45,"value":7653},{"type":39,"tag":1072,"props":13737,"children":13738},{"class":1074,"line":476},[13739,13743,13747,13752,13756,13760],{"type":39,"tag":1072,"props":13740,"children":13741},{"style":1096},[13742],{"type":45,"value":13345},{"type":39,"tag":1072,"props":13744,"children":13745},{"style":1090},[13746],{"type":45,"value":934},{"type":39,"tag":1072,"props":13748,"children":13749},{"style":1096},[13750],{"type":45,"value":13751},"time",{"type":39,"tag":1072,"props":13753,"children":13754},{"style":1195},[13755],{"type":45,"value":7676},{"type":39,"tag":1072,"props":13757,"children":13758},{"style":1090},[13759],{"type":45,"value":13267},{"type":39,"tag":1072,"props":13761,"children":13762},{"style":7445},[13763],{"type":45,"value":13272},{"type":39,"tag":1072,"props":13765,"children":13766},{"class":1074,"line":483},[13767,13772,13776,13781,13785,13789],{"type":39,"tag":1072,"props":13768,"children":13769},{"style":1096},[13770],{"type":45,"value":13771},"    COUNT",{"type":39,"tag":1072,"props":13773,"children":13774},{"style":1090},[13775],{"type":45,"value":7815},{"type":39,"tag":1072,"props":13777,"children":13778},{"style":1195},[13779],{"type":45,"value":13780},"*",{"type":39,"tag":1072,"props":13782,"children":13783},{"style":1090},[13784],{"type":45,"value":8344},{"type":39,"tag":1072,"props":13786,"children":13787},{"style":1195},[13788],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13790,"children":13791},{"style":1090},[13792],{"type":45,"value":13297},{"type":39,"tag":1072,"props":13794,"children":13795},{"class":1074,"line":1626},[13796,13800,13804,13808,13813,13817,13821,13826,13830,13835,13840,13845,13850,13854,13858],{"type":39,"tag":1072,"props":13797,"children":13798},{"style":1096},[13799],{"type":45,"value":13771},{"type":39,"tag":1072,"props":13801,"children":13802},{"style":1090},[13803],{"type":45,"value":7815},{"type":39,"tag":1072,"props":13805,"children":13806},{"style":1195},[13807],{"type":45,"value":13218},{"type":39,"tag":1072,"props":13809,"children":13810},{"style":1195},[13811],{"type":45,"value":13812}," WHEN",{"type":39,"tag":1072,"props":13814,"children":13815},{"style":1096},[13816],{"type":45,"value":13669},{"type":39,"tag":1072,"props":13818,"children":13819},{"style":1090},[13820],{"type":45,"value":934},{"type":39,"tag":1072,"props":13822,"children":13823},{"style":1096},[13824],{"type":45,"value":13825},"is_new_user",{"type":39,"tag":1072,"props":13827,"children":13828},{"style":1195},[13829],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13831,"children":13832},{"style":1090},[13833],{"type":45,"value":13834}," true ",{"type":39,"tag":1072,"props":13836,"children":13837},{"style":1195},[13838],{"type":45,"value":13839},"THEN",{"type":39,"tag":1072,"props":13841,"children":13842},{"style":1096},[13843],{"type":45,"value":13844}," 1",{"type":39,"tag":1072,"props":13846,"children":13847},{"style":1195},[13848],{"type":45,"value":13849}," END",{"type":39,"tag":1072,"props":13851,"children":13852},{"style":1090},[13853],{"type":45,"value":8344},{"type":39,"tag":1072,"props":13855,"children":13856},{"style":1195},[13857],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13859,"children":13860},{"style":1090},[13861],{"type":45,"value":13862}," new_users,\n",{"type":39,"tag":1072,"props":13864,"children":13865},{"class":1074,"line":11},[13866,13870,13874,13878,13882,13886,13890,13895,13900,13905,13909,13913,13917,13921,13925],{"type":39,"tag":1072,"props":13867,"children":13868},{"style":1096},[13869],{"type":45,"value":13771},{"type":39,"tag":1072,"props":13871,"children":13872},{"style":1090},[13873],{"type":45,"value":7815},{"type":39,"tag":1072,"props":13875,"children":13876},{"style":1195},[13877],{"type":45,"value":13218},{"type":39,"tag":1072,"props":13879,"children":13880},{"style":1195},[13881],{"type":45,"value":13812},{"type":39,"tag":1072,"props":13883,"children":13884},{"style":1096},[13885],{"type":45,"value":13669},{"type":39,"tag":1072,"props":13887,"children":13888},{"style":1090},[13889],{"type":45,"value":934},{"type":39,"tag":1072,"props":13891,"children":13892},{"style":1096},[13893],{"type":45,"value":13894},"session_duration",{"type":39,"tag":1072,"props":13896,"children":13897},{"style":1195},[13898],{"type":45,"value":13899}," >",{"type":39,"tag":1072,"props":13901,"children":13902},{"style":1096},[13903],{"type":45,"value":13904}," 10",{"type":39,"tag":1072,"props":13906,"children":13907},{"style":1195},[13908],{"type":45,"value":13407},{"type":39,"tag":1072,"props":13910,"children":13911},{"style":1096},[13912],{"type":45,"value":13844},{"type":39,"tag":1072,"props":13914,"children":13915},{"style":1195},[13916],{"type":45,"value":13849},{"type":39,"tag":1072,"props":13918,"children":13919},{"style":1090},[13920],{"type":45,"value":8344},{"type":39,"tag":1072,"props":13922,"children":13923},{"style":1195},[13924],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13926,"children":13927},{"style":1090},[13928],{"type":45,"value":13929}," engaged_sessions,\n",{"type":39,"tag":1072,"props":13931,"children":13932},{"class":1074,"line":20},[13933,13937,13941,13945,13949,13953,13957,13961,13965,13970,13974,13978,13982,13986,13990],{"type":39,"tag":1072,"props":13934,"children":13935},{"style":1096},[13936],{"type":45,"value":13771},{"type":39,"tag":1072,"props":13938,"children":13939},{"style":1090},[13940],{"type":45,"value":7815},{"type":39,"tag":1072,"props":13942,"children":13943},{"style":1195},[13944],{"type":45,"value":13218},{"type":39,"tag":1072,"props":13946,"children":13947},{"style":1195},[13948],{"type":45,"value":13812},{"type":39,"tag":1072,"props":13950,"children":13951},{"style":1096},[13952],{"type":45,"value":13669},{"type":39,"tag":1072,"props":13954,"children":13955},{"style":1090},[13956],{"type":45,"value":934},{"type":39,"tag":1072,"props":13958,"children":13959},{"style":1096},[13960],{"type":45,"value":13697},{"type":39,"tag":1072,"props":13962,"children":13963},{"style":1195},[13964],{"type":45,"value":8299},{"type":39,"tag":1072,"props":13966,"children":13967},{"style":1084},[13968],{"type":45,"value":13969}," 'purchase'",{"type":39,"tag":1072,"props":13971,"children":13972},{"style":1195},[13973],{"type":45,"value":13407},{"type":39,"tag":1072,"props":13975,"children":13976},{"style":1096},[13977],{"type":45,"value":13844},{"type":39,"tag":1072,"props":13979,"children":13980},{"style":1195},[13981],{"type":45,"value":13849},{"type":39,"tag":1072,"props":13983,"children":13984},{"style":1090},[13985],{"type":45,"value":8344},{"type":39,"tag":1072,"props":13987,"children":13988},{"style":1195},[13989],{"type":45,"value":7866},{"type":39,"tag":1072,"props":13991,"children":13992},{"style":1090},[13993],{"type":45,"value":13363},{"type":39,"tag":1072,"props":13995,"children":13996},{"class":1074,"line":1679},[13997],{"type":39,"tag":1072,"props":13998,"children":13999},{"style":1195},[14000],{"type":45,"value":13371},{"type":39,"tag":1072,"props":14002,"children":14003},{"class":1074,"line":860},[14004,14008,14012,14016,14021,14025,14029,14033],{"type":39,"tag":1072,"props":14005,"children":14006},{"style":1195},[14007],{"type":45,"value":13379},{"type":39,"tag":1072,"props":14009,"children":14010},{"style":1096},[14011],{"type":45,"value":13669},{"type":39,"tag":1072,"props":14013,"children":14014},{"style":1090},[14015],{"type":45,"value":934},{"type":39,"tag":1072,"props":14017,"children":14018},{"style":1096},[14019],{"type":45,"value":14020},"utm_source",{"type":39,"tag":1072,"props":14022,"children":14023},{"style":1195},[14024],{"type":45,"value":8299},{"type":39,"tag":1072,"props":14026,"children":14027},{"style":1084},[14028],{"type":45,"value":13402},{"type":39,"tag":1072,"props":14030,"children":14031},{"style":1195},[14032],{"type":45,"value":13407},{"type":39,"tag":1072,"props":14034,"children":14035},{"style":1084},[14036],{"type":45,"value":13412},{"type":39,"tag":1072,"props":14038,"children":14039},{"class":1074,"line":2907},[14040,14044,14048,14052,14057,14061,14065,14069],{"type":39,"tag":1072,"props":14041,"children":14042},{"style":1195},[14043],{"type":45,"value":13379},{"type":39,"tag":1072,"props":14045,"children":14046},{"style":1096},[14047],{"type":45,"value":13669},{"type":39,"tag":1072,"props":14049,"children":14050},{"style":1090},[14051],{"type":45,"value":934},{"type":39,"tag":1072,"props":14053,"children":14054},{"style":1096},[14055],{"type":45,"value":14056},"utm_medium",{"type":39,"tag":1072,"props":14058,"children":14059},{"style":1195},[14060],{"type":45,"value":8299},{"type":39,"tag":1072,"props":14062,"children":14063},{"style":1084},[14064],{"type":45,"value":13441},{"type":39,"tag":1072,"props":14066,"children":14067},{"style":1195},[14068],{"type":45,"value":13407},{"type":39,"tag":1072,"props":14070,"children":14071},{"style":1084},[14072],{"type":45,"value":13450},{"type":39,"tag":1072,"props":14074,"children":14075},{"class":1074,"line":7515},[14076,14080,14084,14088,14092,14096,14100,14104],{"type":39,"tag":1072,"props":14077,"children":14078},{"style":1195},[14079],{"type":45,"value":13379},{"type":39,"tag":1072,"props":14081,"children":14082},{"style":1096},[14083],{"type":45,"value":13669},{"type":39,"tag":1072,"props":14085,"children":14086},{"style":1090},[14087],{"type":45,"value":934},{"type":39,"tag":1072,"props":14089,"children":14090},{"style":1096},[14091],{"type":45,"value":14056},{"type":39,"tag":1072,"props":14093,"children":14094},{"style":1195},[14095],{"type":45,"value":8299},{"type":39,"tag":1072,"props":14097,"children":14098},{"style":1084},[14099],{"type":45,"value":13478},{"type":39,"tag":1072,"props":14101,"children":14102},{"style":1195},[14103],{"type":45,"value":13407},{"type":39,"tag":1072,"props":14105,"children":14106},{"style":1084},[14107],{"type":45,"value":13487},{"type":39,"tag":1072,"props":14109,"children":14110},{"class":1074,"line":7524},[14111,14115,14119,14123,14127,14131,14135,14139],{"type":39,"tag":1072,"props":14112,"children":14113},{"style":1195},[14114],{"type":45,"value":13379},{"type":39,"tag":1072,"props":14116,"children":14117},{"style":1096},[14118],{"type":45,"value":13669},{"type":39,"tag":1072,"props":14120,"children":14121},{"style":1090},[14122],{"type":45,"value":934},{"type":39,"tag":1072,"props":14124,"children":14125},{"style":1096},[14126],{"type":45,"value":14056},{"type":39,"tag":1072,"props":14128,"children":14129},{"style":1195},[14130],{"type":45,"value":8299},{"type":39,"tag":1072,"props":14132,"children":14133},{"style":1084},[14134],{"type":45,"value":13515},{"type":39,"tag":1072,"props":14136,"children":14137},{"style":1195},[14138],{"type":45,"value":13407},{"type":39,"tag":1072,"props":14140,"children":14141},{"style":1084},[14142],{"type":45,"value":13524},{"type":39,"tag":1072,"props":14144,"children":14145},{"class":1074,"line":7533},[14146,14150],{"type":39,"tag":1072,"props":14147,"children":14148},{"style":1195},[14149],{"type":45,"value":13569},{"type":39,"tag":1072,"props":14151,"children":14152},{"style":1084},[14153],{"type":45,"value":13574},{"type":39,"tag":1072,"props":14155,"children":14156},{"class":1074,"line":7542},[14157,14161,14165],{"type":39,"tag":1072,"props":14158,"children":14159},{"style":1195},[14160],{"type":45,"value":13582},{"type":39,"tag":1072,"props":14162,"children":14163},{"style":1195},[14164],{"type":45,"value":7676},{"type":39,"tag":1072,"props":14166,"children":14167},{"style":1090},[14168],{"type":45,"value":13591},{"type":39,"tag":1072,"props":14170,"children":14171},{"class":1074,"line":7551},[14172,14176,14180,14184,14189],{"type":39,"tag":1072,"props":14173,"children":14174},{"style":1195},[14175],{"type":45,"value":8227},{"type":39,"tag":1072,"props":14177,"children":14178},{"style":1096},[14179],{"type":45,"value":8232},{"type":39,"tag":1072,"props":14181,"children":14182},{"style":1090},[14183],{"type":45,"value":934},{"type":39,"tag":1072,"props":14185,"children":14186},{"style":1096},[14187],{"type":45,"value":14188},"mixpanel_events",{"type":39,"tag":1072,"props":14190,"children":14191},{"style":1090},[14192],{"type":45,"value":13641},{"type":39,"tag":1072,"props":14194,"children":14195},{"class":1074,"line":2380},[14196,14200,14204,14208,14212,14216],{"type":39,"tag":1072,"props":14197,"children":14198},{"style":1195},[14199],{"type":45,"value":9200},{"type":39,"tag":1072,"props":14201,"children":14202},{"style":1096},[14203],{"type":45,"value":13669},{"type":39,"tag":1072,"props":14205,"children":14206},{"style":1090},[14207],{"type":45,"value":934},{"type":39,"tag":1072,"props":14209,"children":14210},{"style":1096},[14211],{"type":45,"value":13697},{"type":39,"tag":1072,"props":14213,"children":14214},{"style":1195},[14215],{"type":45,"value":8299},{"type":39,"tag":1072,"props":14217,"children":14218},{"style":1084},[14219],{"type":45,"value":14220}," 'session_start'\n",{"type":39,"tag":1072,"props":14222,"children":14223},{"class":1074,"line":7568},[14224,14229],{"type":39,"tag":1072,"props":14225,"children":14226},{"style":1195},[14227],{"type":45,"value":14228},"GROUP BY",{"type":39,"tag":1072,"props":14230,"children":14231},{"style":1090},[14232],{"type":45,"value":14233}," session_raw_date, channel\n",{"type":39,"tag":2730,"props":14235,"children":14237},{"id":14236},"warehouse-date-casting",[14238],{"type":45,"value":14239},"Warehouse date casting",{"type":39,"tag":48,"props":14241,"children":14242},{},[14243,14245,14251,14253,14258,14259,14264,14266,14271],{"type":45,"value":14244},"Wrap the source query above in the Bruin asset header and apply the correct date function for your warehouse. Update the ",{"type":39,"tag":70,"props":14246,"children":14248},{"className":14247},[],[14249],{"type":45,"value":14250},"depends:",{"type":45,"value":14252}," list to match the analytics tool you chose above (GA4 uses ",{"type":39,"tag":70,"props":14254,"children":14256},{"className":14255},[],[14257],{"type":45,"value":13184},{"type":45,"value":6830},{"type":39,"tag":70,"props":14260,"children":14262},{"className":14261},[],[14263],{"type":45,"value":13191},{"type":45,"value":14265},"; Mixpanel uses ",{"type":39,"tag":70,"props":14267,"children":14269},{"className":14268},[],[14270],{"type":45,"value":13199},{"type":45,"value":14272},"):",{"type":39,"tag":1242,"props":14274,"children":14275},{":variants":1244,"group":1245},[14276,14439,14598],{"type":39,"tag":1248,"props":14277,"children":14278},{"v-slot:clickhouse":7},[14279,14291],{"type":39,"tag":48,"props":14280,"children":14281},{},[14282,14284,14289],{"type":45,"value":14283},"Use ",{"type":39,"tag":70,"props":14285,"children":14287},{"className":14286},[],[14288],{"type":45,"value":11436},{"type":45,"value":14290}," for the date column:",{"type":39,"tag":1062,"props":14292,"children":14294},{"className":7433,"code":14293,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_web_sessions\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.ga4_sessions       -- GA4: use raw.ga4_sessions and raw.ga4_events\n  - raw.ga4_events         -- Mixpanel: replace both with raw.mixpanel_events\ncolumns:\n  - name: session_date\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nSELECT\n    toDate(session_raw_date) AS session_date,\n    -- ... rest of columns from source query above\n",[14295],{"type":39,"tag":70,"props":14296,"children":14297},{"__ignoreMap":7},[14298,14305,14313,14320,14327,14334,14341,14349,14357,14364,14372,14379,14386,14393,14400,14407,14414,14431],{"type":39,"tag":1072,"props":14299,"children":14300},{"class":1074,"line":868},[14301],{"type":39,"tag":1072,"props":14302,"children":14303},{"style":7445},[14304],{"type":45,"value":7448},{"type":39,"tag":1072,"props":14306,"children":14307},{"class":1074,"line":476},[14308],{"type":39,"tag":1072,"props":14309,"children":14310},{"style":7445},[14311],{"type":45,"value":14312},"name: staging.stg_web_sessions\n",{"type":39,"tag":1072,"props":14314,"children":14315},{"class":1074,"line":483},[14316],{"type":39,"tag":1072,"props":14317,"children":14318},{"style":7445},[14319],{"type":45,"value":7464},{"type":39,"tag":1072,"props":14321,"children":14322},{"class":1074,"line":1626},[14323],{"type":39,"tag":1072,"props":14324,"children":14325},{"style":7445},[14326],{"type":45,"value":7472},{"type":39,"tag":1072,"props":14328,"children":14329},{"class":1074,"line":11},[14330],{"type":39,"tag":1072,"props":14331,"children":14332},{"style":7445},[14333],{"type":45,"value":7480},{"type":39,"tag":1072,"props":14335,"children":14336},{"class":1074,"line":20},[14337],{"type":39,"tag":1072,"props":14338,"children":14339},{"style":7445},[14340],{"type":45,"value":7488},{"type":39,"tag":1072,"props":14342,"children":14343},{"class":1074,"line":1679},[14344],{"type":39,"tag":1072,"props":14345,"children":14346},{"style":7445},[14347],{"type":45,"value":14348},"  - raw.ga4_sessions       -- GA4: use raw.ga4_sessions and raw.ga4_events\n",{"type":39,"tag":1072,"props":14350,"children":14351},{"class":1074,"line":860},[14352],{"type":39,"tag":1072,"props":14353,"children":14354},{"style":7445},[14355],{"type":45,"value":14356},"  - raw.ga4_events         -- Mixpanel: replace both with raw.mixpanel_events\n",{"type":39,"tag":1072,"props":14358,"children":14359},{"class":1074,"line":2907},[14360],{"type":39,"tag":1072,"props":14361,"children":14362},{"style":7445},[14363],{"type":45,"value":7512},{"type":39,"tag":1072,"props":14365,"children":14366},{"class":1074,"line":7515},[14367],{"type":39,"tag":1072,"props":14368,"children":14369},{"style":7445},[14370],{"type":45,"value":14371},"  - name: session_date\n",{"type":39,"tag":1072,"props":14373,"children":14374},{"class":1074,"line":7524},[14375],{"type":39,"tag":1072,"props":14376,"children":14377},{"style":7445},[14378],{"type":45,"value":11546},{"type":39,"tag":1072,"props":14380,"children":14381},{"class":1074,"line":7533},[14382],{"type":39,"tag":1072,"props":14383,"children":14384},{"style":7445},[14385],{"type":45,"value":7539},{"type":39,"tag":1072,"props":14387,"children":14388},{"class":1074,"line":7542},[14389],{"type":39,"tag":1072,"props":14390,"children":14391},{"style":7445},[14392],{"type":45,"value":7548},{"type":39,"tag":1072,"props":14394,"children":14395},{"class":1074,"line":7551},[14396],{"type":39,"tag":1072,"props":14397,"children":14398},{"style":7445},[14399],{"type":45,"value":7635},{"type":39,"tag":1072,"props":14401,"children":14402},{"class":1074,"line":2380},[14403],{"type":39,"tag":1072,"props":14404,"children":14405},{"emptyLinePlaceholder":19},[14406],{"type":45,"value":7644},{"type":39,"tag":1072,"props":14408,"children":14409},{"class":1074,"line":7568},[14410],{"type":39,"tag":1072,"props":14411,"children":14412},{"style":1195},[14413],{"type":45,"value":7653},{"type":39,"tag":1072,"props":14415,"children":14416},{"class":1074,"line":7577},[14417,14422,14426],{"type":39,"tag":1072,"props":14418,"children":14419},{"style":1090},[14420],{"type":45,"value":14421},"    toDate(session_raw_date) ",{"type":39,"tag":1072,"props":14423,"children":14424},{"style":1195},[14425],{"type":45,"value":7866},{"type":39,"tag":1072,"props":14427,"children":14428},{"style":1090},[14429],{"type":45,"value":14430}," session_date,\n",{"type":39,"tag":1072,"props":14432,"children":14433},{"class":1074,"line":7585},[14434],{"type":39,"tag":1072,"props":14435,"children":14436},{"style":7445},[14437],{"type":45,"value":14438},"    -- ... rest of columns from source query above\n",{"type":39,"tag":1248,"props":14440,"children":14441},{"v-slot:bigquery":7},[14442,14452],{"type":39,"tag":48,"props":14443,"children":14444},{},[14445,14446,14451],{"type":45,"value":14283},{"type":39,"tag":70,"props":14447,"children":14449},{"className":14448},[],[14450],{"type":45,"value":11444},{"type":45,"value":14290},{"type":39,"tag":1062,"props":14453,"children":14455},{"className":7433,"code":14454,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_web_sessions\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.ga4_sessions       -- GA4: use raw.ga4_sessions and raw.ga4_events\n  - raw.ga4_events         -- Mixpanel: replace both with raw.mixpanel_events\ncolumns:\n  - name: session_date\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nSELECT\n    DATE(session_raw_date) AS session_date,\n    -- ... rest of columns from source query above\n",[14456],{"type":39,"tag":70,"props":14457,"children":14458},{"__ignoreMap":7},[14459,14466,14473,14480,14487,14494,14501,14508,14515,14522,14529,14536,14543,14550,14557,14564,14571,14591],{"type":39,"tag":1072,"props":14460,"children":14461},{"class":1074,"line":868},[14462],{"type":39,"tag":1072,"props":14463,"children":14464},{"style":7445},[14465],{"type":45,"value":7448},{"type":39,"tag":1072,"props":14467,"children":14468},{"class":1074,"line":476},[14469],{"type":39,"tag":1072,"props":14470,"children":14471},{"style":7445},[14472],{"type":45,"value":14312},{"type":39,"tag":1072,"props":14474,"children":14475},{"class":1074,"line":483},[14476],{"type":39,"tag":1072,"props":14477,"children":14478},{"style":7445},[14479],{"type":45,"value":7464},{"type":39,"tag":1072,"props":14481,"children":14482},{"class":1074,"line":1626},[14483],{"type":39,"tag":1072,"props":14484,"children":14485},{"style":7445},[14486],{"type":45,"value":7472},{"type":39,"tag":1072,"props":14488,"children":14489},{"class":1074,"line":11},[14490],{"type":39,"tag":1072,"props":14491,"children":14492},{"style":7445},[14493],{"type":45,"value":7480},{"type":39,"tag":1072,"props":14495,"children":14496},{"class":1074,"line":20},[14497],{"type":39,"tag":1072,"props":14498,"children":14499},{"style":7445},[14500],{"type":45,"value":7488},{"type":39,"tag":1072,"props":14502,"children":14503},{"class":1074,"line":1679},[14504],{"type":39,"tag":1072,"props":14505,"children":14506},{"style":7445},[14507],{"type":45,"value":14348},{"type":39,"tag":1072,"props":14509,"children":14510},{"class":1074,"line":860},[14511],{"type":39,"tag":1072,"props":14512,"children":14513},{"style":7445},[14514],{"type":45,"value":14356},{"type":39,"tag":1072,"props":14516,"children":14517},{"class":1074,"line":2907},[14518],{"type":39,"tag":1072,"props":14519,"children":14520},{"style":7445},[14521],{"type":45,"value":7512},{"type":39,"tag":1072,"props":14523,"children":14524},{"class":1074,"line":7515},[14525],{"type":39,"tag":1072,"props":14526,"children":14527},{"style":7445},[14528],{"type":45,"value":14371},{"type":39,"tag":1072,"props":14530,"children":14531},{"class":1074,"line":7524},[14532],{"type":39,"tag":1072,"props":14533,"children":14534},{"style":7445},[14535],{"type":45,"value":11546},{"type":39,"tag":1072,"props":14537,"children":14538},{"class":1074,"line":7533},[14539],{"type":39,"tag":1072,"props":14540,"children":14541},{"style":7445},[14542],{"type":45,"value":7539},{"type":39,"tag":1072,"props":14544,"children":14545},{"class":1074,"line":7542},[14546],{"type":39,"tag":1072,"props":14547,"children":14548},{"style":7445},[14549],{"type":45,"value":7548},{"type":39,"tag":1072,"props":14551,"children":14552},{"class":1074,"line":7551},[14553],{"type":39,"tag":1072,"props":14554,"children":14555},{"style":7445},[14556],{"type":45,"value":7635},{"type":39,"tag":1072,"props":14558,"children":14559},{"class":1074,"line":2380},[14560],{"type":39,"tag":1072,"props":14561,"children":14562},{"emptyLinePlaceholder":19},[14563],{"type":45,"value":7644},{"type":39,"tag":1072,"props":14565,"children":14566},{"class":1074,"line":7568},[14567],{"type":39,"tag":1072,"props":14568,"children":14569},{"style":1195},[14570],{"type":45,"value":7653},{"type":39,"tag":1072,"props":14572,"children":14573},{"class":1074,"line":7577},[14574,14578,14583,14587],{"type":39,"tag":1072,"props":14575,"children":14576},{"style":1195},[14577],{"type":45,"value":11597},{"type":39,"tag":1072,"props":14579,"children":14580},{"style":1090},[14581],{"type":45,"value":14582},"(session_raw_date) ",{"type":39,"tag":1072,"props":14584,"children":14585},{"style":1195},[14586],{"type":45,"value":7866},{"type":39,"tag":1072,"props":14588,"children":14589},{"style":1090},[14590],{"type":45,"value":14430},{"type":39,"tag":1072,"props":14592,"children":14593},{"class":1074,"line":7585},[14594],{"type":39,"tag":1072,"props":14595,"children":14596},{"style":7445},[14597],{"type":45,"value":14438},{"type":39,"tag":1248,"props":14599,"children":14600},{"v-slot:snowflake":7},[14601,14611],{"type":39,"tag":48,"props":14602,"children":14603},{},[14604,14605,14610],{"type":45,"value":14283},{"type":39,"tag":70,"props":14606,"children":14608},{"className":14607},[],[14609],{"type":45,"value":11451},{"type":45,"value":14290},{"type":39,"tag":1062,"props":14612,"children":14614},{"className":7433,"code":14613,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: staging.stg_web_sessions\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - raw.ga4_sessions       -- GA4: use raw.ga4_sessions and raw.ga4_events\n  - raw.ga4_events         -- Mixpanel: replace both with raw.mixpanel_events\ncolumns:\n  - name: session_date\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nSELECT\n    session_raw_date::DATE AS session_date,\n    -- ... rest of columns from source query above\n",[14615],{"type":39,"tag":70,"props":14616,"children":14617},{"__ignoreMap":7},[14618,14625,14632,14639,14646,14653,14660,14667,14674,14681,14688,14695,14702,14709,14716,14723,14730,14750],{"type":39,"tag":1072,"props":14619,"children":14620},{"class":1074,"line":868},[14621],{"type":39,"tag":1072,"props":14622,"children":14623},{"style":7445},[14624],{"type":45,"value":7448},{"type":39,"tag":1072,"props":14626,"children":14627},{"class":1074,"line":476},[14628],{"type":39,"tag":1072,"props":14629,"children":14630},{"style":7445},[14631],{"type":45,"value":14312},{"type":39,"tag":1072,"props":14633,"children":14634},{"class":1074,"line":483},[14635],{"type":39,"tag":1072,"props":14636,"children":14637},{"style":7445},[14638],{"type":45,"value":7464},{"type":39,"tag":1072,"props":14640,"children":14641},{"class":1074,"line":1626},[14642],{"type":39,"tag":1072,"props":14643,"children":14644},{"style":7445},[14645],{"type":45,"value":7472},{"type":39,"tag":1072,"props":14647,"children":14648},{"class":1074,"line":11},[14649],{"type":39,"tag":1072,"props":14650,"children":14651},{"style":7445},[14652],{"type":45,"value":7480},{"type":39,"tag":1072,"props":14654,"children":14655},{"class":1074,"line":20},[14656],{"type":39,"tag":1072,"props":14657,"children":14658},{"style":7445},[14659],{"type":45,"value":7488},{"type":39,"tag":1072,"props":14661,"children":14662},{"class":1074,"line":1679},[14663],{"type":39,"tag":1072,"props":14664,"children":14665},{"style":7445},[14666],{"type":45,"value":14348},{"type":39,"tag":1072,"props":14668,"children":14669},{"class":1074,"line":860},[14670],{"type":39,"tag":1072,"props":14671,"children":14672},{"style":7445},[14673],{"type":45,"value":14356},{"type":39,"tag":1072,"props":14675,"children":14676},{"class":1074,"line":2907},[14677],{"type":39,"tag":1072,"props":14678,"children":14679},{"style":7445},[14680],{"type":45,"value":7512},{"type":39,"tag":1072,"props":14682,"children":14683},{"class":1074,"line":7515},[14684],{"type":39,"tag":1072,"props":14685,"children":14686},{"style":7445},[14687],{"type":45,"value":14371},{"type":39,"tag":1072,"props":14689,"children":14690},{"class":1074,"line":7524},[14691],{"type":39,"tag":1072,"props":14692,"children":14693},{"style":7445},[14694],{"type":45,"value":11546},{"type":39,"tag":1072,"props":14696,"children":14697},{"class":1074,"line":7533},[14698],{"type":39,"tag":1072,"props":14699,"children":14700},{"style":7445},[14701],{"type":45,"value":7539},{"type":39,"tag":1072,"props":14703,"children":14704},{"class":1074,"line":7542},[14705],{"type":39,"tag":1072,"props":14706,"children":14707},{"style":7445},[14708],{"type":45,"value":7548},{"type":39,"tag":1072,"props":14710,"children":14711},{"class":1074,"line":7551},[14712],{"type":39,"tag":1072,"props":14713,"children":14714},{"style":7445},[14715],{"type":45,"value":7635},{"type":39,"tag":1072,"props":14717,"children":14718},{"class":1074,"line":2380},[14719],{"type":39,"tag":1072,"props":14720,"children":14721},{"emptyLinePlaceholder":19},[14722],{"type":45,"value":7644},{"type":39,"tag":1072,"props":14724,"children":14725},{"class":1074,"line":7568},[14726],{"type":39,"tag":1072,"props":14727,"children":14728},{"style":1195},[14729],{"type":45,"value":7653},{"type":39,"tag":1072,"props":14731,"children":14732},{"class":1074,"line":7577},[14733,14738,14742,14746],{"type":39,"tag":1072,"props":14734,"children":14735},{"style":1090},[14736],{"type":45,"value":14737},"    session_raw_date::",{"type":39,"tag":1072,"props":14739,"children":14740},{"style":1195},[14741],{"type":45,"value":10140},{"type":39,"tag":1072,"props":14743,"children":14744},{"style":1195},[14745],{"type":45,"value":7676},{"type":39,"tag":1072,"props":14747,"children":14748},{"style":1090},[14749],{"type":45,"value":14430},{"type":39,"tag":1072,"props":14751,"children":14752},{"class":1074,"line":7585},[14753],{"type":39,"tag":1072,"props":14754,"children":14755},{"style":7445},[14756],{"type":45,"value":14438},{"type":39,"tag":1023,"props":14758,"children":14759},{},[14760],{"type":39,"tag":48,"props":14761,"children":14762},{},[14763],{"type":45,"value":14764},"The web sessions query needs both the right source columns (GA4 vs Mixpanel) and the right date cast for your warehouse. Ask Claude Code to generate the combined SQL for your specific stack - it will inspect your raw tables and write the correct query.",{"type":39,"tag":85,"props":14766,"children":14768},{"id":14767},"validate-and-run-the-staging-layer",[14769],{"type":45,"value":14770},"Validate and run the staging layer",{"type":39,"tag":1062,"props":14772,"children":14773},{"className":1064,"code":2304,"language":1066,"meta":7,"style":7},[14774],{"type":39,"tag":70,"props":14775,"children":14776},{"__ignoreMap":7},[14777],{"type":39,"tag":1072,"props":14778,"children":14779},{"class":1074,"line":868},[14780,14784,14788],{"type":39,"tag":1072,"props":14781,"children":14782},{"style":1078},[14783],{"type":45,"value":1125},{"type":39,"tag":1072,"props":14785,"children":14786},{"style":1084},[14787],{"type":45,"value":2320},{"type":39,"tag":1072,"props":14789,"children":14790},{"style":1084},[14791],{"type":45,"value":2325},{"type":39,"tag":48,"props":14793,"children":14794},{},[14795],{"type":45,"value":14796},"Fix any errors, then run with the same small date range you used in Step 2:",{"type":39,"tag":1062,"props":14798,"children":14799},{"className":1064,"code":6777,"language":1066,"meta":7,"style":7},[14800],{"type":39,"tag":70,"props":14801,"children":14802},{"__ignoreMap":7},[14803],{"type":39,"tag":1072,"props":14804,"children":14805},{"class":1074,"line":868},[14806,14810,14814,14818,14822,14826,14830],{"type":39,"tag":1072,"props":14807,"children":14808},{"style":1078},[14809],{"type":45,"value":1125},{"type":39,"tag":1072,"props":14811,"children":14812},{"style":1084},[14813],{"type":45,"value":6793},{"type":39,"tag":1072,"props":14815,"children":14816},{"style":1096},[14817],{"type":45,"value":6798},{"type":39,"tag":1072,"props":14819,"children":14820},{"style":1084},[14821],{"type":45,"value":6803},{"type":39,"tag":1072,"props":14823,"children":14824},{"style":1096},[14825],{"type":45,"value":6808},{"type":39,"tag":1072,"props":14827,"children":14828},{"style":1084},[14829],{"type":45,"value":6813},{"type":39,"tag":1072,"props":14831,"children":14832},{"style":1084},[14833],{"type":45,"value":2325},{"type":39,"tag":48,"props":14835,"children":14836},{},[14837,14839,14843],{"type":45,"value":14838},"Bruin executes ",{"type":39,"tag":467,"props":14840,"children":14841},{"href":988},[14842],{"type":45,"value":991},{"type":45,"value":14844}," in dependency order - ingestors first, then staging. You can also run just one asset to test it:",{"type":39,"tag":1062,"props":14846,"children":14848},{"className":1064,"code":14847,"language":1066,"meta":7,"style":7},"bruin run --start-date 2025-01-01 --end-date 2025-02-01 ecommerce\u002Fassets\u002Fstaging\u002Fstg_orders.sql\n",[14849],{"type":39,"tag":70,"props":14850,"children":14851},{"__ignoreMap":7},[14852],{"type":39,"tag":1072,"props":14853,"children":14854},{"class":1074,"line":868},[14855,14859,14863,14867,14871,14875,14879],{"type":39,"tag":1072,"props":14856,"children":14857},{"style":1078},[14858],{"type":45,"value":1125},{"type":39,"tag":1072,"props":14860,"children":14861},{"style":1084},[14862],{"type":45,"value":6793},{"type":39,"tag":1072,"props":14864,"children":14865},{"style":1096},[14866],{"type":45,"value":6798},{"type":39,"tag":1072,"props":14868,"children":14869},{"style":1084},[14870],{"type":45,"value":6803},{"type":39,"tag":1072,"props":14872,"children":14873},{"style":1096},[14874],{"type":45,"value":6808},{"type":39,"tag":1072,"props":14876,"children":14877},{"style":1084},[14878],{"type":45,"value":6813},{"type":39,"tag":1072,"props":14880,"children":14881},{"style":1084},[14882],{"type":45,"value":14883}," ecommerce\u002Fassets\u002Fstaging\u002Fstg_orders.sql\n",{"type":39,"tag":85,"props":14885,"children":14887},{"id":14886},"ask-claude-code-to-validate-and-troubleshoot",[14888],{"type":45,"value":14889},"Ask Claude Code to validate and troubleshoot",{"type":39,"tag":48,"props":14891,"children":14892},{},[14893],{"type":45,"value":14894},"After creating the staging assets, ask Claude Code to check everything:",{"type":39,"tag":115,"props":14896,"children":14897},{},[14898],{"type":39,"tag":48,"props":14899,"children":14900},{},[14901],{"type":45,"value":14902},"Run bruin validate on the project. If there are errors in the staging SQL files, look at the raw table schemas and fix the column names.",{"type":39,"tag":48,"props":14904,"children":14905},{},[14906],{"type":45,"value":14907},"If a query fails at runtime, Claude Code can inspect the error and the actual table data:",{"type":39,"tag":115,"props":14909,"children":14910},{},[14911],{"type":39,"tag":48,"props":14912,"children":14913},{},[14914],{"type":45,"value":14915},"The stg_customers asset failed. Query the raw.shopify_customers table to check what columns are actually available, and fix the SQL.",{"type":39,"tag":40,"props":14917,"children":14918},{"id":285},[14919],{"type":45,"value":288},{"type":39,"tag":241,"props":14921,"children":14922},{},[14923,14933,14966,14976],{"type":39,"tag":245,"props":14924,"children":14925},{},[14926,14931],{"type":39,"tag":97,"props":14927,"children":14928},{},[14929],{"type":45,"value":14930},"5 staging tables",{"type":45,"value":14932}," normalize data from your connected SaaS tools into a consistent format",{"type":39,"tag":245,"props":14934,"children":14935},{},[14936,14943,14944,14950,14951,14957,14958,14964],{"type":39,"tag":97,"props":14937,"children":14938},{},[14939],{"type":39,"tag":467,"props":14940,"children":14941},{"href":988},[14942],{"type":45,"value":7054},{"type":45,"value":9279},{"type":39,"tag":70,"props":14945,"children":14947},{"className":14946},[],[14948],{"type":45,"value":14949},"not_null",{"type":45,"value":978},{"type":39,"tag":70,"props":14952,"children":14954},{"className":14953},[],[14955],{"type":45,"value":14956},"unique",{"type":45,"value":978},{"type":39,"tag":70,"props":14959,"children":14961},{"className":14960},[],[14962],{"type":45,"value":14963},"has_rows",{"type":45,"value":14965},") run automatically after each asset",{"type":39,"tag":245,"props":14967,"children":14968},{},[14969,14974],{"type":39,"tag":97,"props":14970,"children":14971},{},[14972],{"type":45,"value":14973},"Dependencies",{"type":45,"value":14975}," make sure staging assets wait for their source ingestors to finish",{"type":39,"tag":245,"props":14977,"children":14978},{},[14979,14987,14989,14995],{"type":39,"tag":97,"props":14980,"children":14981},{},[14982],{"type":39,"tag":467,"props":14983,"children":14984},{"href":988},[14985],{"type":45,"value":14986},"Materialization",{"type":45,"value":14988}," is set to ",{"type":39,"tag":70,"props":14990,"children":14992},{"className":14991},[],[14993],{"type":45,"value":14994},"table",{"type":45,"value":14996}," - each run rebuilds the staging tables from scratch for consistency",{"type":39,"tag":48,"props":14998,"children":14999},{},[15000,15002,15007],{"type":45,"value":15001},"Your ",{"type":39,"tag":467,"props":15003,"children":15004},{"href":981},[15005],{"type":45,"value":15006},"pipeline",{"type":45,"value":15008}," now has two layers: ingestion and staging. Next, you'll add the report layer on top.",{"type":39,"tag":2354,"props":15010,"children":15011},{},[15012],{"type":45,"value":2358},{"title":7,"searchDepth":476,"depth":476,"links":15014},[15015,15016,15017,15032],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":15018},[15019,15020,15022,15024,15026,15028,15030,15031],{"id":7128,"depth":483,"text":7131},{"id":7306,"depth":483,"text":15021},"1) Staged orders - stg_orders.sql",{"id":10188,"depth":483,"text":15023},"2) Staged customers - stg_customers.sql",{"id":11005,"depth":483,"text":15025},"3) Staged products - stg_products.sql",{"id":11397,"depth":483,"text":15027},"4) Staged marketing spend - stg_marketing_spend.sql",{"id":13139,"depth":483,"text":15029},"5) Staged web sessions - stg_web_sessions.sql",{"id":14767,"depth":483,"text":14770},{"id":14886,"depth":483,"text":14889},{"id":285,"depth":476,"text":288},"content:tutorials:ecommerce-pipeline:data-preparation.md","tutorials\u002Fecommerce-pipeline\u002Fdata-preparation.md","tutorials\u002Fecommerce-pipeline\u002Fdata-preparation",{"_path":15037,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":15038,"description":15039,"date":10,"readingTime":2380,"category":12,"tags":15040,"difficulty":7046,"module":5,"subSteps":19,"step":1626,"journeys":15042,"variants":15043,"learnMore":15044,"author":15047,"body":15048,"_type":491,"_id":28339,"_source":493,"_file":28340,"_stem":28341,"_extension":496},"\u002Ftutorials\u002Fecommerce-pipeline\u002Fbuild-reports","Build Ecommerce Reports","Create report tables for daily revenue, customer cohorts, product performance, marketing ROI, and a unified KPI dashboard.",[862,863,7045,865,866,867,15041,17],"Analytics",[22,23],[865,866,867],[15045,15046],{"label":7051,"url":7052},{"label":7054,"url":7055},{"name":32,"role":33,"image":34},{"type":36,"children":15049,"toc":28319},[15050,15054,15059,15063,15068,15072,15084,15107,15113,15118,15126,15131,15139,15144,15156,15161,15175,17120,17132,17137,17151,19963,19975,19980,20002,20016,20230,20242,20247,20261,24203,24215,24220,24234,28025,28031,28036,28073,28091,28096,28135,28148,28191,28196,28217,28223,28228,28236,28244,28252,28257,28265,28269,28310,28315],{"type":39,"tag":40,"props":15051,"children":15052},{"id":42},[15053],{"type":45,"value":46},{"type":39,"tag":48,"props":15055,"children":15056},{},[15057],{"type":45,"value":15058},"Build five report tables on top of the staging layer: daily revenue, customer cohorts, product performance, marketing ROI, and a unified daily KPI dashboard.",{"type":39,"tag":40,"props":15060,"children":15061},{"id":55},[15062],{"type":45,"value":58},{"type":39,"tag":48,"props":15064,"children":15065},{},[15066],{"type":45,"value":15067},"Staging tables are clean but they're not answers. They tell you \"what happened\" but not \"how is the business doing.\" Report tables compute the metrics teams actually care about - revenue trends, retention rates, ROAS, and the daily numbers that inform decisions.",{"type":39,"tag":40,"props":15069,"children":15070},{"id":80},[15071],{"type":45,"value":83},{"type":39,"tag":48,"props":15073,"children":15074},{},[15075,15076,15082],{"type":45,"value":7093},{"type":39,"tag":70,"props":15077,"children":15079},{"className":15078},[],[15080],{"type":45,"value":15081},"reports\u002F",{"type":45,"value":15083}," subfolder:",{"type":39,"tag":1062,"props":15085,"children":15087},{"className":1064,"code":15086,"language":1066,"meta":7,"style":7},"mkdir -p ecommerce\u002Fassets\u002Freports\n",[15088],{"type":39,"tag":70,"props":15089,"children":15090},{"__ignoreMap":7},[15091],{"type":39,"tag":1072,"props":15092,"children":15093},{"class":1074,"line":868},[15094,15098,15102],{"type":39,"tag":1072,"props":15095,"children":15096},{"style":1078},[15097],{"type":45,"value":1081},{"type":39,"tag":1072,"props":15099,"children":15100},{"style":1096},[15101],{"type":45,"value":7120},{"type":39,"tag":1072,"props":15103,"children":15104},{"style":1084},[15105],{"type":45,"value":15106}," ecommerce\u002Fassets\u002Freports\n",{"type":39,"tag":85,"props":15108,"children":15110},{"id":15109},"let-claude-code-help-with-report-sql",[15111],{"type":45,"value":15112},"Let Claude Code help with report SQL",{"type":39,"tag":48,"props":15114,"children":15115},{},[15116],{"type":45,"value":15117},"Report queries can get complex, especially cohort retention and marketing attribution. You can ask Claude Code to generate any of these:",{"type":39,"tag":115,"props":15119,"children":15120},{},[15121],{"type":39,"tag":48,"props":15122,"children":15123},{},[15124],{"type":45,"value":15125},"Create a Bruin SQL asset for a daily revenue report. It should read from staging.stg_orders and compute total orders, paid orders, gross and net revenue, AOV, and cancellation rate grouped by day. Add quality checks. Put it in ecommerce\u002Fassets\u002Freports\u002Frpt_daily_revenue.sql.",{"type":39,"tag":48,"props":15127,"children":15128},{},[15129],{"type":45,"value":15130},"For the harder reports:",{"type":39,"tag":115,"props":15132,"children":15133},{},[15134],{"type":39,"tag":48,"props":15135,"children":15136},{},[15137],{"type":45,"value":15138},"Write a monthly customer cohort retention query using staging.stg_orders and staging.stg_customers. Group by the month of first purchase, compute retention rate and revenue per customer for each month since first order.",{"type":39,"tag":48,"props":15140,"children":15141},{},[15142],{"type":45,"value":15143},"The examples below show what each report should look like. Select the tab that matches your warehouse.",{"type":39,"tag":85,"props":15145,"children":15147},{"id":15146},"_1-daily-revenue-rpt_daily_revenuesql",[15148,15150],{"type":45,"value":15149},"1) Daily revenue - ",{"type":39,"tag":70,"props":15151,"children":15153},{"className":15152},[],[15154],{"type":45,"value":15155},"rpt_daily_revenue.sql",{"type":39,"tag":48,"props":15157,"children":15158},{},[15159],{"type":45,"value":15160},"The most basic ecommerce report: daily revenue, order count, average order value, and cancellation rate.",{"type":39,"tag":48,"props":15162,"children":15163},{},[15164,15165,15174],{"type":45,"value":7413},{"type":39,"tag":97,"props":15166,"children":15167},{},[15168],{"type":39,"tag":70,"props":15169,"children":15171},{"className":15170},[],[15172],{"type":45,"value":15173},"ecommerce\u002Fassets\u002Freports\u002Frpt_daily_revenue.sql",{"type":45,"value":7424},{"type":39,"tag":1242,"props":15176,"children":15177},{":variants":1244,"group":1245},[15178,15726,16391],{"type":39,"tag":1248,"props":15179,"children":15180},{"v-slot:clickhouse":7},[15181],{"type":39,"tag":1062,"props":15182,"children":15184},{"className":7433,"code":15183,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_daily_revenue\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_orders\ncolumns:\n  - name: order_date\n    type: date\n    checks:\n      - name: not_null\n      - name: unique\ncustom_checks:\n  - name: has_rows\n    query: \"SELECT count(*) > 0 FROM reports.rpt_daily_revenue\"\n    value: 1\n@bruin *\u002F\n\nSELECT\n    toDate(order_date) AS order_date,\n    count(*) AS total_orders,\n    countIf(payment_status = 'paid') AS paid_orders,\n    countIf(cancel_reason IS NOT NULL) AS cancelled_orders,\n    sum(order_total) AS gross_revenue,\n    sum(CASE WHEN payment_status = 'paid' THEN order_total ELSE 0 END) AS net_revenue,\n    sum(discount_amount) AS total_discounts,\n    sum(tax_amount) AS total_tax,\n    round(net_revenue \u002F nullIf(paid_orders, 0), 2) AS avg_order_value,\n    round(cancelled_orders \u002F nullIf(total_orders, 0) * 100, 2) AS cancellation_rate\nFROM staging.stg_orders\nGROUP BY toDate(order_date)\nORDER BY order_date\n",[15185],{"type":39,"tag":70,"props":15186,"children":15187},{"__ignoreMap":7},[15188,15195,15203,15210,15217,15224,15231,15239,15246,15253,15260,15267,15274,15281,15288,15295,15303,15310,15317,15324,15331,15347,15376,15406,15432,15454,15522,15543,15564,15618,15680,15701,15713],{"type":39,"tag":1072,"props":15189,"children":15190},{"class":1074,"line":868},[15191],{"type":39,"tag":1072,"props":15192,"children":15193},{"style":7445},[15194],{"type":45,"value":7448},{"type":39,"tag":1072,"props":15196,"children":15197},{"class":1074,"line":476},[15198],{"type":39,"tag":1072,"props":15199,"children":15200},{"style":7445},[15201],{"type":45,"value":15202},"name: reports.rpt_daily_revenue\n",{"type":39,"tag":1072,"props":15204,"children":15205},{"class":1074,"line":483},[15206],{"type":39,"tag":1072,"props":15207,"children":15208},{"style":7445},[15209],{"type":45,"value":7464},{"type":39,"tag":1072,"props":15211,"children":15212},{"class":1074,"line":1626},[15213],{"type":39,"tag":1072,"props":15214,"children":15215},{"style":7445},[15216],{"type":45,"value":7472},{"type":39,"tag":1072,"props":15218,"children":15219},{"class":1074,"line":11},[15220],{"type":39,"tag":1072,"props":15221,"children":15222},{"style":7445},[15223],{"type":45,"value":7480},{"type":39,"tag":1072,"props":15225,"children":15226},{"class":1074,"line":20},[15227],{"type":39,"tag":1072,"props":15228,"children":15229},{"style":7445},[15230],{"type":45,"value":7488},{"type":39,"tag":1072,"props":15232,"children":15233},{"class":1074,"line":1679},[15234],{"type":39,"tag":1072,"props":15235,"children":15236},{"style":7445},[15237],{"type":45,"value":15238},"  - staging.stg_orders\n",{"type":39,"tag":1072,"props":15240,"children":15241},{"class":1074,"line":860},[15242],{"type":39,"tag":1072,"props":15243,"children":15244},{"style":7445},[15245],{"type":45,"value":7512},{"type":39,"tag":1072,"props":15247,"children":15248},{"class":1074,"line":2907},[15249],{"type":39,"tag":1072,"props":15250,"children":15251},{"style":7445},[15252],{"type":45,"value":7565},{"type":39,"tag":1072,"props":15254,"children":15255},{"class":1074,"line":7515},[15256],{"type":39,"tag":1072,"props":15257,"children":15258},{"style":7445},[15259],{"type":45,"value":11546},{"type":39,"tag":1072,"props":15261,"children":15262},{"class":1074,"line":7524},[15263],{"type":39,"tag":1072,"props":15264,"children":15265},{"style":7445},[15266],{"type":45,"value":7539},{"type":39,"tag":1072,"props":15268,"children":15269},{"class":1074,"line":7533},[15270],{"type":39,"tag":1072,"props":15271,"children":15272},{"style":7445},[15273],{"type":45,"value":7548},{"type":39,"tag":1072,"props":15275,"children":15276},{"class":1074,"line":7542},[15277],{"type":39,"tag":1072,"props":15278,"children":15279},{"style":7445},[15280],{"type":45,"value":7557},{"type":39,"tag":1072,"props":15282,"children":15283},{"class":1074,"line":7551},[15284],{"type":39,"tag":1072,"props":15285,"children":15286},{"style":7445},[15287],{"type":45,"value":7599},{"type":39,"tag":1072,"props":15289,"children":15290},{"class":1074,"line":2380},[15291],{"type":39,"tag":1072,"props":15292,"children":15293},{"style":7445},[15294],{"type":45,"value":7608},{"type":39,"tag":1072,"props":15296,"children":15297},{"class":1074,"line":7568},[15298],{"type":39,"tag":1072,"props":15299,"children":15300},{"style":7445},[15301],{"type":45,"value":15302},"    query: \"SELECT count(*) > 0 FROM reports.rpt_daily_revenue\"\n",{"type":39,"tag":1072,"props":15304,"children":15305},{"class":1074,"line":7577},[15306],{"type":39,"tag":1072,"props":15307,"children":15308},{"style":7445},[15309],{"type":45,"value":7626},{"type":39,"tag":1072,"props":15311,"children":15312},{"class":1074,"line":7585},[15313],{"type":39,"tag":1072,"props":15314,"children":15315},{"style":7445},[15316],{"type":45,"value":7635},{"type":39,"tag":1072,"props":15318,"children":15319},{"class":1074,"line":7593},[15320],{"type":39,"tag":1072,"props":15321,"children":15322},{"emptyLinePlaceholder":19},[15323],{"type":45,"value":7644},{"type":39,"tag":1072,"props":15325,"children":15326},{"class":1074,"line":7602},[15327],{"type":39,"tag":1072,"props":15328,"children":15329},{"style":1195},[15330],{"type":45,"value":7653},{"type":39,"tag":1072,"props":15332,"children":15333},{"class":1074,"line":7611},[15334,15339,15343],{"type":39,"tag":1072,"props":15335,"children":15336},{"style":1090},[15337],{"type":45,"value":15338},"    toDate(order_date) ",{"type":39,"tag":1072,"props":15340,"children":15341},{"style":1195},[15342],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15344,"children":15345},{"style":1090},[15346],{"type":45,"value":7755},{"type":39,"tag":1072,"props":15348,"children":15349},{"class":1074,"line":7620},[15350,15355,15359,15363,15367,15371],{"type":39,"tag":1072,"props":15351,"children":15352},{"style":1096},[15353],{"type":45,"value":15354},"    count",{"type":39,"tag":1072,"props":15356,"children":15357},{"style":1090},[15358],{"type":45,"value":7815},{"type":39,"tag":1072,"props":15360,"children":15361},{"style":1195},[15362],{"type":45,"value":13780},{"type":39,"tag":1072,"props":15364,"children":15365},{"style":1090},[15366],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15368,"children":15369},{"style":1195},[15370],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15372,"children":15373},{"style":1090},[15374],{"type":45,"value":15375}," total_orders,\n",{"type":39,"tag":1072,"props":15377,"children":15378},{"class":1074,"line":7629},[15379,15384,15388,15393,15397,15401],{"type":39,"tag":1072,"props":15380,"children":15381},{"style":1090},[15382],{"type":45,"value":15383},"    countIf(payment_status ",{"type":39,"tag":1072,"props":15385,"children":15386},{"style":1195},[15387],{"type":45,"value":8349},{"type":39,"tag":1072,"props":15389,"children":15390},{"style":1084},[15391],{"type":45,"value":15392}," 'paid'",{"type":39,"tag":1072,"props":15394,"children":15395},{"style":1090},[15396],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15398,"children":15399},{"style":1195},[15400],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15402,"children":15403},{"style":1090},[15404],{"type":45,"value":15405}," paid_orders,\n",{"type":39,"tag":1072,"props":15407,"children":15408},{"class":1074,"line":7638},[15409,15414,15419,15423,15427],{"type":39,"tag":1072,"props":15410,"children":15411},{"style":1090},[15412],{"type":45,"value":15413},"    countIf(cancel_reason ",{"type":39,"tag":1072,"props":15415,"children":15416},{"style":1195},[15417],{"type":45,"value":15418},"IS NOT NULL",{"type":39,"tag":1072,"props":15420,"children":15421},{"style":1090},[15422],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15424,"children":15425},{"style":1195},[15426],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15428,"children":15429},{"style":1090},[15430],{"type":45,"value":15431}," cancelled_orders,\n",{"type":39,"tag":1072,"props":15433,"children":15434},{"class":1074,"line":7647},[15435,15440,15445,15449],{"type":39,"tag":1072,"props":15436,"children":15437},{"style":1096},[15438],{"type":45,"value":15439},"    sum",{"type":39,"tag":1072,"props":15441,"children":15442},{"style":1090},[15443],{"type":45,"value":15444},"(order_total) ",{"type":39,"tag":1072,"props":15446,"children":15447},{"style":1195},[15448],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15450,"children":15451},{"style":1090},[15452],{"type":45,"value":15453}," gross_revenue,\n",{"type":39,"tag":1072,"props":15455,"children":15456},{"class":1074,"line":7656},[15457,15461,15465,15469,15473,15478,15482,15486,15490,15495,15500,15505,15509,15513,15517],{"type":39,"tag":1072,"props":15458,"children":15459},{"style":1096},[15460],{"type":45,"value":15439},{"type":39,"tag":1072,"props":15462,"children":15463},{"style":1090},[15464],{"type":45,"value":7815},{"type":39,"tag":1072,"props":15466,"children":15467},{"style":1195},[15468],{"type":45,"value":13218},{"type":39,"tag":1072,"props":15470,"children":15471},{"style":1195},[15472],{"type":45,"value":13812},{"type":39,"tag":1072,"props":15474,"children":15475},{"style":1090},[15476],{"type":45,"value":15477}," payment_status ",{"type":39,"tag":1072,"props":15479,"children":15480},{"style":1195},[15481],{"type":45,"value":8349},{"type":39,"tag":1072,"props":15483,"children":15484},{"style":1084},[15485],{"type":45,"value":15392},{"type":39,"tag":1072,"props":15487,"children":15488},{"style":1195},[15489],{"type":45,"value":13407},{"type":39,"tag":1072,"props":15491,"children":15492},{"style":1090},[15493],{"type":45,"value":15494}," order_total ",{"type":39,"tag":1072,"props":15496,"children":15497},{"style":1195},[15498],{"type":45,"value":15499},"ELSE",{"type":39,"tag":1072,"props":15501,"children":15502},{"style":1096},[15503],{"type":45,"value":15504}," 0",{"type":39,"tag":1072,"props":15506,"children":15507},{"style":1195},[15508],{"type":45,"value":13849},{"type":39,"tag":1072,"props":15510,"children":15511},{"style":1090},[15512],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15514,"children":15515},{"style":1195},[15516],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15518,"children":15519},{"style":1090},[15520],{"type":45,"value":15521}," net_revenue,\n",{"type":39,"tag":1072,"props":15523,"children":15524},{"class":1074,"line":7684},[15525,15529,15534,15538],{"type":39,"tag":1072,"props":15526,"children":15527},{"style":1096},[15528],{"type":45,"value":15439},{"type":39,"tag":1072,"props":15530,"children":15531},{"style":1090},[15532],{"type":45,"value":15533},"(discount_amount) ",{"type":39,"tag":1072,"props":15535,"children":15536},{"style":1195},[15537],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15539,"children":15540},{"style":1090},[15541],{"type":45,"value":15542}," total_discounts,\n",{"type":39,"tag":1072,"props":15544,"children":15545},{"class":1074,"line":7706},[15546,15550,15555,15559],{"type":39,"tag":1072,"props":15547,"children":15548},{"style":1096},[15549],{"type":45,"value":15439},{"type":39,"tag":1072,"props":15551,"children":15552},{"style":1090},[15553],{"type":45,"value":15554},"(tax_amount) ",{"type":39,"tag":1072,"props":15556,"children":15557},{"style":1195},[15558],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15560,"children":15561},{"style":1090},[15562],{"type":45,"value":15563}," total_tax,\n",{"type":39,"tag":1072,"props":15565,"children":15566},{"class":1074,"line":7732},[15567,15572,15577,15582,15587,15592,15596,15601,15605,15609,15613],{"type":39,"tag":1072,"props":15568,"children":15569},{"style":1096},[15570],{"type":45,"value":15571},"    round",{"type":39,"tag":1072,"props":15573,"children":15574},{"style":1090},[15575],{"type":45,"value":15576},"(net_revenue ",{"type":39,"tag":1072,"props":15578,"children":15579},{"style":1195},[15580],{"type":45,"value":15581},"\u002F",{"type":39,"tag":1072,"props":15583,"children":15584},{"style":1096},[15585],{"type":45,"value":15586}," nullIf",{"type":39,"tag":1072,"props":15588,"children":15589},{"style":1090},[15590],{"type":45,"value":15591},"(paid_orders, ",{"type":39,"tag":1072,"props":15593,"children":15594},{"style":1096},[15595],{"type":45,"value":8157},{"type":39,"tag":1072,"props":15597,"children":15598},{"style":1090},[15599],{"type":45,"value":15600},"), ",{"type":39,"tag":1072,"props":15602,"children":15603},{"style":1096},[15604],{"type":45,"value":7856},{"type":39,"tag":1072,"props":15606,"children":15607},{"style":1090},[15608],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15610,"children":15611},{"style":1195},[15612],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15614,"children":15615},{"style":1090},[15616],{"type":45,"value":15617}," avg_order_value,\n",{"type":39,"tag":1072,"props":15619,"children":15620},{"class":1074,"line":7758},[15621,15625,15630,15634,15638,15643,15647,15651,15655,15659,15663,15667,15671,15675],{"type":39,"tag":1072,"props":15622,"children":15623},{"style":1096},[15624],{"type":45,"value":15571},{"type":39,"tag":1072,"props":15626,"children":15627},{"style":1090},[15628],{"type":45,"value":15629},"(cancelled_orders ",{"type":39,"tag":1072,"props":15631,"children":15632},{"style":1195},[15633],{"type":45,"value":15581},{"type":39,"tag":1072,"props":15635,"children":15636},{"style":1096},[15637],{"type":45,"value":15586},{"type":39,"tag":1072,"props":15639,"children":15640},{"style":1090},[15641],{"type":45,"value":15642},"(total_orders, ",{"type":39,"tag":1072,"props":15644,"children":15645},{"style":1096},[15646],{"type":45,"value":8157},{"type":39,"tag":1072,"props":15648,"children":15649},{"style":1090},[15650],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15652,"children":15653},{"style":1195},[15654],{"type":45,"value":13780},{"type":39,"tag":1072,"props":15656,"children":15657},{"style":1096},[15658],{"type":45,"value":8148},{"type":39,"tag":1072,"props":15660,"children":15661},{"style":1090},[15662],{"type":45,"value":978},{"type":39,"tag":1072,"props":15664,"children":15665},{"style":1096},[15666],{"type":45,"value":7856},{"type":39,"tag":1072,"props":15668,"children":15669},{"style":1090},[15670],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15672,"children":15673},{"style":1195},[15674],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15676,"children":15677},{"style":1090},[15678],{"type":45,"value":15679}," cancellation_rate\n",{"type":39,"tag":1072,"props":15681,"children":15682},{"class":1074,"line":7783},[15683,15687,15692,15696],{"type":39,"tag":1072,"props":15684,"children":15685},{"style":1195},[15686],{"type":45,"value":8227},{"type":39,"tag":1072,"props":15688,"children":15689},{"style":1096},[15690],{"type":45,"value":15691}," staging",{"type":39,"tag":1072,"props":15693,"children":15694},{"style":1090},[15695],{"type":45,"value":934},{"type":39,"tag":1072,"props":15697,"children":15698},{"style":1096},[15699],{"type":45,"value":15700},"stg_orders\n",{"type":39,"tag":1072,"props":15702,"children":15703},{"class":1074,"line":7804},[15704,15708],{"type":39,"tag":1072,"props":15705,"children":15706},{"style":1195},[15707],{"type":45,"value":14228},{"type":39,"tag":1072,"props":15709,"children":15710},{"style":1090},[15711],{"type":45,"value":15712}," toDate(order_date)\n",{"type":39,"tag":1072,"props":15714,"children":15715},{"class":1074,"line":7874},[15716,15721],{"type":39,"tag":1072,"props":15717,"children":15718},{"style":1195},[15719],{"type":45,"value":15720},"ORDER BY",{"type":39,"tag":1072,"props":15722,"children":15723},{"style":1090},[15724],{"type":45,"value":15725}," order_date\n",{"type":39,"tag":1248,"props":15727,"children":15728},{"v-slot:bigquery":7},[15729],{"type":39,"tag":1062,"props":15730,"children":15732},{"className":7433,"code":15731,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_daily_revenue\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_orders\ncolumns:\n  - name: order_date\n    type: date\n    checks:\n      - name: not_null\n      - name: unique\ncustom_checks:\n  - name: has_rows\n    query: \"SELECT count(*) > 0 FROM reports.rpt_daily_revenue\"\n    value: 1\n@bruin *\u002F\n\nSELECT\n    DATE(order_date) AS order_date,\n    count(*) AS total_orders,\n    COUNTIF(payment_status = 'paid') AS paid_orders,\n    COUNTIF(cancel_reason IS NOT NULL) AS cancelled_orders,\n    sum(order_total) AS gross_revenue,\n    sum(CASE WHEN payment_status = 'paid' THEN order_total ELSE 0 END) AS net_revenue,\n    sum(discount_amount) AS total_discounts,\n    sum(tax_amount) AS total_tax,\n    round(sum(CASE WHEN payment_status = 'paid' THEN order_total ELSE 0 END) \u002F NULLIF(COUNTIF(payment_status = 'paid'), 0), 2) AS avg_order_value,\n    round(COUNTIF(cancel_reason IS NOT NULL) \u002F NULLIF(count(*), 0) * 100, 2) AS cancellation_rate\nFROM staging.stg_orders o\nWHERE o.financial_status IN ('paid', 'partially_refunded')\nGROUP BY DATE(order_date)\nORDER BY order_date\n",[15733],{"type":39,"tag":70,"props":15734,"children":15735},{"__ignoreMap":7},[15736,15743,15750,15757,15764,15771,15778,15785,15792,15799,15806,15813,15820,15827,15834,15841,15848,15855,15862,15869,15876,15896,15923,15951,15975,15994,16057,16076,16095,16209,16294,16318,16364,16380],{"type":39,"tag":1072,"props":15737,"children":15738},{"class":1074,"line":868},[15739],{"type":39,"tag":1072,"props":15740,"children":15741},{"style":7445},[15742],{"type":45,"value":7448},{"type":39,"tag":1072,"props":15744,"children":15745},{"class":1074,"line":476},[15746],{"type":39,"tag":1072,"props":15747,"children":15748},{"style":7445},[15749],{"type":45,"value":15202},{"type":39,"tag":1072,"props":15751,"children":15752},{"class":1074,"line":483},[15753],{"type":39,"tag":1072,"props":15754,"children":15755},{"style":7445},[15756],{"type":45,"value":7464},{"type":39,"tag":1072,"props":15758,"children":15759},{"class":1074,"line":1626},[15760],{"type":39,"tag":1072,"props":15761,"children":15762},{"style":7445},[15763],{"type":45,"value":7472},{"type":39,"tag":1072,"props":15765,"children":15766},{"class":1074,"line":11},[15767],{"type":39,"tag":1072,"props":15768,"children":15769},{"style":7445},[15770],{"type":45,"value":7480},{"type":39,"tag":1072,"props":15772,"children":15773},{"class":1074,"line":20},[15774],{"type":39,"tag":1072,"props":15775,"children":15776},{"style":7445},[15777],{"type":45,"value":7488},{"type":39,"tag":1072,"props":15779,"children":15780},{"class":1074,"line":1679},[15781],{"type":39,"tag":1072,"props":15782,"children":15783},{"style":7445},[15784],{"type":45,"value":15238},{"type":39,"tag":1072,"props":15786,"children":15787},{"class":1074,"line":860},[15788],{"type":39,"tag":1072,"props":15789,"children":15790},{"style":7445},[15791],{"type":45,"value":7512},{"type":39,"tag":1072,"props":15793,"children":15794},{"class":1074,"line":2907},[15795],{"type":39,"tag":1072,"props":15796,"children":15797},{"style":7445},[15798],{"type":45,"value":7565},{"type":39,"tag":1072,"props":15800,"children":15801},{"class":1074,"line":7515},[15802],{"type":39,"tag":1072,"props":15803,"children":15804},{"style":7445},[15805],{"type":45,"value":11546},{"type":39,"tag":1072,"props":15807,"children":15808},{"class":1074,"line":7524},[15809],{"type":39,"tag":1072,"props":15810,"children":15811},{"style":7445},[15812],{"type":45,"value":7539},{"type":39,"tag":1072,"props":15814,"children":15815},{"class":1074,"line":7533},[15816],{"type":39,"tag":1072,"props":15817,"children":15818},{"style":7445},[15819],{"type":45,"value":7548},{"type":39,"tag":1072,"props":15821,"children":15822},{"class":1074,"line":7542},[15823],{"type":39,"tag":1072,"props":15824,"children":15825},{"style":7445},[15826],{"type":45,"value":7557},{"type":39,"tag":1072,"props":15828,"children":15829},{"class":1074,"line":7551},[15830],{"type":39,"tag":1072,"props":15831,"children":15832},{"style":7445},[15833],{"type":45,"value":7599},{"type":39,"tag":1072,"props":15835,"children":15836},{"class":1074,"line":2380},[15837],{"type":39,"tag":1072,"props":15838,"children":15839},{"style":7445},[15840],{"type":45,"value":7608},{"type":39,"tag":1072,"props":15842,"children":15843},{"class":1074,"line":7568},[15844],{"type":39,"tag":1072,"props":15845,"children":15846},{"style":7445},[15847],{"type":45,"value":15302},{"type":39,"tag":1072,"props":15849,"children":15850},{"class":1074,"line":7577},[15851],{"type":39,"tag":1072,"props":15852,"children":15853},{"style":7445},[15854],{"type":45,"value":7626},{"type":39,"tag":1072,"props":15856,"children":15857},{"class":1074,"line":7585},[15858],{"type":39,"tag":1072,"props":15859,"children":15860},{"style":7445},[15861],{"type":45,"value":7635},{"type":39,"tag":1072,"props":15863,"children":15864},{"class":1074,"line":7593},[15865],{"type":39,"tag":1072,"props":15866,"children":15867},{"emptyLinePlaceholder":19},[15868],{"type":45,"value":7644},{"type":39,"tag":1072,"props":15870,"children":15871},{"class":1074,"line":7602},[15872],{"type":39,"tag":1072,"props":15873,"children":15874},{"style":1195},[15875],{"type":45,"value":7653},{"type":39,"tag":1072,"props":15877,"children":15878},{"class":1074,"line":7611},[15879,15883,15888,15892],{"type":39,"tag":1072,"props":15880,"children":15881},{"style":1195},[15882],{"type":45,"value":11597},{"type":39,"tag":1072,"props":15884,"children":15885},{"style":1090},[15886],{"type":45,"value":15887},"(order_date) ",{"type":39,"tag":1072,"props":15889,"children":15890},{"style":1195},[15891],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15893,"children":15894},{"style":1090},[15895],{"type":45,"value":7755},{"type":39,"tag":1072,"props":15897,"children":15898},{"class":1074,"line":7620},[15899,15903,15907,15911,15915,15919],{"type":39,"tag":1072,"props":15900,"children":15901},{"style":1096},[15902],{"type":45,"value":15354},{"type":39,"tag":1072,"props":15904,"children":15905},{"style":1090},[15906],{"type":45,"value":7815},{"type":39,"tag":1072,"props":15908,"children":15909},{"style":1195},[15910],{"type":45,"value":13780},{"type":39,"tag":1072,"props":15912,"children":15913},{"style":1090},[15914],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15916,"children":15917},{"style":1195},[15918],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15920,"children":15921},{"style":1090},[15922],{"type":45,"value":15375},{"type":39,"tag":1072,"props":15924,"children":15925},{"class":1074,"line":7629},[15926,15931,15935,15939,15943,15947],{"type":39,"tag":1072,"props":15927,"children":15928},{"style":1090},[15929],{"type":45,"value":15930},"    COUNTIF(payment_status ",{"type":39,"tag":1072,"props":15932,"children":15933},{"style":1195},[15934],{"type":45,"value":8349},{"type":39,"tag":1072,"props":15936,"children":15937},{"style":1084},[15938],{"type":45,"value":15392},{"type":39,"tag":1072,"props":15940,"children":15941},{"style":1090},[15942],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15944,"children":15945},{"style":1195},[15946],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15948,"children":15949},{"style":1090},[15950],{"type":45,"value":15405},{"type":39,"tag":1072,"props":15952,"children":15953},{"class":1074,"line":7638},[15954,15959,15963,15967,15971],{"type":39,"tag":1072,"props":15955,"children":15956},{"style":1090},[15957],{"type":45,"value":15958},"    COUNTIF(cancel_reason ",{"type":39,"tag":1072,"props":15960,"children":15961},{"style":1195},[15962],{"type":45,"value":15418},{"type":39,"tag":1072,"props":15964,"children":15965},{"style":1090},[15966],{"type":45,"value":8344},{"type":39,"tag":1072,"props":15968,"children":15969},{"style":1195},[15970],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15972,"children":15973},{"style":1090},[15974],{"type":45,"value":15431},{"type":39,"tag":1072,"props":15976,"children":15977},{"class":1074,"line":7647},[15978,15982,15986,15990],{"type":39,"tag":1072,"props":15979,"children":15980},{"style":1096},[15981],{"type":45,"value":15439},{"type":39,"tag":1072,"props":15983,"children":15984},{"style":1090},[15985],{"type":45,"value":15444},{"type":39,"tag":1072,"props":15987,"children":15988},{"style":1195},[15989],{"type":45,"value":7866},{"type":39,"tag":1072,"props":15991,"children":15992},{"style":1090},[15993],{"type":45,"value":15453},{"type":39,"tag":1072,"props":15995,"children":15996},{"class":1074,"line":7656},[15997,16001,16005,16009,16013,16017,16021,16025,16029,16033,16037,16041,16045,16049,16053],{"type":39,"tag":1072,"props":15998,"children":15999},{"style":1096},[16000],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16002,"children":16003},{"style":1090},[16004],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16006,"children":16007},{"style":1195},[16008],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16010,"children":16011},{"style":1195},[16012],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16014,"children":16015},{"style":1090},[16016],{"type":45,"value":15477},{"type":39,"tag":1072,"props":16018,"children":16019},{"style":1195},[16020],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16022,"children":16023},{"style":1084},[16024],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16026,"children":16027},{"style":1195},[16028],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16030,"children":16031},{"style":1090},[16032],{"type":45,"value":15494},{"type":39,"tag":1072,"props":16034,"children":16035},{"style":1195},[16036],{"type":45,"value":15499},{"type":39,"tag":1072,"props":16038,"children":16039},{"style":1096},[16040],{"type":45,"value":15504},{"type":39,"tag":1072,"props":16042,"children":16043},{"style":1195},[16044],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16046,"children":16047},{"style":1090},[16048],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16050,"children":16051},{"style":1195},[16052],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16054,"children":16055},{"style":1090},[16056],{"type":45,"value":15521},{"type":39,"tag":1072,"props":16058,"children":16059},{"class":1074,"line":7684},[16060,16064,16068,16072],{"type":39,"tag":1072,"props":16061,"children":16062},{"style":1096},[16063],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16065,"children":16066},{"style":1090},[16067],{"type":45,"value":15533},{"type":39,"tag":1072,"props":16069,"children":16070},{"style":1195},[16071],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16073,"children":16074},{"style":1090},[16075],{"type":45,"value":15542},{"type":39,"tag":1072,"props":16077,"children":16078},{"class":1074,"line":7706},[16079,16083,16087,16091],{"type":39,"tag":1072,"props":16080,"children":16081},{"style":1096},[16082],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16084,"children":16085},{"style":1090},[16086],{"type":45,"value":15554},{"type":39,"tag":1072,"props":16088,"children":16089},{"style":1195},[16090],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16092,"children":16093},{"style":1090},[16094],{"type":45,"value":15563},{"type":39,"tag":1072,"props":16096,"children":16097},{"class":1074,"line":7732},[16098,16102,16106,16111,16115,16119,16123,16127,16131,16135,16139,16143,16147,16151,16155,16159,16163,16168,16173,16177,16181,16185,16189,16193,16197,16201,16205],{"type":39,"tag":1072,"props":16099,"children":16100},{"style":1096},[16101],{"type":45,"value":15571},{"type":39,"tag":1072,"props":16103,"children":16104},{"style":1090},[16105],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16107,"children":16108},{"style":1096},[16109],{"type":45,"value":16110},"sum",{"type":39,"tag":1072,"props":16112,"children":16113},{"style":1090},[16114],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16116,"children":16117},{"style":1195},[16118],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16120,"children":16121},{"style":1195},[16122],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16124,"children":16125},{"style":1090},[16126],{"type":45,"value":15477},{"type":39,"tag":1072,"props":16128,"children":16129},{"style":1195},[16130],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16132,"children":16133},{"style":1084},[16134],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16136,"children":16137},{"style":1195},[16138],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16140,"children":16141},{"style":1090},[16142],{"type":45,"value":15494},{"type":39,"tag":1072,"props":16144,"children":16145},{"style":1195},[16146],{"type":45,"value":15499},{"type":39,"tag":1072,"props":16148,"children":16149},{"style":1096},[16150],{"type":45,"value":15504},{"type":39,"tag":1072,"props":16152,"children":16153},{"style":1195},[16154],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16156,"children":16157},{"style":1090},[16158],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16160,"children":16161},{"style":1195},[16162],{"type":45,"value":15581},{"type":39,"tag":1072,"props":16164,"children":16165},{"style":1096},[16166],{"type":45,"value":16167}," NULLIF",{"type":39,"tag":1072,"props":16169,"children":16170},{"style":1090},[16171],{"type":45,"value":16172},"(COUNTIF(payment_status ",{"type":39,"tag":1072,"props":16174,"children":16175},{"style":1195},[16176],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16178,"children":16179},{"style":1084},[16180],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16182,"children":16183},{"style":1090},[16184],{"type":45,"value":15600},{"type":39,"tag":1072,"props":16186,"children":16187},{"style":1096},[16188],{"type":45,"value":8157},{"type":39,"tag":1072,"props":16190,"children":16191},{"style":1090},[16192],{"type":45,"value":15600},{"type":39,"tag":1072,"props":16194,"children":16195},{"style":1096},[16196],{"type":45,"value":7856},{"type":39,"tag":1072,"props":16198,"children":16199},{"style":1090},[16200],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16202,"children":16203},{"style":1195},[16204],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16206,"children":16207},{"style":1090},[16208],{"type":45,"value":15617},{"type":39,"tag":1072,"props":16210,"children":16211},{"class":1074,"line":7758},[16212,16216,16221,16225,16229,16233,16237,16241,16246,16250,16254,16258,16262,16266,16270,16274,16278,16282,16286,16290],{"type":39,"tag":1072,"props":16213,"children":16214},{"style":1096},[16215],{"type":45,"value":15571},{"type":39,"tag":1072,"props":16217,"children":16218},{"style":1090},[16219],{"type":45,"value":16220},"(COUNTIF(cancel_reason ",{"type":39,"tag":1072,"props":16222,"children":16223},{"style":1195},[16224],{"type":45,"value":15418},{"type":39,"tag":1072,"props":16226,"children":16227},{"style":1090},[16228],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16230,"children":16231},{"style":1195},[16232],{"type":45,"value":15581},{"type":39,"tag":1072,"props":16234,"children":16235},{"style":1096},[16236],{"type":45,"value":16167},{"type":39,"tag":1072,"props":16238,"children":16239},{"style":1090},[16240],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16242,"children":16243},{"style":1096},[16244],{"type":45,"value":16245},"count",{"type":39,"tag":1072,"props":16247,"children":16248},{"style":1090},[16249],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16251,"children":16252},{"style":1195},[16253],{"type":45,"value":13780},{"type":39,"tag":1072,"props":16255,"children":16256},{"style":1090},[16257],{"type":45,"value":15600},{"type":39,"tag":1072,"props":16259,"children":16260},{"style":1096},[16261],{"type":45,"value":8157},{"type":39,"tag":1072,"props":16263,"children":16264},{"style":1090},[16265],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16267,"children":16268},{"style":1195},[16269],{"type":45,"value":13780},{"type":39,"tag":1072,"props":16271,"children":16272},{"style":1096},[16273],{"type":45,"value":8148},{"type":39,"tag":1072,"props":16275,"children":16276},{"style":1090},[16277],{"type":45,"value":978},{"type":39,"tag":1072,"props":16279,"children":16280},{"style":1096},[16281],{"type":45,"value":7856},{"type":39,"tag":1072,"props":16283,"children":16284},{"style":1090},[16285],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16287,"children":16288},{"style":1195},[16289],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16291,"children":16292},{"style":1090},[16293],{"type":45,"value":15679},{"type":39,"tag":1072,"props":16295,"children":16296},{"class":1074,"line":7783},[16297,16301,16305,16309,16314],{"type":39,"tag":1072,"props":16298,"children":16299},{"style":1195},[16300],{"type":45,"value":8227},{"type":39,"tag":1072,"props":16302,"children":16303},{"style":1096},[16304],{"type":45,"value":15691},{"type":39,"tag":1072,"props":16306,"children":16307},{"style":1090},[16308],{"type":45,"value":934},{"type":39,"tag":1072,"props":16310,"children":16311},{"style":1096},[16312],{"type":45,"value":16313},"stg_orders",{"type":39,"tag":1072,"props":16315,"children":16316},{"style":1090},[16317],{"type":45,"value":8246},{"type":39,"tag":1072,"props":16319,"children":16320},{"class":1074,"line":7804},[16321,16325,16329,16333,16337,16342,16346,16351,16355,16360],{"type":39,"tag":1072,"props":16322,"children":16323},{"style":1195},[16324],{"type":45,"value":9200},{"type":39,"tag":1072,"props":16326,"children":16327},{"style":1096},[16328],{"type":45,"value":8286},{"type":39,"tag":1072,"props":16330,"children":16331},{"style":1090},[16332],{"type":45,"value":934},{"type":39,"tag":1072,"props":16334,"children":16335},{"style":1096},[16336],{"type":45,"value":3415},{"type":39,"tag":1072,"props":16338,"children":16339},{"style":1195},[16340],{"type":45,"value":16341}," IN",{"type":39,"tag":1072,"props":16343,"children":16344},{"style":1090},[16345],{"type":45,"value":9279},{"type":39,"tag":1072,"props":16347,"children":16348},{"style":1084},[16349],{"type":45,"value":16350},"'paid'",{"type":39,"tag":1072,"props":16352,"children":16353},{"style":1090},[16354],{"type":45,"value":978},{"type":39,"tag":1072,"props":16356,"children":16357},{"style":1084},[16358],{"type":45,"value":16359},"'partially_refunded'",{"type":39,"tag":1072,"props":16361,"children":16362},{"style":1090},[16363],{"type":45,"value":8372},{"type":39,"tag":1072,"props":16365,"children":16366},{"class":1074,"line":7874},[16367,16371,16375],{"type":39,"tag":1072,"props":16368,"children":16369},{"style":1195},[16370],{"type":45,"value":14228},{"type":39,"tag":1072,"props":16372,"children":16373},{"style":1195},[16374],{"type":45,"value":9143},{"type":39,"tag":1072,"props":16376,"children":16377},{"style":1090},[16378],{"type":45,"value":16379},"(order_date)\n",{"type":39,"tag":1072,"props":16381,"children":16382},{"class":1074,"line":7936},[16383,16387],{"type":39,"tag":1072,"props":16384,"children":16385},{"style":1195},[16386],{"type":45,"value":15720},{"type":39,"tag":1072,"props":16388,"children":16389},{"style":1090},[16390],{"type":45,"value":15725},{"type":39,"tag":1248,"props":16392,"children":16393},{"v-slot:snowflake":7},[16394],{"type":39,"tag":1062,"props":16395,"children":16397},{"className":7433,"code":16396,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_daily_revenue\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_orders\ncolumns:\n  - name: order_date\n    type: date\n    checks:\n      - name: not_null\n      - name: unique\ncustom_checks:\n  - name: has_rows\n    query: \"SELECT count(*) > 0 FROM reports.rpt_daily_revenue\"\n    value: 1\n@bruin *\u002F\n\nSELECT\n    order_date::DATE AS order_date,\n    count(*) AS total_orders,\n    COUNT(CASE WHEN payment_status = 'paid' THEN 1 END) AS paid_orders,\n    COUNT(CASE WHEN cancel_reason IS NOT NULL THEN 1 END) AS cancelled_orders,\n    sum(order_total) AS gross_revenue,\n    sum(CASE WHEN payment_status = 'paid' THEN order_total ELSE 0 END) AS net_revenue,\n    sum(discount_amount) AS total_discounts,\n    sum(tax_amount) AS total_tax,\n    round(sum(CASE WHEN payment_status = 'paid' THEN order_total ELSE 0 END) \u002F NULLIF(COUNT(CASE WHEN payment_status = 'paid' THEN 1 END), 0), 2) AS avg_order_value,\n    round(COUNT(CASE WHEN cancel_reason IS NOT NULL THEN 1 END) \u002F NULLIF(count(*), 0) * 100, 2) AS cancellation_rate\nFROM staging.stg_orders\nGROUP BY order_date::DATE\nORDER BY order_date\n",[16398],{"type":39,"tag":70,"props":16399,"children":16400},{"__ignoreMap":7},[16401,16408,16415,16422,16429,16436,16443,16450,16457,16464,16471,16478,16485,16492,16499,16506,16513,16520,16527,16534,16541,16561,16588,16643,16695,16714,16777,16796,16815,16959,17074,17093,17109],{"type":39,"tag":1072,"props":16402,"children":16403},{"class":1074,"line":868},[16404],{"type":39,"tag":1072,"props":16405,"children":16406},{"style":7445},[16407],{"type":45,"value":7448},{"type":39,"tag":1072,"props":16409,"children":16410},{"class":1074,"line":476},[16411],{"type":39,"tag":1072,"props":16412,"children":16413},{"style":7445},[16414],{"type":45,"value":15202},{"type":39,"tag":1072,"props":16416,"children":16417},{"class":1074,"line":483},[16418],{"type":39,"tag":1072,"props":16419,"children":16420},{"style":7445},[16421],{"type":45,"value":7464},{"type":39,"tag":1072,"props":16423,"children":16424},{"class":1074,"line":1626},[16425],{"type":39,"tag":1072,"props":16426,"children":16427},{"style":7445},[16428],{"type":45,"value":7472},{"type":39,"tag":1072,"props":16430,"children":16431},{"class":1074,"line":11},[16432],{"type":39,"tag":1072,"props":16433,"children":16434},{"style":7445},[16435],{"type":45,"value":7480},{"type":39,"tag":1072,"props":16437,"children":16438},{"class":1074,"line":20},[16439],{"type":39,"tag":1072,"props":16440,"children":16441},{"style":7445},[16442],{"type":45,"value":7488},{"type":39,"tag":1072,"props":16444,"children":16445},{"class":1074,"line":1679},[16446],{"type":39,"tag":1072,"props":16447,"children":16448},{"style":7445},[16449],{"type":45,"value":15238},{"type":39,"tag":1072,"props":16451,"children":16452},{"class":1074,"line":860},[16453],{"type":39,"tag":1072,"props":16454,"children":16455},{"style":7445},[16456],{"type":45,"value":7512},{"type":39,"tag":1072,"props":16458,"children":16459},{"class":1074,"line":2907},[16460],{"type":39,"tag":1072,"props":16461,"children":16462},{"style":7445},[16463],{"type":45,"value":7565},{"type":39,"tag":1072,"props":16465,"children":16466},{"class":1074,"line":7515},[16467],{"type":39,"tag":1072,"props":16468,"children":16469},{"style":7445},[16470],{"type":45,"value":11546},{"type":39,"tag":1072,"props":16472,"children":16473},{"class":1074,"line":7524},[16474],{"type":39,"tag":1072,"props":16475,"children":16476},{"style":7445},[16477],{"type":45,"value":7539},{"type":39,"tag":1072,"props":16479,"children":16480},{"class":1074,"line":7533},[16481],{"type":39,"tag":1072,"props":16482,"children":16483},{"style":7445},[16484],{"type":45,"value":7548},{"type":39,"tag":1072,"props":16486,"children":16487},{"class":1074,"line":7542},[16488],{"type":39,"tag":1072,"props":16489,"children":16490},{"style":7445},[16491],{"type":45,"value":7557},{"type":39,"tag":1072,"props":16493,"children":16494},{"class":1074,"line":7551},[16495],{"type":39,"tag":1072,"props":16496,"children":16497},{"style":7445},[16498],{"type":45,"value":7599},{"type":39,"tag":1072,"props":16500,"children":16501},{"class":1074,"line":2380},[16502],{"type":39,"tag":1072,"props":16503,"children":16504},{"style":7445},[16505],{"type":45,"value":7608},{"type":39,"tag":1072,"props":16507,"children":16508},{"class":1074,"line":7568},[16509],{"type":39,"tag":1072,"props":16510,"children":16511},{"style":7445},[16512],{"type":45,"value":15302},{"type":39,"tag":1072,"props":16514,"children":16515},{"class":1074,"line":7577},[16516],{"type":39,"tag":1072,"props":16517,"children":16518},{"style":7445},[16519],{"type":45,"value":7626},{"type":39,"tag":1072,"props":16521,"children":16522},{"class":1074,"line":7585},[16523],{"type":39,"tag":1072,"props":16524,"children":16525},{"style":7445},[16526],{"type":45,"value":7635},{"type":39,"tag":1072,"props":16528,"children":16529},{"class":1074,"line":7593},[16530],{"type":39,"tag":1072,"props":16531,"children":16532},{"emptyLinePlaceholder":19},[16533],{"type":45,"value":7644},{"type":39,"tag":1072,"props":16535,"children":16536},{"class":1074,"line":7602},[16537],{"type":39,"tag":1072,"props":16538,"children":16539},{"style":1195},[16540],{"type":45,"value":7653},{"type":39,"tag":1072,"props":16542,"children":16543},{"class":1074,"line":7611},[16544,16549,16553,16557],{"type":39,"tag":1072,"props":16545,"children":16546},{"style":1090},[16547],{"type":45,"value":16548},"    order_date::",{"type":39,"tag":1072,"props":16550,"children":16551},{"style":1195},[16552],{"type":45,"value":10140},{"type":39,"tag":1072,"props":16554,"children":16555},{"style":1195},[16556],{"type":45,"value":7676},{"type":39,"tag":1072,"props":16558,"children":16559},{"style":1090},[16560],{"type":45,"value":7755},{"type":39,"tag":1072,"props":16562,"children":16563},{"class":1074,"line":7620},[16564,16568,16572,16576,16580,16584],{"type":39,"tag":1072,"props":16565,"children":16566},{"style":1096},[16567],{"type":45,"value":15354},{"type":39,"tag":1072,"props":16569,"children":16570},{"style":1090},[16571],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16573,"children":16574},{"style":1195},[16575],{"type":45,"value":13780},{"type":39,"tag":1072,"props":16577,"children":16578},{"style":1090},[16579],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16581,"children":16582},{"style":1195},[16583],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16585,"children":16586},{"style":1090},[16587],{"type":45,"value":15375},{"type":39,"tag":1072,"props":16589,"children":16590},{"class":1074,"line":7629},[16591,16595,16599,16603,16607,16611,16615,16619,16623,16627,16631,16635,16639],{"type":39,"tag":1072,"props":16592,"children":16593},{"style":1096},[16594],{"type":45,"value":13771},{"type":39,"tag":1072,"props":16596,"children":16597},{"style":1090},[16598],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16600,"children":16601},{"style":1195},[16602],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16604,"children":16605},{"style":1195},[16606],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16608,"children":16609},{"style":1090},[16610],{"type":45,"value":15477},{"type":39,"tag":1072,"props":16612,"children":16613},{"style":1195},[16614],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16616,"children":16617},{"style":1084},[16618],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16620,"children":16621},{"style":1195},[16622],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16624,"children":16625},{"style":1096},[16626],{"type":45,"value":13844},{"type":39,"tag":1072,"props":16628,"children":16629},{"style":1195},[16630],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16632,"children":16633},{"style":1090},[16634],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16636,"children":16637},{"style":1195},[16638],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16640,"children":16641},{"style":1090},[16642],{"type":45,"value":15405},{"type":39,"tag":1072,"props":16644,"children":16645},{"class":1074,"line":7638},[16646,16650,16654,16658,16662,16667,16671,16675,16679,16683,16687,16691],{"type":39,"tag":1072,"props":16647,"children":16648},{"style":1096},[16649],{"type":45,"value":13771},{"type":39,"tag":1072,"props":16651,"children":16652},{"style":1090},[16653],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16655,"children":16656},{"style":1195},[16657],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16659,"children":16660},{"style":1195},[16661],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16663,"children":16664},{"style":1090},[16665],{"type":45,"value":16666}," cancel_reason ",{"type":39,"tag":1072,"props":16668,"children":16669},{"style":1195},[16670],{"type":45,"value":15418},{"type":39,"tag":1072,"props":16672,"children":16673},{"style":1195},[16674],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16676,"children":16677},{"style":1096},[16678],{"type":45,"value":13844},{"type":39,"tag":1072,"props":16680,"children":16681},{"style":1195},[16682],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16684,"children":16685},{"style":1090},[16686],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16688,"children":16689},{"style":1195},[16690],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16692,"children":16693},{"style":1090},[16694],{"type":45,"value":15431},{"type":39,"tag":1072,"props":16696,"children":16697},{"class":1074,"line":7647},[16698,16702,16706,16710],{"type":39,"tag":1072,"props":16699,"children":16700},{"style":1096},[16701],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16703,"children":16704},{"style":1090},[16705],{"type":45,"value":15444},{"type":39,"tag":1072,"props":16707,"children":16708},{"style":1195},[16709],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16711,"children":16712},{"style":1090},[16713],{"type":45,"value":15453},{"type":39,"tag":1072,"props":16715,"children":16716},{"class":1074,"line":7656},[16717,16721,16725,16729,16733,16737,16741,16745,16749,16753,16757,16761,16765,16769,16773],{"type":39,"tag":1072,"props":16718,"children":16719},{"style":1096},[16720],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16722,"children":16723},{"style":1090},[16724],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16726,"children":16727},{"style":1195},[16728],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16730,"children":16731},{"style":1195},[16732],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16734,"children":16735},{"style":1090},[16736],{"type":45,"value":15477},{"type":39,"tag":1072,"props":16738,"children":16739},{"style":1195},[16740],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16742,"children":16743},{"style":1084},[16744],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16746,"children":16747},{"style":1195},[16748],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16750,"children":16751},{"style":1090},[16752],{"type":45,"value":15494},{"type":39,"tag":1072,"props":16754,"children":16755},{"style":1195},[16756],{"type":45,"value":15499},{"type":39,"tag":1072,"props":16758,"children":16759},{"style":1096},[16760],{"type":45,"value":15504},{"type":39,"tag":1072,"props":16762,"children":16763},{"style":1195},[16764],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16766,"children":16767},{"style":1090},[16768],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16770,"children":16771},{"style":1195},[16772],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16774,"children":16775},{"style":1090},[16776],{"type":45,"value":15521},{"type":39,"tag":1072,"props":16778,"children":16779},{"class":1074,"line":7684},[16780,16784,16788,16792],{"type":39,"tag":1072,"props":16781,"children":16782},{"style":1096},[16783],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16785,"children":16786},{"style":1090},[16787],{"type":45,"value":15533},{"type":39,"tag":1072,"props":16789,"children":16790},{"style":1195},[16791],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16793,"children":16794},{"style":1090},[16795],{"type":45,"value":15542},{"type":39,"tag":1072,"props":16797,"children":16798},{"class":1074,"line":7706},[16799,16803,16807,16811],{"type":39,"tag":1072,"props":16800,"children":16801},{"style":1096},[16802],{"type":45,"value":15439},{"type":39,"tag":1072,"props":16804,"children":16805},{"style":1090},[16806],{"type":45,"value":15554},{"type":39,"tag":1072,"props":16808,"children":16809},{"style":1195},[16810],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16812,"children":16813},{"style":1090},[16814],{"type":45,"value":15563},{"type":39,"tag":1072,"props":16816,"children":16817},{"class":1074,"line":7732},[16818,16822,16826,16830,16834,16838,16842,16846,16850,16854,16858,16862,16866,16870,16874,16878,16882,16886,16890,16895,16899,16903,16907,16911,16915,16919,16923,16927,16931,16935,16939,16943,16947,16951,16955],{"type":39,"tag":1072,"props":16819,"children":16820},{"style":1096},[16821],{"type":45,"value":15571},{"type":39,"tag":1072,"props":16823,"children":16824},{"style":1090},[16825],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16827,"children":16828},{"style":1096},[16829],{"type":45,"value":16110},{"type":39,"tag":1072,"props":16831,"children":16832},{"style":1090},[16833],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16835,"children":16836},{"style":1195},[16837],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16839,"children":16840},{"style":1195},[16841],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16843,"children":16844},{"style":1090},[16845],{"type":45,"value":15477},{"type":39,"tag":1072,"props":16847,"children":16848},{"style":1195},[16849],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16851,"children":16852},{"style":1084},[16853],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16855,"children":16856},{"style":1195},[16857],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16859,"children":16860},{"style":1090},[16861],{"type":45,"value":15494},{"type":39,"tag":1072,"props":16863,"children":16864},{"style":1195},[16865],{"type":45,"value":15499},{"type":39,"tag":1072,"props":16867,"children":16868},{"style":1096},[16869],{"type":45,"value":15504},{"type":39,"tag":1072,"props":16871,"children":16872},{"style":1195},[16873],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16875,"children":16876},{"style":1090},[16877],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16879,"children":16880},{"style":1195},[16881],{"type":45,"value":15581},{"type":39,"tag":1072,"props":16883,"children":16884},{"style":1096},[16885],{"type":45,"value":16167},{"type":39,"tag":1072,"props":16887,"children":16888},{"style":1090},[16889],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16891,"children":16892},{"style":1096},[16893],{"type":45,"value":16894},"COUNT",{"type":39,"tag":1072,"props":16896,"children":16897},{"style":1090},[16898],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16900,"children":16901},{"style":1195},[16902],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16904,"children":16905},{"style":1195},[16906],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16908,"children":16909},{"style":1090},[16910],{"type":45,"value":15477},{"type":39,"tag":1072,"props":16912,"children":16913},{"style":1195},[16914],{"type":45,"value":8349},{"type":39,"tag":1072,"props":16916,"children":16917},{"style":1084},[16918],{"type":45,"value":15392},{"type":39,"tag":1072,"props":16920,"children":16921},{"style":1195},[16922],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16924,"children":16925},{"style":1096},[16926],{"type":45,"value":13844},{"type":39,"tag":1072,"props":16928,"children":16929},{"style":1195},[16930],{"type":45,"value":13849},{"type":39,"tag":1072,"props":16932,"children":16933},{"style":1090},[16934],{"type":45,"value":15600},{"type":39,"tag":1072,"props":16936,"children":16937},{"style":1096},[16938],{"type":45,"value":8157},{"type":39,"tag":1072,"props":16940,"children":16941},{"style":1090},[16942],{"type":45,"value":15600},{"type":39,"tag":1072,"props":16944,"children":16945},{"style":1096},[16946],{"type":45,"value":7856},{"type":39,"tag":1072,"props":16948,"children":16949},{"style":1090},[16950],{"type":45,"value":8344},{"type":39,"tag":1072,"props":16952,"children":16953},{"style":1195},[16954],{"type":45,"value":7866},{"type":39,"tag":1072,"props":16956,"children":16957},{"style":1090},[16958],{"type":45,"value":15617},{"type":39,"tag":1072,"props":16960,"children":16961},{"class":1074,"line":7758},[16962,16966,16970,16974,16978,16982,16986,16990,16994,16998,17002,17006,17010,17014,17018,17022,17026,17030,17034,17038,17042,17046,17050,17054,17058,17062,17066,17070],{"type":39,"tag":1072,"props":16963,"children":16964},{"style":1096},[16965],{"type":45,"value":15571},{"type":39,"tag":1072,"props":16967,"children":16968},{"style":1090},[16969],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16971,"children":16972},{"style":1096},[16973],{"type":45,"value":16894},{"type":39,"tag":1072,"props":16975,"children":16976},{"style":1090},[16977],{"type":45,"value":7815},{"type":39,"tag":1072,"props":16979,"children":16980},{"style":1195},[16981],{"type":45,"value":13218},{"type":39,"tag":1072,"props":16983,"children":16984},{"style":1195},[16985],{"type":45,"value":13812},{"type":39,"tag":1072,"props":16987,"children":16988},{"style":1090},[16989],{"type":45,"value":16666},{"type":39,"tag":1072,"props":16991,"children":16992},{"style":1195},[16993],{"type":45,"value":15418},{"type":39,"tag":1072,"props":16995,"children":16996},{"style":1195},[16997],{"type":45,"value":13407},{"type":39,"tag":1072,"props":16999,"children":17000},{"style":1096},[17001],{"type":45,"value":13844},{"type":39,"tag":1072,"props":17003,"children":17004},{"style":1195},[17005],{"type":45,"value":13849},{"type":39,"tag":1072,"props":17007,"children":17008},{"style":1090},[17009],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17011,"children":17012},{"style":1195},[17013],{"type":45,"value":15581},{"type":39,"tag":1072,"props":17015,"children":17016},{"style":1096},[17017],{"type":45,"value":16167},{"type":39,"tag":1072,"props":17019,"children":17020},{"style":1090},[17021],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17023,"children":17024},{"style":1096},[17025],{"type":45,"value":16245},{"type":39,"tag":1072,"props":17027,"children":17028},{"style":1090},[17029],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17031,"children":17032},{"style":1195},[17033],{"type":45,"value":13780},{"type":39,"tag":1072,"props":17035,"children":17036},{"style":1090},[17037],{"type":45,"value":15600},{"type":39,"tag":1072,"props":17039,"children":17040},{"style":1096},[17041],{"type":45,"value":8157},{"type":39,"tag":1072,"props":17043,"children":17044},{"style":1090},[17045],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17047,"children":17048},{"style":1195},[17049],{"type":45,"value":13780},{"type":39,"tag":1072,"props":17051,"children":17052},{"style":1096},[17053],{"type":45,"value":8148},{"type":39,"tag":1072,"props":17055,"children":17056},{"style":1090},[17057],{"type":45,"value":978},{"type":39,"tag":1072,"props":17059,"children":17060},{"style":1096},[17061],{"type":45,"value":7856},{"type":39,"tag":1072,"props":17063,"children":17064},{"style":1090},[17065],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17067,"children":17068},{"style":1195},[17069],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17071,"children":17072},{"style":1090},[17073],{"type":45,"value":15679},{"type":39,"tag":1072,"props":17075,"children":17076},{"class":1074,"line":7783},[17077,17081,17085,17089],{"type":39,"tag":1072,"props":17078,"children":17079},{"style":1195},[17080],{"type":45,"value":8227},{"type":39,"tag":1072,"props":17082,"children":17083},{"style":1096},[17084],{"type":45,"value":15691},{"type":39,"tag":1072,"props":17086,"children":17087},{"style":1090},[17088],{"type":45,"value":934},{"type":39,"tag":1072,"props":17090,"children":17091},{"style":1096},[17092],{"type":45,"value":15700},{"type":39,"tag":1072,"props":17094,"children":17095},{"class":1074,"line":7804},[17096,17100,17105],{"type":39,"tag":1072,"props":17097,"children":17098},{"style":1195},[17099],{"type":45,"value":14228},{"type":39,"tag":1072,"props":17101,"children":17102},{"style":1090},[17103],{"type":45,"value":17104}," order_date::",{"type":39,"tag":1072,"props":17106,"children":17107},{"style":1195},[17108],{"type":45,"value":10165},{"type":39,"tag":1072,"props":17110,"children":17111},{"class":1074,"line":7874},[17112,17116],{"type":39,"tag":1072,"props":17113,"children":17114},{"style":1195},[17115],{"type":45,"value":15720},{"type":39,"tag":1072,"props":17117,"children":17118},{"style":1090},[17119],{"type":45,"value":15725},{"type":39,"tag":85,"props":17121,"children":17123},{"id":17122},"_2-customer-cohorts-rpt_customer_cohortssql",[17124,17126],{"type":45,"value":17125},"2) Customer cohorts - ",{"type":39,"tag":70,"props":17127,"children":17129},{"className":17128},[],[17130],{"type":45,"value":17131},"rpt_customer_cohorts.sql",{"type":39,"tag":48,"props":17133,"children":17134},{},[17135],{"type":45,"value":17136},"Monthly cohort analysis showing retention and lifetime value. This tells you if you're acquiring customers who stick around.",{"type":39,"tag":48,"props":17138,"children":17139},{},[17140,17141,17150],{"type":45,"value":7413},{"type":39,"tag":97,"props":17142,"children":17143},{},[17144],{"type":39,"tag":70,"props":17145,"children":17147},{"className":17146},[],[17148],{"type":45,"value":17149},"ecommerce\u002Fassets\u002Freports\u002Frpt_customer_cohorts.sql",{"type":45,"value":7424},{"type":39,"tag":1242,"props":17152,"children":17153},{":variants":1244,"group":1245},[17154,18083,19022],{"type":39,"tag":1248,"props":17155,"children":17156},{"v-slot:clickhouse":7},[17157],{"type":39,"tag":1062,"props":17158,"children":17160},{"className":7433,"code":17159,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_customer_cohorts\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_orders\n  - staging.stg_customers\ncolumns:\n  - name: cohort_month\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nWITH customer_orders AS (\n    SELECT\n        o.customer_email,\n        toStartOfMonth(c.first_seen_at) AS cohort_month,\n        toStartOfMonth(o.order_date) AS order_month,\n        o.order_total\n    FROM staging.stg_orders o\n    INNER JOIN staging.stg_customers c\n        ON o.customer_email = c.customer_email\n    WHERE o.payment_status = 'paid'\n),\ncohort_sizes AS (\n    SELECT\n        cohort_month,\n        count(DISTINCT customer_email) AS cohort_size\n    FROM customer_orders\n    GROUP BY cohort_month\n)\nSELECT\n    co.cohort_month,\n    cs.cohort_size,\n    dateDiff('month', co.cohort_month, co.order_month) AS months_since_first,\n    count(DISTINCT co.customer_email) AS active_customers,\n    round(active_customers \u002F nullIf(cs.cohort_size, 0) * 100, 2) AS retention_rate,\n    sum(co.order_total) AS cohort_revenue,\n    round(cohort_revenue \u002F nullIf(cs.cohort_size, 0), 2) AS revenue_per_customer\nFROM customer_orders co\nINNER JOIN cohort_sizes cs\n    ON co.cohort_month = cs.cohort_month\nGROUP BY co.cohort_month, cs.cohort_size, months_since_first\nORDER BY co.cohort_month, months_since_first\n",[17161],{"type":39,"tag":70,"props":17162,"children":17163},{"__ignoreMap":7},[17164,17171,17179,17186,17193,17200,17207,17214,17222,17229,17237,17244,17251,17258,17265,17272,17294,17302,17323,17357,17390,17406,17430,17455,17492,17522,17530,17546,17553,17561,17592,17604,17617,17624,17631,17652,17673,17737,17778,17856,17893,17958,17970,17983,18020,18060],{"type":39,"tag":1072,"props":17165,"children":17166},{"class":1074,"line":868},[17167],{"type":39,"tag":1072,"props":17168,"children":17169},{"style":7445},[17170],{"type":45,"value":7448},{"type":39,"tag":1072,"props":17172,"children":17173},{"class":1074,"line":476},[17174],{"type":39,"tag":1072,"props":17175,"children":17176},{"style":7445},[17177],{"type":45,"value":17178},"name: reports.rpt_customer_cohorts\n",{"type":39,"tag":1072,"props":17180,"children":17181},{"class":1074,"line":483},[17182],{"type":39,"tag":1072,"props":17183,"children":17184},{"style":7445},[17185],{"type":45,"value":7464},{"type":39,"tag":1072,"props":17187,"children":17188},{"class":1074,"line":1626},[17189],{"type":39,"tag":1072,"props":17190,"children":17191},{"style":7445},[17192],{"type":45,"value":7472},{"type":39,"tag":1072,"props":17194,"children":17195},{"class":1074,"line":11},[17196],{"type":39,"tag":1072,"props":17197,"children":17198},{"style":7445},[17199],{"type":45,"value":7480},{"type":39,"tag":1072,"props":17201,"children":17202},{"class":1074,"line":20},[17203],{"type":39,"tag":1072,"props":17204,"children":17205},{"style":7445},[17206],{"type":45,"value":7488},{"type":39,"tag":1072,"props":17208,"children":17209},{"class":1074,"line":1679},[17210],{"type":39,"tag":1072,"props":17211,"children":17212},{"style":7445},[17213],{"type":45,"value":15238},{"type":39,"tag":1072,"props":17215,"children":17216},{"class":1074,"line":860},[17217],{"type":39,"tag":1072,"props":17218,"children":17219},{"style":7445},[17220],{"type":45,"value":17221},"  - staging.stg_customers\n",{"type":39,"tag":1072,"props":17223,"children":17224},{"class":1074,"line":2907},[17225],{"type":39,"tag":1072,"props":17226,"children":17227},{"style":7445},[17228],{"type":45,"value":7512},{"type":39,"tag":1072,"props":17230,"children":17231},{"class":1074,"line":7515},[17232],{"type":39,"tag":1072,"props":17233,"children":17234},{"style":7445},[17235],{"type":45,"value":17236},"  - name: cohort_month\n",{"type":39,"tag":1072,"props":17238,"children":17239},{"class":1074,"line":7524},[17240],{"type":39,"tag":1072,"props":17241,"children":17242},{"style":7445},[17243],{"type":45,"value":11546},{"type":39,"tag":1072,"props":17245,"children":17246},{"class":1074,"line":7533},[17247],{"type":39,"tag":1072,"props":17248,"children":17249},{"style":7445},[17250],{"type":45,"value":7539},{"type":39,"tag":1072,"props":17252,"children":17253},{"class":1074,"line":7542},[17254],{"type":39,"tag":1072,"props":17255,"children":17256},{"style":7445},[17257],{"type":45,"value":7548},{"type":39,"tag":1072,"props":17259,"children":17260},{"class":1074,"line":7551},[17261],{"type":39,"tag":1072,"props":17262,"children":17263},{"style":7445},[17264],{"type":45,"value":7635},{"type":39,"tag":1072,"props":17266,"children":17267},{"class":1074,"line":2380},[17268],{"type":39,"tag":1072,"props":17269,"children":17270},{"emptyLinePlaceholder":19},[17271],{"type":45,"value":7644},{"type":39,"tag":1072,"props":17273,"children":17274},{"class":1074,"line":7568},[17275,17280,17285,17289],{"type":39,"tag":1072,"props":17276,"children":17277},{"style":1195},[17278],{"type":45,"value":17279},"WITH",{"type":39,"tag":1072,"props":17281,"children":17282},{"style":1090},[17283],{"type":45,"value":17284}," customer_orders ",{"type":39,"tag":1072,"props":17286,"children":17287},{"style":1195},[17288],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17290,"children":17291},{"style":1090},[17292],{"type":45,"value":17293}," (\n",{"type":39,"tag":1072,"props":17295,"children":17296},{"class":1074,"line":7577},[17297],{"type":39,"tag":1072,"props":17298,"children":17299},{"style":1195},[17300],{"type":45,"value":17301},"    SELECT\n",{"type":39,"tag":1072,"props":17303,"children":17304},{"class":1074,"line":7585},[17305,17310,17314,17319],{"type":39,"tag":1072,"props":17306,"children":17307},{"style":1096},[17308],{"type":45,"value":17309},"        o",{"type":39,"tag":1072,"props":17311,"children":17312},{"style":1090},[17313],{"type":45,"value":934},{"type":39,"tag":1072,"props":17315,"children":17316},{"style":1096},[17317],{"type":45,"value":17318},"customer_email",{"type":39,"tag":1072,"props":17320,"children":17321},{"style":1090},[17322],{"type":45,"value":7703},{"type":39,"tag":1072,"props":17324,"children":17325},{"class":1074,"line":7593},[17326,17331,17335,17339,17344,17348,17352],{"type":39,"tag":1072,"props":17327,"children":17328},{"style":1090},[17329],{"type":45,"value":17330},"        toStartOfMonth(",{"type":39,"tag":1072,"props":17332,"children":17333},{"style":1096},[17334],{"type":45,"value":8358},{"type":39,"tag":1072,"props":17336,"children":17337},{"style":1090},[17338],{"type":45,"value":934},{"type":39,"tag":1072,"props":17340,"children":17341},{"style":1096},[17342],{"type":45,"value":17343},"first_seen_at",{"type":39,"tag":1072,"props":17345,"children":17346},{"style":1090},[17347],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17349,"children":17350},{"style":1195},[17351],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17353,"children":17354},{"style":1090},[17355],{"type":45,"value":17356}," cohort_month,\n",{"type":39,"tag":1072,"props":17358,"children":17359},{"class":1074,"line":7602},[17360,17364,17368,17372,17377,17381,17385],{"type":39,"tag":1072,"props":17361,"children":17362},{"style":1090},[17363],{"type":45,"value":17330},{"type":39,"tag":1072,"props":17365,"children":17366},{"style":1096},[17367],{"type":45,"value":7820},{"type":39,"tag":1072,"props":17369,"children":17370},{"style":1090},[17371],{"type":45,"value":934},{"type":39,"tag":1072,"props":17373,"children":17374},{"style":1096},[17375],{"type":45,"value":17376},"order_date",{"type":39,"tag":1072,"props":17378,"children":17379},{"style":1090},[17380],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17382,"children":17383},{"style":1195},[17384],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17386,"children":17387},{"style":1090},[17388],{"type":45,"value":17389}," order_month,\n",{"type":39,"tag":1072,"props":17391,"children":17392},{"class":1074,"line":7611},[17393,17397,17401],{"type":39,"tag":1072,"props":17394,"children":17395},{"style":1096},[17396],{"type":45,"value":17309},{"type":39,"tag":1072,"props":17398,"children":17399},{"style":1090},[17400],{"type":45,"value":934},{"type":39,"tag":1072,"props":17402,"children":17403},{"style":1096},[17404],{"type":45,"value":17405},"order_total\n",{"type":39,"tag":1072,"props":17407,"children":17408},{"class":1074,"line":7620},[17409,17414,17418,17422,17426],{"type":39,"tag":1072,"props":17410,"children":17411},{"style":1195},[17412],{"type":45,"value":17413},"    FROM",{"type":39,"tag":1072,"props":17415,"children":17416},{"style":1096},[17417],{"type":45,"value":15691},{"type":39,"tag":1072,"props":17419,"children":17420},{"style":1090},[17421],{"type":45,"value":934},{"type":39,"tag":1072,"props":17423,"children":17424},{"style":1096},[17425],{"type":45,"value":16313},{"type":39,"tag":1072,"props":17427,"children":17428},{"style":1090},[17429],{"type":45,"value":8246},{"type":39,"tag":1072,"props":17431,"children":17432},{"class":1074,"line":7629},[17433,17438,17442,17446,17451],{"type":39,"tag":1072,"props":17434,"children":17435},{"style":1195},[17436],{"type":45,"value":17437},"    INNER JOIN",{"type":39,"tag":1072,"props":17439,"children":17440},{"style":1096},[17441],{"type":45,"value":15691},{"type":39,"tag":1072,"props":17443,"children":17444},{"style":1090},[17445],{"type":45,"value":934},{"type":39,"tag":1072,"props":17447,"children":17448},{"style":1096},[17449],{"type":45,"value":17450},"stg_customers",{"type":39,"tag":1072,"props":17452,"children":17453},{"style":1090},[17454],{"type":45,"value":8272},{"type":39,"tag":1072,"props":17456,"children":17457},{"class":1074,"line":7638},[17458,17463,17467,17471,17475,17479,17483,17487],{"type":39,"tag":1072,"props":17459,"children":17460},{"style":1195},[17461],{"type":45,"value":17462},"        ON",{"type":39,"tag":1072,"props":17464,"children":17465},{"style":1096},[17466],{"type":45,"value":8286},{"type":39,"tag":1072,"props":17468,"children":17469},{"style":1090},[17470],{"type":45,"value":934},{"type":39,"tag":1072,"props":17472,"children":17473},{"style":1096},[17474],{"type":45,"value":17318},{"type":39,"tag":1072,"props":17476,"children":17477},{"style":1195},[17478],{"type":45,"value":8299},{"type":39,"tag":1072,"props":17480,"children":17481},{"style":1096},[17482],{"type":45,"value":8304},{"type":39,"tag":1072,"props":17484,"children":17485},{"style":1090},[17486],{"type":45,"value":934},{"type":39,"tag":1072,"props":17488,"children":17489},{"style":1096},[17490],{"type":45,"value":17491},"customer_email\n",{"type":39,"tag":1072,"props":17493,"children":17494},{"class":1074,"line":7647},[17495,17500,17504,17508,17513,17517],{"type":39,"tag":1072,"props":17496,"children":17497},{"style":1195},[17498],{"type":45,"value":17499},"    WHERE",{"type":39,"tag":1072,"props":17501,"children":17502},{"style":1096},[17503],{"type":45,"value":8286},{"type":39,"tag":1072,"props":17505,"children":17506},{"style":1090},[17507],{"type":45,"value":934},{"type":39,"tag":1072,"props":17509,"children":17510},{"style":1096},[17511],{"type":45,"value":17512},"payment_status",{"type":39,"tag":1072,"props":17514,"children":17515},{"style":1195},[17516],{"type":45,"value":8299},{"type":39,"tag":1072,"props":17518,"children":17519},{"style":1084},[17520],{"type":45,"value":17521}," 'paid'\n",{"type":39,"tag":1072,"props":17523,"children":17524},{"class":1074,"line":7656},[17525],{"type":39,"tag":1072,"props":17526,"children":17527},{"style":1090},[17528],{"type":45,"value":17529},"),\n",{"type":39,"tag":1072,"props":17531,"children":17532},{"class":1074,"line":7684},[17533,17538,17542],{"type":39,"tag":1072,"props":17534,"children":17535},{"style":1090},[17536],{"type":45,"value":17537},"cohort_sizes ",{"type":39,"tag":1072,"props":17539,"children":17540},{"style":1195},[17541],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17543,"children":17544},{"style":1090},[17545],{"type":45,"value":17293},{"type":39,"tag":1072,"props":17547,"children":17548},{"class":1074,"line":7706},[17549],{"type":39,"tag":1072,"props":17550,"children":17551},{"style":1195},[17552],{"type":45,"value":17301},{"type":39,"tag":1072,"props":17554,"children":17555},{"class":1074,"line":7732},[17556],{"type":39,"tag":1072,"props":17557,"children":17558},{"style":1090},[17559],{"type":45,"value":17560},"        cohort_month,\n",{"type":39,"tag":1072,"props":17562,"children":17563},{"class":1074,"line":7758},[17564,17569,17573,17578,17583,17587],{"type":39,"tag":1072,"props":17565,"children":17566},{"style":1096},[17567],{"type":45,"value":17568},"        count",{"type":39,"tag":1072,"props":17570,"children":17571},{"style":1090},[17572],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17574,"children":17575},{"style":1195},[17576],{"type":45,"value":17577},"DISTINCT",{"type":39,"tag":1072,"props":17579,"children":17580},{"style":1090},[17581],{"type":45,"value":17582}," customer_email) ",{"type":39,"tag":1072,"props":17584,"children":17585},{"style":1195},[17586],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17588,"children":17589},{"style":1090},[17590],{"type":45,"value":17591}," cohort_size\n",{"type":39,"tag":1072,"props":17593,"children":17594},{"class":1074,"line":7783},[17595,17599],{"type":39,"tag":1072,"props":17596,"children":17597},{"style":1195},[17598],{"type":45,"value":17413},{"type":39,"tag":1072,"props":17600,"children":17601},{"style":1090},[17602],{"type":45,"value":17603}," customer_orders\n",{"type":39,"tag":1072,"props":17605,"children":17606},{"class":1074,"line":7804},[17607,17612],{"type":39,"tag":1072,"props":17608,"children":17609},{"style":1195},[17610],{"type":45,"value":17611},"    GROUP BY",{"type":39,"tag":1072,"props":17613,"children":17614},{"style":1090},[17615],{"type":45,"value":17616}," cohort_month\n",{"type":39,"tag":1072,"props":17618,"children":17619},{"class":1074,"line":7874},[17620],{"type":39,"tag":1072,"props":17621,"children":17622},{"style":1090},[17623],{"type":45,"value":8372},{"type":39,"tag":1072,"props":17625,"children":17626},{"class":1074,"line":7936},[17627],{"type":39,"tag":1072,"props":17628,"children":17629},{"style":1195},[17630],{"type":45,"value":7653},{"type":39,"tag":1072,"props":17632,"children":17633},{"class":1074,"line":7998},[17634,17639,17643,17648],{"type":39,"tag":1072,"props":17635,"children":17636},{"style":1096},[17637],{"type":45,"value":17638},"    co",{"type":39,"tag":1072,"props":17640,"children":17641},{"style":1090},[17642],{"type":45,"value":934},{"type":39,"tag":1072,"props":17644,"children":17645},{"style":1096},[17646],{"type":45,"value":17647},"cohort_month",{"type":39,"tag":1072,"props":17649,"children":17650},{"style":1090},[17651],{"type":45,"value":7703},{"type":39,"tag":1072,"props":17653,"children":17654},{"class":1074,"line":8060},[17655,17660,17664,17669],{"type":39,"tag":1072,"props":17656,"children":17657},{"style":1096},[17658],{"type":45,"value":17659},"    cs",{"type":39,"tag":1072,"props":17661,"children":17662},{"style":1090},[17663],{"type":45,"value":934},{"type":39,"tag":1072,"props":17665,"children":17666},{"style":1096},[17667],{"type":45,"value":17668},"cohort_size",{"type":39,"tag":1072,"props":17670,"children":17671},{"style":1090},[17672],{"type":45,"value":7703},{"type":39,"tag":1072,"props":17674,"children":17675},{"class":1074,"line":8081},[17676,17681,17685,17690,17694,17699,17703,17707,17711,17715,17719,17724,17728,17732],{"type":39,"tag":1072,"props":17677,"children":17678},{"style":1096},[17679],{"type":45,"value":17680},"    dateDiff",{"type":39,"tag":1072,"props":17682,"children":17683},{"style":1090},[17684],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17686,"children":17687},{"style":1084},[17688],{"type":45,"value":17689},"'month'",{"type":39,"tag":1072,"props":17691,"children":17692},{"style":1090},[17693],{"type":45,"value":978},{"type":39,"tag":1072,"props":17695,"children":17696},{"style":1096},[17697],{"type":45,"value":17698},"co",{"type":39,"tag":1072,"props":17700,"children":17701},{"style":1090},[17702],{"type":45,"value":934},{"type":39,"tag":1072,"props":17704,"children":17705},{"style":1096},[17706],{"type":45,"value":17647},{"type":39,"tag":1072,"props":17708,"children":17709},{"style":1090},[17710],{"type":45,"value":978},{"type":39,"tag":1072,"props":17712,"children":17713},{"style":1096},[17714],{"type":45,"value":17698},{"type":39,"tag":1072,"props":17716,"children":17717},{"style":1090},[17718],{"type":45,"value":934},{"type":39,"tag":1072,"props":17720,"children":17721},{"style":1096},[17722],{"type":45,"value":17723},"order_month",{"type":39,"tag":1072,"props":17725,"children":17726},{"style":1090},[17727],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17729,"children":17730},{"style":1195},[17731],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17733,"children":17734},{"style":1090},[17735],{"type":45,"value":17736}," months_since_first,\n",{"type":39,"tag":1072,"props":17738,"children":17739},{"class":1074,"line":8102},[17740,17744,17748,17752,17757,17761,17765,17769,17773],{"type":39,"tag":1072,"props":17741,"children":17742},{"style":1096},[17743],{"type":45,"value":15354},{"type":39,"tag":1072,"props":17745,"children":17746},{"style":1090},[17747],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17749,"children":17750},{"style":1195},[17751],{"type":45,"value":17577},{"type":39,"tag":1072,"props":17753,"children":17754},{"style":1096},[17755],{"type":45,"value":17756}," co",{"type":39,"tag":1072,"props":17758,"children":17759},{"style":1090},[17760],{"type":45,"value":934},{"type":39,"tag":1072,"props":17762,"children":17763},{"style":1096},[17764],{"type":45,"value":17318},{"type":39,"tag":1072,"props":17766,"children":17767},{"style":1090},[17768],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17770,"children":17771},{"style":1195},[17772],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17774,"children":17775},{"style":1090},[17776],{"type":45,"value":17777}," active_customers,\n",{"type":39,"tag":1072,"props":17779,"children":17780},{"class":1074,"line":8123},[17781,17785,17790,17794,17798,17802,17807,17811,17815,17819,17823,17827,17831,17835,17839,17843,17847,17851],{"type":39,"tag":1072,"props":17782,"children":17783},{"style":1096},[17784],{"type":45,"value":15571},{"type":39,"tag":1072,"props":17786,"children":17787},{"style":1090},[17788],{"type":45,"value":17789},"(active_customers ",{"type":39,"tag":1072,"props":17791,"children":17792},{"style":1195},[17793],{"type":45,"value":15581},{"type":39,"tag":1072,"props":17795,"children":17796},{"style":1096},[17797],{"type":45,"value":15586},{"type":39,"tag":1072,"props":17799,"children":17800},{"style":1090},[17801],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17803,"children":17804},{"style":1096},[17805],{"type":45,"value":17806},"cs",{"type":39,"tag":1072,"props":17808,"children":17809},{"style":1090},[17810],{"type":45,"value":934},{"type":39,"tag":1072,"props":17812,"children":17813},{"style":1096},[17814],{"type":45,"value":17668},{"type":39,"tag":1072,"props":17816,"children":17817},{"style":1090},[17818],{"type":45,"value":978},{"type":39,"tag":1072,"props":17820,"children":17821},{"style":1096},[17822],{"type":45,"value":8157},{"type":39,"tag":1072,"props":17824,"children":17825},{"style":1090},[17826],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17828,"children":17829},{"style":1195},[17830],{"type":45,"value":13780},{"type":39,"tag":1072,"props":17832,"children":17833},{"style":1096},[17834],{"type":45,"value":8148},{"type":39,"tag":1072,"props":17836,"children":17837},{"style":1090},[17838],{"type":45,"value":978},{"type":39,"tag":1072,"props":17840,"children":17841},{"style":1096},[17842],{"type":45,"value":7856},{"type":39,"tag":1072,"props":17844,"children":17845},{"style":1090},[17846],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17848,"children":17849},{"style":1195},[17850],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17852,"children":17853},{"style":1090},[17854],{"type":45,"value":17855}," retention_rate,\n",{"type":39,"tag":1072,"props":17857,"children":17858},{"class":1074,"line":8169},[17859,17863,17867,17871,17875,17880,17884,17888],{"type":39,"tag":1072,"props":17860,"children":17861},{"style":1096},[17862],{"type":45,"value":15439},{"type":39,"tag":1072,"props":17864,"children":17865},{"style":1090},[17866],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17868,"children":17869},{"style":1096},[17870],{"type":45,"value":17698},{"type":39,"tag":1072,"props":17872,"children":17873},{"style":1090},[17874],{"type":45,"value":934},{"type":39,"tag":1072,"props":17876,"children":17877},{"style":1096},[17878],{"type":45,"value":17879},"order_total",{"type":39,"tag":1072,"props":17881,"children":17882},{"style":1090},[17883],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17885,"children":17886},{"style":1195},[17887],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17889,"children":17890},{"style":1090},[17891],{"type":45,"value":17892}," cohort_revenue,\n",{"type":39,"tag":1072,"props":17894,"children":17895},{"class":1074,"line":8195},[17896,17900,17905,17909,17913,17917,17921,17925,17929,17933,17937,17941,17945,17949,17953],{"type":39,"tag":1072,"props":17897,"children":17898},{"style":1096},[17899],{"type":45,"value":15571},{"type":39,"tag":1072,"props":17901,"children":17902},{"style":1090},[17903],{"type":45,"value":17904},"(cohort_revenue ",{"type":39,"tag":1072,"props":17906,"children":17907},{"style":1195},[17908],{"type":45,"value":15581},{"type":39,"tag":1072,"props":17910,"children":17911},{"style":1096},[17912],{"type":45,"value":15586},{"type":39,"tag":1072,"props":17914,"children":17915},{"style":1090},[17916],{"type":45,"value":7815},{"type":39,"tag":1072,"props":17918,"children":17919},{"style":1096},[17920],{"type":45,"value":17806},{"type":39,"tag":1072,"props":17922,"children":17923},{"style":1090},[17924],{"type":45,"value":934},{"type":39,"tag":1072,"props":17926,"children":17927},{"style":1096},[17928],{"type":45,"value":17668},{"type":39,"tag":1072,"props":17930,"children":17931},{"style":1090},[17932],{"type":45,"value":978},{"type":39,"tag":1072,"props":17934,"children":17935},{"style":1096},[17936],{"type":45,"value":8157},{"type":39,"tag":1072,"props":17938,"children":17939},{"style":1090},[17940],{"type":45,"value":15600},{"type":39,"tag":1072,"props":17942,"children":17943},{"style":1096},[17944],{"type":45,"value":7856},{"type":39,"tag":1072,"props":17946,"children":17947},{"style":1090},[17948],{"type":45,"value":8344},{"type":39,"tag":1072,"props":17950,"children":17951},{"style":1195},[17952],{"type":45,"value":7866},{"type":39,"tag":1072,"props":17954,"children":17955},{"style":1090},[17956],{"type":45,"value":17957}," revenue_per_customer\n",{"type":39,"tag":1072,"props":17959,"children":17960},{"class":1074,"line":8221},[17961,17965],{"type":39,"tag":1072,"props":17962,"children":17963},{"style":1195},[17964],{"type":45,"value":8227},{"type":39,"tag":1072,"props":17966,"children":17967},{"style":1090},[17968],{"type":45,"value":17969}," customer_orders co\n",{"type":39,"tag":1072,"props":17971,"children":17972},{"class":1074,"line":8249},[17973,17978],{"type":39,"tag":1072,"props":17974,"children":17975},{"style":1195},[17976],{"type":45,"value":17977},"INNER JOIN",{"type":39,"tag":1072,"props":17979,"children":17980},{"style":1090},[17981],{"type":45,"value":17982}," cohort_sizes cs\n",{"type":39,"tag":1072,"props":17984,"children":17985},{"class":1074,"line":8275},[17986,17990,17994,17998,18002,18006,18011,18015],{"type":39,"tag":1072,"props":17987,"children":17988},{"style":1195},[17989],{"type":45,"value":8281},{"type":39,"tag":1072,"props":17991,"children":17992},{"style":1096},[17993],{"type":45,"value":17756},{"type":39,"tag":1072,"props":17995,"children":17996},{"style":1090},[17997],{"type":45,"value":934},{"type":39,"tag":1072,"props":17999,"children":18000},{"style":1096},[18001],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18003,"children":18004},{"style":1195},[18005],{"type":45,"value":8299},{"type":39,"tag":1072,"props":18007,"children":18008},{"style":1096},[18009],{"type":45,"value":18010}," cs",{"type":39,"tag":1072,"props":18012,"children":18013},{"style":1090},[18014],{"type":45,"value":934},{"type":39,"tag":1072,"props":18016,"children":18017},{"style":1096},[18018],{"type":45,"value":18019},"cohort_month\n",{"type":39,"tag":1072,"props":18021,"children":18022},{"class":1074,"line":8316},[18023,18027,18031,18035,18039,18043,18047,18051,18055],{"type":39,"tag":1072,"props":18024,"children":18025},{"style":1195},[18026],{"type":45,"value":14228},{"type":39,"tag":1072,"props":18028,"children":18029},{"style":1096},[18030],{"type":45,"value":17756},{"type":39,"tag":1072,"props":18032,"children":18033},{"style":1090},[18034],{"type":45,"value":934},{"type":39,"tag":1072,"props":18036,"children":18037},{"style":1096},[18038],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18040,"children":18041},{"style":1090},[18042],{"type":45,"value":978},{"type":39,"tag":1072,"props":18044,"children":18045},{"style":1096},[18046],{"type":45,"value":17806},{"type":39,"tag":1072,"props":18048,"children":18049},{"style":1090},[18050],{"type":45,"value":934},{"type":39,"tag":1072,"props":18052,"children":18053},{"style":1096},[18054],{"type":45,"value":17668},{"type":39,"tag":1072,"props":18056,"children":18057},{"style":1090},[18058],{"type":45,"value":18059},", months_since_first\n",{"type":39,"tag":1072,"props":18061,"children":18062},{"class":1074,"line":9194},[18063,18067,18071,18075,18079],{"type":39,"tag":1072,"props":18064,"children":18065},{"style":1195},[18066],{"type":45,"value":15720},{"type":39,"tag":1072,"props":18068,"children":18069},{"style":1096},[18070],{"type":45,"value":17756},{"type":39,"tag":1072,"props":18072,"children":18073},{"style":1090},[18074],{"type":45,"value":934},{"type":39,"tag":1072,"props":18076,"children":18077},{"style":1096},[18078],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18080,"children":18081},{"style":1090},[18082],{"type":45,"value":18059},{"type":39,"tag":1248,"props":18084,"children":18085},{"v-slot:bigquery":7},[18086],{"type":39,"tag":1062,"props":18087,"children":18089},{"className":7433,"code":18088,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_customer_cohorts\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_orders\n  - staging.stg_customers\ncolumns:\n  - name: cohort_month\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nWITH customer_orders AS (\n    SELECT\n        o.customer_email,\n        DATE_TRUNC(c.first_seen_at, MONTH) AS cohort_month,\n        DATE_TRUNC(o.order_date, MONTH) AS order_month,\n        o.order_total\n    FROM staging.stg_orders o\n    INNER JOIN staging.stg_customers c\n        ON o.customer_email = c.customer_email\n    WHERE o.payment_status = 'paid'\n),\ncohort_sizes AS (\n    SELECT\n        cohort_month,\n        count(DISTINCT customer_email) AS cohort_size\n    FROM customer_orders\n    GROUP BY cohort_month\n)\nSELECT\n    co.cohort_month,\n    cs.cohort_size,\n    DATE_DIFF(co.order_month, co.cohort_month, MONTH) AS months_since_first,\n    count(DISTINCT co.customer_email) AS active_customers,\n    round(count(DISTINCT co.customer_email) \u002F NULLIF(cs.cohort_size, 0) * 100, 2) AS retention_rate,\n    sum(co.order_total) AS cohort_revenue,\n    round(sum(co.order_total) \u002F NULLIF(cs.cohort_size, 0), 2) AS revenue_per_customer\nFROM customer_orders co\nINNER JOIN cohort_sizes cs\n    ON co.cohort_month = cs.cohort_month\nGROUP BY co.cohort_month, cs.cohort_size, months_since_first\nORDER BY co.cohort_month, months_since_first\n",[18090],{"type":39,"tag":70,"props":18091,"children":18092},{"__ignoreMap":7},[18093,18100,18107,18114,18121,18128,18135,18142,18149,18156,18163,18170,18177,18184,18191,18198,18217,18224,18243,18284,18323,18338,18361,18384,18419,18446,18453,18468,18475,18482,18509,18520,18531,18538,18545,18564,18583,18639,18678,18781,18816,18903,18914,18925,18960,18999],{"type":39,"tag":1072,"props":18094,"children":18095},{"class":1074,"line":868},[18096],{"type":39,"tag":1072,"props":18097,"children":18098},{"style":7445},[18099],{"type":45,"value":7448},{"type":39,"tag":1072,"props":18101,"children":18102},{"class":1074,"line":476},[18103],{"type":39,"tag":1072,"props":18104,"children":18105},{"style":7445},[18106],{"type":45,"value":17178},{"type":39,"tag":1072,"props":18108,"children":18109},{"class":1074,"line":483},[18110],{"type":39,"tag":1072,"props":18111,"children":18112},{"style":7445},[18113],{"type":45,"value":7464},{"type":39,"tag":1072,"props":18115,"children":18116},{"class":1074,"line":1626},[18117],{"type":39,"tag":1072,"props":18118,"children":18119},{"style":7445},[18120],{"type":45,"value":7472},{"type":39,"tag":1072,"props":18122,"children":18123},{"class":1074,"line":11},[18124],{"type":39,"tag":1072,"props":18125,"children":18126},{"style":7445},[18127],{"type":45,"value":7480},{"type":39,"tag":1072,"props":18129,"children":18130},{"class":1074,"line":20},[18131],{"type":39,"tag":1072,"props":18132,"children":18133},{"style":7445},[18134],{"type":45,"value":7488},{"type":39,"tag":1072,"props":18136,"children":18137},{"class":1074,"line":1679},[18138],{"type":39,"tag":1072,"props":18139,"children":18140},{"style":7445},[18141],{"type":45,"value":15238},{"type":39,"tag":1072,"props":18143,"children":18144},{"class":1074,"line":860},[18145],{"type":39,"tag":1072,"props":18146,"children":18147},{"style":7445},[18148],{"type":45,"value":17221},{"type":39,"tag":1072,"props":18150,"children":18151},{"class":1074,"line":2907},[18152],{"type":39,"tag":1072,"props":18153,"children":18154},{"style":7445},[18155],{"type":45,"value":7512},{"type":39,"tag":1072,"props":18157,"children":18158},{"class":1074,"line":7515},[18159],{"type":39,"tag":1072,"props":18160,"children":18161},{"style":7445},[18162],{"type":45,"value":17236},{"type":39,"tag":1072,"props":18164,"children":18165},{"class":1074,"line":7524},[18166],{"type":39,"tag":1072,"props":18167,"children":18168},{"style":7445},[18169],{"type":45,"value":11546},{"type":39,"tag":1072,"props":18171,"children":18172},{"class":1074,"line":7533},[18173],{"type":39,"tag":1072,"props":18174,"children":18175},{"style":7445},[18176],{"type":45,"value":7539},{"type":39,"tag":1072,"props":18178,"children":18179},{"class":1074,"line":7542},[18180],{"type":39,"tag":1072,"props":18181,"children":18182},{"style":7445},[18183],{"type":45,"value":7548},{"type":39,"tag":1072,"props":18185,"children":18186},{"class":1074,"line":7551},[18187],{"type":39,"tag":1072,"props":18188,"children":18189},{"style":7445},[18190],{"type":45,"value":7635},{"type":39,"tag":1072,"props":18192,"children":18193},{"class":1074,"line":2380},[18194],{"type":39,"tag":1072,"props":18195,"children":18196},{"emptyLinePlaceholder":19},[18197],{"type":45,"value":7644},{"type":39,"tag":1072,"props":18199,"children":18200},{"class":1074,"line":7568},[18201,18205,18209,18213],{"type":39,"tag":1072,"props":18202,"children":18203},{"style":1195},[18204],{"type":45,"value":17279},{"type":39,"tag":1072,"props":18206,"children":18207},{"style":1090},[18208],{"type":45,"value":17284},{"type":39,"tag":1072,"props":18210,"children":18211},{"style":1195},[18212],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18214,"children":18215},{"style":1090},[18216],{"type":45,"value":17293},{"type":39,"tag":1072,"props":18218,"children":18219},{"class":1074,"line":7577},[18220],{"type":39,"tag":1072,"props":18221,"children":18222},{"style":1195},[18223],{"type":45,"value":17301},{"type":39,"tag":1072,"props":18225,"children":18226},{"class":1074,"line":7585},[18227,18231,18235,18239],{"type":39,"tag":1072,"props":18228,"children":18229},{"style":1096},[18230],{"type":45,"value":17309},{"type":39,"tag":1072,"props":18232,"children":18233},{"style":1090},[18234],{"type":45,"value":934},{"type":39,"tag":1072,"props":18236,"children":18237},{"style":1096},[18238],{"type":45,"value":17318},{"type":39,"tag":1072,"props":18240,"children":18241},{"style":1090},[18242],{"type":45,"value":7703},{"type":39,"tag":1072,"props":18244,"children":18245},{"class":1074,"line":7593},[18246,18251,18255,18259,18263,18267,18272,18276,18280],{"type":39,"tag":1072,"props":18247,"children":18248},{"style":1090},[18249],{"type":45,"value":18250},"        DATE_TRUNC(",{"type":39,"tag":1072,"props":18252,"children":18253},{"style":1096},[18254],{"type":45,"value":8358},{"type":39,"tag":1072,"props":18256,"children":18257},{"style":1090},[18258],{"type":45,"value":934},{"type":39,"tag":1072,"props":18260,"children":18261},{"style":1096},[18262],{"type":45,"value":17343},{"type":39,"tag":1072,"props":18264,"children":18265},{"style":1090},[18266],{"type":45,"value":978},{"type":39,"tag":1072,"props":18268,"children":18269},{"style":1195},[18270],{"type":45,"value":18271},"MONTH",{"type":39,"tag":1072,"props":18273,"children":18274},{"style":1090},[18275],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18277,"children":18278},{"style":1195},[18279],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18281,"children":18282},{"style":1090},[18283],{"type":45,"value":17356},{"type":39,"tag":1072,"props":18285,"children":18286},{"class":1074,"line":7602},[18287,18291,18295,18299,18303,18307,18311,18315,18319],{"type":39,"tag":1072,"props":18288,"children":18289},{"style":1090},[18290],{"type":45,"value":18250},{"type":39,"tag":1072,"props":18292,"children":18293},{"style":1096},[18294],{"type":45,"value":7820},{"type":39,"tag":1072,"props":18296,"children":18297},{"style":1090},[18298],{"type":45,"value":934},{"type":39,"tag":1072,"props":18300,"children":18301},{"style":1096},[18302],{"type":45,"value":17376},{"type":39,"tag":1072,"props":18304,"children":18305},{"style":1090},[18306],{"type":45,"value":978},{"type":39,"tag":1072,"props":18308,"children":18309},{"style":1195},[18310],{"type":45,"value":18271},{"type":39,"tag":1072,"props":18312,"children":18313},{"style":1090},[18314],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18316,"children":18317},{"style":1195},[18318],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18320,"children":18321},{"style":1090},[18322],{"type":45,"value":17389},{"type":39,"tag":1072,"props":18324,"children":18325},{"class":1074,"line":7611},[18326,18330,18334],{"type":39,"tag":1072,"props":18327,"children":18328},{"style":1096},[18329],{"type":45,"value":17309},{"type":39,"tag":1072,"props":18331,"children":18332},{"style":1090},[18333],{"type":45,"value":934},{"type":39,"tag":1072,"props":18335,"children":18336},{"style":1096},[18337],{"type":45,"value":17405},{"type":39,"tag":1072,"props":18339,"children":18340},{"class":1074,"line":7620},[18341,18345,18349,18353,18357],{"type":39,"tag":1072,"props":18342,"children":18343},{"style":1195},[18344],{"type":45,"value":17413},{"type":39,"tag":1072,"props":18346,"children":18347},{"style":1096},[18348],{"type":45,"value":15691},{"type":39,"tag":1072,"props":18350,"children":18351},{"style":1090},[18352],{"type":45,"value":934},{"type":39,"tag":1072,"props":18354,"children":18355},{"style":1096},[18356],{"type":45,"value":16313},{"type":39,"tag":1072,"props":18358,"children":18359},{"style":1090},[18360],{"type":45,"value":8246},{"type":39,"tag":1072,"props":18362,"children":18363},{"class":1074,"line":7629},[18364,18368,18372,18376,18380],{"type":39,"tag":1072,"props":18365,"children":18366},{"style":1195},[18367],{"type":45,"value":17437},{"type":39,"tag":1072,"props":18369,"children":18370},{"style":1096},[18371],{"type":45,"value":15691},{"type":39,"tag":1072,"props":18373,"children":18374},{"style":1090},[18375],{"type":45,"value":934},{"type":39,"tag":1072,"props":18377,"children":18378},{"style":1096},[18379],{"type":45,"value":17450},{"type":39,"tag":1072,"props":18381,"children":18382},{"style":1090},[18383],{"type":45,"value":8272},{"type":39,"tag":1072,"props":18385,"children":18386},{"class":1074,"line":7638},[18387,18391,18395,18399,18403,18407,18411,18415],{"type":39,"tag":1072,"props":18388,"children":18389},{"style":1195},[18390],{"type":45,"value":17462},{"type":39,"tag":1072,"props":18392,"children":18393},{"style":1096},[18394],{"type":45,"value":8286},{"type":39,"tag":1072,"props":18396,"children":18397},{"style":1090},[18398],{"type":45,"value":934},{"type":39,"tag":1072,"props":18400,"children":18401},{"style":1096},[18402],{"type":45,"value":17318},{"type":39,"tag":1072,"props":18404,"children":18405},{"style":1195},[18406],{"type":45,"value":8299},{"type":39,"tag":1072,"props":18408,"children":18409},{"style":1096},[18410],{"type":45,"value":8304},{"type":39,"tag":1072,"props":18412,"children":18413},{"style":1090},[18414],{"type":45,"value":934},{"type":39,"tag":1072,"props":18416,"children":18417},{"style":1096},[18418],{"type":45,"value":17491},{"type":39,"tag":1072,"props":18420,"children":18421},{"class":1074,"line":7647},[18422,18426,18430,18434,18438,18442],{"type":39,"tag":1072,"props":18423,"children":18424},{"style":1195},[18425],{"type":45,"value":17499},{"type":39,"tag":1072,"props":18427,"children":18428},{"style":1096},[18429],{"type":45,"value":8286},{"type":39,"tag":1072,"props":18431,"children":18432},{"style":1090},[18433],{"type":45,"value":934},{"type":39,"tag":1072,"props":18435,"children":18436},{"style":1096},[18437],{"type":45,"value":17512},{"type":39,"tag":1072,"props":18439,"children":18440},{"style":1195},[18441],{"type":45,"value":8299},{"type":39,"tag":1072,"props":18443,"children":18444},{"style":1084},[18445],{"type":45,"value":17521},{"type":39,"tag":1072,"props":18447,"children":18448},{"class":1074,"line":7656},[18449],{"type":39,"tag":1072,"props":18450,"children":18451},{"style":1090},[18452],{"type":45,"value":17529},{"type":39,"tag":1072,"props":18454,"children":18455},{"class":1074,"line":7684},[18456,18460,18464],{"type":39,"tag":1072,"props":18457,"children":18458},{"style":1090},[18459],{"type":45,"value":17537},{"type":39,"tag":1072,"props":18461,"children":18462},{"style":1195},[18463],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18465,"children":18466},{"style":1090},[18467],{"type":45,"value":17293},{"type":39,"tag":1072,"props":18469,"children":18470},{"class":1074,"line":7706},[18471],{"type":39,"tag":1072,"props":18472,"children":18473},{"style":1195},[18474],{"type":45,"value":17301},{"type":39,"tag":1072,"props":18476,"children":18477},{"class":1074,"line":7732},[18478],{"type":39,"tag":1072,"props":18479,"children":18480},{"style":1090},[18481],{"type":45,"value":17560},{"type":39,"tag":1072,"props":18483,"children":18484},{"class":1074,"line":7758},[18485,18489,18493,18497,18501,18505],{"type":39,"tag":1072,"props":18486,"children":18487},{"style":1096},[18488],{"type":45,"value":17568},{"type":39,"tag":1072,"props":18490,"children":18491},{"style":1090},[18492],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18494,"children":18495},{"style":1195},[18496],{"type":45,"value":17577},{"type":39,"tag":1072,"props":18498,"children":18499},{"style":1090},[18500],{"type":45,"value":17582},{"type":39,"tag":1072,"props":18502,"children":18503},{"style":1195},[18504],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18506,"children":18507},{"style":1090},[18508],{"type":45,"value":17591},{"type":39,"tag":1072,"props":18510,"children":18511},{"class":1074,"line":7783},[18512,18516],{"type":39,"tag":1072,"props":18513,"children":18514},{"style":1195},[18515],{"type":45,"value":17413},{"type":39,"tag":1072,"props":18517,"children":18518},{"style":1090},[18519],{"type":45,"value":17603},{"type":39,"tag":1072,"props":18521,"children":18522},{"class":1074,"line":7804},[18523,18527],{"type":39,"tag":1072,"props":18524,"children":18525},{"style":1195},[18526],{"type":45,"value":17611},{"type":39,"tag":1072,"props":18528,"children":18529},{"style":1090},[18530],{"type":45,"value":17616},{"type":39,"tag":1072,"props":18532,"children":18533},{"class":1074,"line":7874},[18534],{"type":39,"tag":1072,"props":18535,"children":18536},{"style":1090},[18537],{"type":45,"value":8372},{"type":39,"tag":1072,"props":18539,"children":18540},{"class":1074,"line":7936},[18541],{"type":39,"tag":1072,"props":18542,"children":18543},{"style":1195},[18544],{"type":45,"value":7653},{"type":39,"tag":1072,"props":18546,"children":18547},{"class":1074,"line":7998},[18548,18552,18556,18560],{"type":39,"tag":1072,"props":18549,"children":18550},{"style":1096},[18551],{"type":45,"value":17638},{"type":39,"tag":1072,"props":18553,"children":18554},{"style":1090},[18555],{"type":45,"value":934},{"type":39,"tag":1072,"props":18557,"children":18558},{"style":1096},[18559],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18561,"children":18562},{"style":1090},[18563],{"type":45,"value":7703},{"type":39,"tag":1072,"props":18565,"children":18566},{"class":1074,"line":8060},[18567,18571,18575,18579],{"type":39,"tag":1072,"props":18568,"children":18569},{"style":1096},[18570],{"type":45,"value":17659},{"type":39,"tag":1072,"props":18572,"children":18573},{"style":1090},[18574],{"type":45,"value":934},{"type":39,"tag":1072,"props":18576,"children":18577},{"style":1096},[18578],{"type":45,"value":17668},{"type":39,"tag":1072,"props":18580,"children":18581},{"style":1090},[18582],{"type":45,"value":7703},{"type":39,"tag":1072,"props":18584,"children":18585},{"class":1074,"line":8081},[18586,18591,18595,18599,18603,18607,18611,18615,18619,18623,18627,18631,18635],{"type":39,"tag":1072,"props":18587,"children":18588},{"style":1090},[18589],{"type":45,"value":18590},"    DATE_DIFF(",{"type":39,"tag":1072,"props":18592,"children":18593},{"style":1096},[18594],{"type":45,"value":17698},{"type":39,"tag":1072,"props":18596,"children":18597},{"style":1090},[18598],{"type":45,"value":934},{"type":39,"tag":1072,"props":18600,"children":18601},{"style":1096},[18602],{"type":45,"value":17723},{"type":39,"tag":1072,"props":18604,"children":18605},{"style":1090},[18606],{"type":45,"value":978},{"type":39,"tag":1072,"props":18608,"children":18609},{"style":1096},[18610],{"type":45,"value":17698},{"type":39,"tag":1072,"props":18612,"children":18613},{"style":1090},[18614],{"type":45,"value":934},{"type":39,"tag":1072,"props":18616,"children":18617},{"style":1096},[18618],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18620,"children":18621},{"style":1090},[18622],{"type":45,"value":978},{"type":39,"tag":1072,"props":18624,"children":18625},{"style":1195},[18626],{"type":45,"value":18271},{"type":39,"tag":1072,"props":18628,"children":18629},{"style":1090},[18630],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18632,"children":18633},{"style":1195},[18634],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18636,"children":18637},{"style":1090},[18638],{"type":45,"value":17736},{"type":39,"tag":1072,"props":18640,"children":18641},{"class":1074,"line":8102},[18642,18646,18650,18654,18658,18662,18666,18670,18674],{"type":39,"tag":1072,"props":18643,"children":18644},{"style":1096},[18645],{"type":45,"value":15354},{"type":39,"tag":1072,"props":18647,"children":18648},{"style":1090},[18649],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18651,"children":18652},{"style":1195},[18653],{"type":45,"value":17577},{"type":39,"tag":1072,"props":18655,"children":18656},{"style":1096},[18657],{"type":45,"value":17756},{"type":39,"tag":1072,"props":18659,"children":18660},{"style":1090},[18661],{"type":45,"value":934},{"type":39,"tag":1072,"props":18663,"children":18664},{"style":1096},[18665],{"type":45,"value":17318},{"type":39,"tag":1072,"props":18667,"children":18668},{"style":1090},[18669],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18671,"children":18672},{"style":1195},[18673],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18675,"children":18676},{"style":1090},[18677],{"type":45,"value":17777},{"type":39,"tag":1072,"props":18679,"children":18680},{"class":1074,"line":8123},[18681,18685,18689,18693,18697,18701,18705,18709,18713,18717,18721,18725,18729,18733,18737,18741,18745,18749,18753,18757,18761,18765,18769,18773,18777],{"type":39,"tag":1072,"props":18682,"children":18683},{"style":1096},[18684],{"type":45,"value":15571},{"type":39,"tag":1072,"props":18686,"children":18687},{"style":1090},[18688],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18690,"children":18691},{"style":1096},[18692],{"type":45,"value":16245},{"type":39,"tag":1072,"props":18694,"children":18695},{"style":1090},[18696],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18698,"children":18699},{"style":1195},[18700],{"type":45,"value":17577},{"type":39,"tag":1072,"props":18702,"children":18703},{"style":1096},[18704],{"type":45,"value":17756},{"type":39,"tag":1072,"props":18706,"children":18707},{"style":1090},[18708],{"type":45,"value":934},{"type":39,"tag":1072,"props":18710,"children":18711},{"style":1096},[18712],{"type":45,"value":17318},{"type":39,"tag":1072,"props":18714,"children":18715},{"style":1090},[18716],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18718,"children":18719},{"style":1195},[18720],{"type":45,"value":15581},{"type":39,"tag":1072,"props":18722,"children":18723},{"style":1096},[18724],{"type":45,"value":16167},{"type":39,"tag":1072,"props":18726,"children":18727},{"style":1090},[18728],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18730,"children":18731},{"style":1096},[18732],{"type":45,"value":17806},{"type":39,"tag":1072,"props":18734,"children":18735},{"style":1090},[18736],{"type":45,"value":934},{"type":39,"tag":1072,"props":18738,"children":18739},{"style":1096},[18740],{"type":45,"value":17668},{"type":39,"tag":1072,"props":18742,"children":18743},{"style":1090},[18744],{"type":45,"value":978},{"type":39,"tag":1072,"props":18746,"children":18747},{"style":1096},[18748],{"type":45,"value":8157},{"type":39,"tag":1072,"props":18750,"children":18751},{"style":1090},[18752],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18754,"children":18755},{"style":1195},[18756],{"type":45,"value":13780},{"type":39,"tag":1072,"props":18758,"children":18759},{"style":1096},[18760],{"type":45,"value":8148},{"type":39,"tag":1072,"props":18762,"children":18763},{"style":1090},[18764],{"type":45,"value":978},{"type":39,"tag":1072,"props":18766,"children":18767},{"style":1096},[18768],{"type":45,"value":7856},{"type":39,"tag":1072,"props":18770,"children":18771},{"style":1090},[18772],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18774,"children":18775},{"style":1195},[18776],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18778,"children":18779},{"style":1090},[18780],{"type":45,"value":17855},{"type":39,"tag":1072,"props":18782,"children":18783},{"class":1074,"line":8169},[18784,18788,18792,18796,18800,18804,18808,18812],{"type":39,"tag":1072,"props":18785,"children":18786},{"style":1096},[18787],{"type":45,"value":15439},{"type":39,"tag":1072,"props":18789,"children":18790},{"style":1090},[18791],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18793,"children":18794},{"style":1096},[18795],{"type":45,"value":17698},{"type":39,"tag":1072,"props":18797,"children":18798},{"style":1090},[18799],{"type":45,"value":934},{"type":39,"tag":1072,"props":18801,"children":18802},{"style":1096},[18803],{"type":45,"value":17879},{"type":39,"tag":1072,"props":18805,"children":18806},{"style":1090},[18807],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18809,"children":18810},{"style":1195},[18811],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18813,"children":18814},{"style":1090},[18815],{"type":45,"value":17892},{"type":39,"tag":1072,"props":18817,"children":18818},{"class":1074,"line":8195},[18819,18823,18827,18831,18835,18839,18843,18847,18851,18855,18859,18863,18867,18871,18875,18879,18883,18887,18891,18895,18899],{"type":39,"tag":1072,"props":18820,"children":18821},{"style":1096},[18822],{"type":45,"value":15571},{"type":39,"tag":1072,"props":18824,"children":18825},{"style":1090},[18826],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18828,"children":18829},{"style":1096},[18830],{"type":45,"value":16110},{"type":39,"tag":1072,"props":18832,"children":18833},{"style":1090},[18834],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18836,"children":18837},{"style":1096},[18838],{"type":45,"value":17698},{"type":39,"tag":1072,"props":18840,"children":18841},{"style":1090},[18842],{"type":45,"value":934},{"type":39,"tag":1072,"props":18844,"children":18845},{"style":1096},[18846],{"type":45,"value":17879},{"type":39,"tag":1072,"props":18848,"children":18849},{"style":1090},[18850],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18852,"children":18853},{"style":1195},[18854],{"type":45,"value":15581},{"type":39,"tag":1072,"props":18856,"children":18857},{"style":1096},[18858],{"type":45,"value":16167},{"type":39,"tag":1072,"props":18860,"children":18861},{"style":1090},[18862],{"type":45,"value":7815},{"type":39,"tag":1072,"props":18864,"children":18865},{"style":1096},[18866],{"type":45,"value":17806},{"type":39,"tag":1072,"props":18868,"children":18869},{"style":1090},[18870],{"type":45,"value":934},{"type":39,"tag":1072,"props":18872,"children":18873},{"style":1096},[18874],{"type":45,"value":17668},{"type":39,"tag":1072,"props":18876,"children":18877},{"style":1090},[18878],{"type":45,"value":978},{"type":39,"tag":1072,"props":18880,"children":18881},{"style":1096},[18882],{"type":45,"value":8157},{"type":39,"tag":1072,"props":18884,"children":18885},{"style":1090},[18886],{"type":45,"value":15600},{"type":39,"tag":1072,"props":18888,"children":18889},{"style":1096},[18890],{"type":45,"value":7856},{"type":39,"tag":1072,"props":18892,"children":18893},{"style":1090},[18894],{"type":45,"value":8344},{"type":39,"tag":1072,"props":18896,"children":18897},{"style":1195},[18898],{"type":45,"value":7866},{"type":39,"tag":1072,"props":18900,"children":18901},{"style":1090},[18902],{"type":45,"value":17957},{"type":39,"tag":1072,"props":18904,"children":18905},{"class":1074,"line":8221},[18906,18910],{"type":39,"tag":1072,"props":18907,"children":18908},{"style":1195},[18909],{"type":45,"value":8227},{"type":39,"tag":1072,"props":18911,"children":18912},{"style":1090},[18913],{"type":45,"value":17969},{"type":39,"tag":1072,"props":18915,"children":18916},{"class":1074,"line":8249},[18917,18921],{"type":39,"tag":1072,"props":18918,"children":18919},{"style":1195},[18920],{"type":45,"value":17977},{"type":39,"tag":1072,"props":18922,"children":18923},{"style":1090},[18924],{"type":45,"value":17982},{"type":39,"tag":1072,"props":18926,"children":18927},{"class":1074,"line":8275},[18928,18932,18936,18940,18944,18948,18952,18956],{"type":39,"tag":1072,"props":18929,"children":18930},{"style":1195},[18931],{"type":45,"value":8281},{"type":39,"tag":1072,"props":18933,"children":18934},{"style":1096},[18935],{"type":45,"value":17756},{"type":39,"tag":1072,"props":18937,"children":18938},{"style":1090},[18939],{"type":45,"value":934},{"type":39,"tag":1072,"props":18941,"children":18942},{"style":1096},[18943],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18945,"children":18946},{"style":1195},[18947],{"type":45,"value":8299},{"type":39,"tag":1072,"props":18949,"children":18950},{"style":1096},[18951],{"type":45,"value":18010},{"type":39,"tag":1072,"props":18953,"children":18954},{"style":1090},[18955],{"type":45,"value":934},{"type":39,"tag":1072,"props":18957,"children":18958},{"style":1096},[18959],{"type":45,"value":18019},{"type":39,"tag":1072,"props":18961,"children":18962},{"class":1074,"line":8316},[18963,18967,18971,18975,18979,18983,18987,18991,18995],{"type":39,"tag":1072,"props":18964,"children":18965},{"style":1195},[18966],{"type":45,"value":14228},{"type":39,"tag":1072,"props":18968,"children":18969},{"style":1096},[18970],{"type":45,"value":17756},{"type":39,"tag":1072,"props":18972,"children":18973},{"style":1090},[18974],{"type":45,"value":934},{"type":39,"tag":1072,"props":18976,"children":18977},{"style":1096},[18978],{"type":45,"value":17647},{"type":39,"tag":1072,"props":18980,"children":18981},{"style":1090},[18982],{"type":45,"value":978},{"type":39,"tag":1072,"props":18984,"children":18985},{"style":1096},[18986],{"type":45,"value":17806},{"type":39,"tag":1072,"props":18988,"children":18989},{"style":1090},[18990],{"type":45,"value":934},{"type":39,"tag":1072,"props":18992,"children":18993},{"style":1096},[18994],{"type":45,"value":17668},{"type":39,"tag":1072,"props":18996,"children":18997},{"style":1090},[18998],{"type":45,"value":18059},{"type":39,"tag":1072,"props":19000,"children":19001},{"class":1074,"line":9194},[19002,19006,19010,19014,19018],{"type":39,"tag":1072,"props":19003,"children":19004},{"style":1195},[19005],{"type":45,"value":15720},{"type":39,"tag":1072,"props":19007,"children":19008},{"style":1096},[19009],{"type":45,"value":17756},{"type":39,"tag":1072,"props":19011,"children":19012},{"style":1090},[19013],{"type":45,"value":934},{"type":39,"tag":1072,"props":19015,"children":19016},{"style":1096},[19017],{"type":45,"value":17647},{"type":39,"tag":1072,"props":19019,"children":19020},{"style":1090},[19021],{"type":45,"value":18059},{"type":39,"tag":1248,"props":19023,"children":19024},{"v-slot:snowflake":7},[19025],{"type":39,"tag":1062,"props":19026,"children":19028},{"className":7433,"code":19027,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_customer_cohorts\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_orders\n  - staging.stg_customers\ncolumns:\n  - name: cohort_month\n    type: date\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nWITH customer_orders AS (\n    SELECT\n        o.customer_email,\n        DATE_TRUNC('month', c.first_seen_at) AS cohort_month,\n        DATE_TRUNC('month', o.order_date) AS order_month,\n        o.order_total\n    FROM staging.stg_orders o\n    INNER JOIN staging.stg_customers c\n        ON o.customer_email = c.customer_email\n    WHERE o.payment_status = 'paid'\n),\ncohort_sizes AS (\n    SELECT\n        cohort_month,\n        count(DISTINCT customer_email) AS cohort_size\n    FROM customer_orders\n    GROUP BY cohort_month\n)\nSELECT\n    co.cohort_month,\n    cs.cohort_size,\n    DATEDIFF('month', co.cohort_month, co.order_month) AS months_since_first,\n    count(DISTINCT co.customer_email) AS active_customers,\n    round(count(DISTINCT co.customer_email) \u002F NULLIF(cs.cohort_size, 0) * 100, 2) AS retention_rate,\n    sum(co.order_total) AS cohort_revenue,\n    round(sum(co.order_total) \u002F NULLIF(cs.cohort_size, 0), 2) AS revenue_per_customer\nFROM customer_orders co\nINNER JOIN cohort_sizes cs\n    ON co.cohort_month = cs.cohort_month\nGROUP BY co.cohort_month, cs.cohort_size, months_since_first\nORDER BY co.cohort_month, months_since_first\n",[19029],{"type":39,"tag":70,"props":19030,"children":19031},{"__ignoreMap":7},[19032,19039,19046,19053,19060,19067,19074,19081,19088,19095,19102,19109,19116,19123,19130,19137,19156,19163,19182,19221,19260,19275,19298,19321,19356,19383,19390,19405,19412,19419,19446,19457,19468,19475,19482,19501,19520,19580,19619,19722,19757,19844,19855,19866,19901,19940],{"type":39,"tag":1072,"props":19033,"children":19034},{"class":1074,"line":868},[19035],{"type":39,"tag":1072,"props":19036,"children":19037},{"style":7445},[19038],{"type":45,"value":7448},{"type":39,"tag":1072,"props":19040,"children":19041},{"class":1074,"line":476},[19042],{"type":39,"tag":1072,"props":19043,"children":19044},{"style":7445},[19045],{"type":45,"value":17178},{"type":39,"tag":1072,"props":19047,"children":19048},{"class":1074,"line":483},[19049],{"type":39,"tag":1072,"props":19050,"children":19051},{"style":7445},[19052],{"type":45,"value":7464},{"type":39,"tag":1072,"props":19054,"children":19055},{"class":1074,"line":1626},[19056],{"type":39,"tag":1072,"props":19057,"children":19058},{"style":7445},[19059],{"type":45,"value":7472},{"type":39,"tag":1072,"props":19061,"children":19062},{"class":1074,"line":11},[19063],{"type":39,"tag":1072,"props":19064,"children":19065},{"style":7445},[19066],{"type":45,"value":7480},{"type":39,"tag":1072,"props":19068,"children":19069},{"class":1074,"line":20},[19070],{"type":39,"tag":1072,"props":19071,"children":19072},{"style":7445},[19073],{"type":45,"value":7488},{"type":39,"tag":1072,"props":19075,"children":19076},{"class":1074,"line":1679},[19077],{"type":39,"tag":1072,"props":19078,"children":19079},{"style":7445},[19080],{"type":45,"value":15238},{"type":39,"tag":1072,"props":19082,"children":19083},{"class":1074,"line":860},[19084],{"type":39,"tag":1072,"props":19085,"children":19086},{"style":7445},[19087],{"type":45,"value":17221},{"type":39,"tag":1072,"props":19089,"children":19090},{"class":1074,"line":2907},[19091],{"type":39,"tag":1072,"props":19092,"children":19093},{"style":7445},[19094],{"type":45,"value":7512},{"type":39,"tag":1072,"props":19096,"children":19097},{"class":1074,"line":7515},[19098],{"type":39,"tag":1072,"props":19099,"children":19100},{"style":7445},[19101],{"type":45,"value":17236},{"type":39,"tag":1072,"props":19103,"children":19104},{"class":1074,"line":7524},[19105],{"type":39,"tag":1072,"props":19106,"children":19107},{"style":7445},[19108],{"type":45,"value":11546},{"type":39,"tag":1072,"props":19110,"children":19111},{"class":1074,"line":7533},[19112],{"type":39,"tag":1072,"props":19113,"children":19114},{"style":7445},[19115],{"type":45,"value":7539},{"type":39,"tag":1072,"props":19117,"children":19118},{"class":1074,"line":7542},[19119],{"type":39,"tag":1072,"props":19120,"children":19121},{"style":7445},[19122],{"type":45,"value":7548},{"type":39,"tag":1072,"props":19124,"children":19125},{"class":1074,"line":7551},[19126],{"type":39,"tag":1072,"props":19127,"children":19128},{"style":7445},[19129],{"type":45,"value":7635},{"type":39,"tag":1072,"props":19131,"children":19132},{"class":1074,"line":2380},[19133],{"type":39,"tag":1072,"props":19134,"children":19135},{"emptyLinePlaceholder":19},[19136],{"type":45,"value":7644},{"type":39,"tag":1072,"props":19138,"children":19139},{"class":1074,"line":7568},[19140,19144,19148,19152],{"type":39,"tag":1072,"props":19141,"children":19142},{"style":1195},[19143],{"type":45,"value":17279},{"type":39,"tag":1072,"props":19145,"children":19146},{"style":1090},[19147],{"type":45,"value":17284},{"type":39,"tag":1072,"props":19149,"children":19150},{"style":1195},[19151],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19153,"children":19154},{"style":1090},[19155],{"type":45,"value":17293},{"type":39,"tag":1072,"props":19157,"children":19158},{"class":1074,"line":7577},[19159],{"type":39,"tag":1072,"props":19160,"children":19161},{"style":1195},[19162],{"type":45,"value":17301},{"type":39,"tag":1072,"props":19164,"children":19165},{"class":1074,"line":7585},[19166,19170,19174,19178],{"type":39,"tag":1072,"props":19167,"children":19168},{"style":1096},[19169],{"type":45,"value":17309},{"type":39,"tag":1072,"props":19171,"children":19172},{"style":1090},[19173],{"type":45,"value":934},{"type":39,"tag":1072,"props":19175,"children":19176},{"style":1096},[19177],{"type":45,"value":17318},{"type":39,"tag":1072,"props":19179,"children":19180},{"style":1090},[19181],{"type":45,"value":7703},{"type":39,"tag":1072,"props":19183,"children":19184},{"class":1074,"line":7593},[19185,19189,19193,19197,19201,19205,19209,19213,19217],{"type":39,"tag":1072,"props":19186,"children":19187},{"style":1090},[19188],{"type":45,"value":18250},{"type":39,"tag":1072,"props":19190,"children":19191},{"style":1084},[19192],{"type":45,"value":17689},{"type":39,"tag":1072,"props":19194,"children":19195},{"style":1090},[19196],{"type":45,"value":978},{"type":39,"tag":1072,"props":19198,"children":19199},{"style":1096},[19200],{"type":45,"value":8358},{"type":39,"tag":1072,"props":19202,"children":19203},{"style":1090},[19204],{"type":45,"value":934},{"type":39,"tag":1072,"props":19206,"children":19207},{"style":1096},[19208],{"type":45,"value":17343},{"type":39,"tag":1072,"props":19210,"children":19211},{"style":1090},[19212],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19214,"children":19215},{"style":1195},[19216],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19218,"children":19219},{"style":1090},[19220],{"type":45,"value":17356},{"type":39,"tag":1072,"props":19222,"children":19223},{"class":1074,"line":7602},[19224,19228,19232,19236,19240,19244,19248,19252,19256],{"type":39,"tag":1072,"props":19225,"children":19226},{"style":1090},[19227],{"type":45,"value":18250},{"type":39,"tag":1072,"props":19229,"children":19230},{"style":1084},[19231],{"type":45,"value":17689},{"type":39,"tag":1072,"props":19233,"children":19234},{"style":1090},[19235],{"type":45,"value":978},{"type":39,"tag":1072,"props":19237,"children":19238},{"style":1096},[19239],{"type":45,"value":7820},{"type":39,"tag":1072,"props":19241,"children":19242},{"style":1090},[19243],{"type":45,"value":934},{"type":39,"tag":1072,"props":19245,"children":19246},{"style":1096},[19247],{"type":45,"value":17376},{"type":39,"tag":1072,"props":19249,"children":19250},{"style":1090},[19251],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19253,"children":19254},{"style":1195},[19255],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19257,"children":19258},{"style":1090},[19259],{"type":45,"value":17389},{"type":39,"tag":1072,"props":19261,"children":19262},{"class":1074,"line":7611},[19263,19267,19271],{"type":39,"tag":1072,"props":19264,"children":19265},{"style":1096},[19266],{"type":45,"value":17309},{"type":39,"tag":1072,"props":19268,"children":19269},{"style":1090},[19270],{"type":45,"value":934},{"type":39,"tag":1072,"props":19272,"children":19273},{"style":1096},[19274],{"type":45,"value":17405},{"type":39,"tag":1072,"props":19276,"children":19277},{"class":1074,"line":7620},[19278,19282,19286,19290,19294],{"type":39,"tag":1072,"props":19279,"children":19280},{"style":1195},[19281],{"type":45,"value":17413},{"type":39,"tag":1072,"props":19283,"children":19284},{"style":1096},[19285],{"type":45,"value":15691},{"type":39,"tag":1072,"props":19287,"children":19288},{"style":1090},[19289],{"type":45,"value":934},{"type":39,"tag":1072,"props":19291,"children":19292},{"style":1096},[19293],{"type":45,"value":16313},{"type":39,"tag":1072,"props":19295,"children":19296},{"style":1090},[19297],{"type":45,"value":8246},{"type":39,"tag":1072,"props":19299,"children":19300},{"class":1074,"line":7629},[19301,19305,19309,19313,19317],{"type":39,"tag":1072,"props":19302,"children":19303},{"style":1195},[19304],{"type":45,"value":17437},{"type":39,"tag":1072,"props":19306,"children":19307},{"style":1096},[19308],{"type":45,"value":15691},{"type":39,"tag":1072,"props":19310,"children":19311},{"style":1090},[19312],{"type":45,"value":934},{"type":39,"tag":1072,"props":19314,"children":19315},{"style":1096},[19316],{"type":45,"value":17450},{"type":39,"tag":1072,"props":19318,"children":19319},{"style":1090},[19320],{"type":45,"value":8272},{"type":39,"tag":1072,"props":19322,"children":19323},{"class":1074,"line":7638},[19324,19328,19332,19336,19340,19344,19348,19352],{"type":39,"tag":1072,"props":19325,"children":19326},{"style":1195},[19327],{"type":45,"value":17462},{"type":39,"tag":1072,"props":19329,"children":19330},{"style":1096},[19331],{"type":45,"value":8286},{"type":39,"tag":1072,"props":19333,"children":19334},{"style":1090},[19335],{"type":45,"value":934},{"type":39,"tag":1072,"props":19337,"children":19338},{"style":1096},[19339],{"type":45,"value":17318},{"type":39,"tag":1072,"props":19341,"children":19342},{"style":1195},[19343],{"type":45,"value":8299},{"type":39,"tag":1072,"props":19345,"children":19346},{"style":1096},[19347],{"type":45,"value":8304},{"type":39,"tag":1072,"props":19349,"children":19350},{"style":1090},[19351],{"type":45,"value":934},{"type":39,"tag":1072,"props":19353,"children":19354},{"style":1096},[19355],{"type":45,"value":17491},{"type":39,"tag":1072,"props":19357,"children":19358},{"class":1074,"line":7647},[19359,19363,19367,19371,19375,19379],{"type":39,"tag":1072,"props":19360,"children":19361},{"style":1195},[19362],{"type":45,"value":17499},{"type":39,"tag":1072,"props":19364,"children":19365},{"style":1096},[19366],{"type":45,"value":8286},{"type":39,"tag":1072,"props":19368,"children":19369},{"style":1090},[19370],{"type":45,"value":934},{"type":39,"tag":1072,"props":19372,"children":19373},{"style":1096},[19374],{"type":45,"value":17512},{"type":39,"tag":1072,"props":19376,"children":19377},{"style":1195},[19378],{"type":45,"value":8299},{"type":39,"tag":1072,"props":19380,"children":19381},{"style":1084},[19382],{"type":45,"value":17521},{"type":39,"tag":1072,"props":19384,"children":19385},{"class":1074,"line":7656},[19386],{"type":39,"tag":1072,"props":19387,"children":19388},{"style":1090},[19389],{"type":45,"value":17529},{"type":39,"tag":1072,"props":19391,"children":19392},{"class":1074,"line":7684},[19393,19397,19401],{"type":39,"tag":1072,"props":19394,"children":19395},{"style":1090},[19396],{"type":45,"value":17537},{"type":39,"tag":1072,"props":19398,"children":19399},{"style":1195},[19400],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19402,"children":19403},{"style":1090},[19404],{"type":45,"value":17293},{"type":39,"tag":1072,"props":19406,"children":19407},{"class":1074,"line":7706},[19408],{"type":39,"tag":1072,"props":19409,"children":19410},{"style":1195},[19411],{"type":45,"value":17301},{"type":39,"tag":1072,"props":19413,"children":19414},{"class":1074,"line":7732},[19415],{"type":39,"tag":1072,"props":19416,"children":19417},{"style":1090},[19418],{"type":45,"value":17560},{"type":39,"tag":1072,"props":19420,"children":19421},{"class":1074,"line":7758},[19422,19426,19430,19434,19438,19442],{"type":39,"tag":1072,"props":19423,"children":19424},{"style":1096},[19425],{"type":45,"value":17568},{"type":39,"tag":1072,"props":19427,"children":19428},{"style":1090},[19429],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19431,"children":19432},{"style":1195},[19433],{"type":45,"value":17577},{"type":39,"tag":1072,"props":19435,"children":19436},{"style":1090},[19437],{"type":45,"value":17582},{"type":39,"tag":1072,"props":19439,"children":19440},{"style":1195},[19441],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19443,"children":19444},{"style":1090},[19445],{"type":45,"value":17591},{"type":39,"tag":1072,"props":19447,"children":19448},{"class":1074,"line":7783},[19449,19453],{"type":39,"tag":1072,"props":19450,"children":19451},{"style":1195},[19452],{"type":45,"value":17413},{"type":39,"tag":1072,"props":19454,"children":19455},{"style":1090},[19456],{"type":45,"value":17603},{"type":39,"tag":1072,"props":19458,"children":19459},{"class":1074,"line":7804},[19460,19464],{"type":39,"tag":1072,"props":19461,"children":19462},{"style":1195},[19463],{"type":45,"value":17611},{"type":39,"tag":1072,"props":19465,"children":19466},{"style":1090},[19467],{"type":45,"value":17616},{"type":39,"tag":1072,"props":19469,"children":19470},{"class":1074,"line":7874},[19471],{"type":39,"tag":1072,"props":19472,"children":19473},{"style":1090},[19474],{"type":45,"value":8372},{"type":39,"tag":1072,"props":19476,"children":19477},{"class":1074,"line":7936},[19478],{"type":39,"tag":1072,"props":19479,"children":19480},{"style":1195},[19481],{"type":45,"value":7653},{"type":39,"tag":1072,"props":19483,"children":19484},{"class":1074,"line":7998},[19485,19489,19493,19497],{"type":39,"tag":1072,"props":19486,"children":19487},{"style":1096},[19488],{"type":45,"value":17638},{"type":39,"tag":1072,"props":19490,"children":19491},{"style":1090},[19492],{"type":45,"value":934},{"type":39,"tag":1072,"props":19494,"children":19495},{"style":1096},[19496],{"type":45,"value":17647},{"type":39,"tag":1072,"props":19498,"children":19499},{"style":1090},[19500],{"type":45,"value":7703},{"type":39,"tag":1072,"props":19502,"children":19503},{"class":1074,"line":8060},[19504,19508,19512,19516],{"type":39,"tag":1072,"props":19505,"children":19506},{"style":1096},[19507],{"type":45,"value":17659},{"type":39,"tag":1072,"props":19509,"children":19510},{"style":1090},[19511],{"type":45,"value":934},{"type":39,"tag":1072,"props":19513,"children":19514},{"style":1096},[19515],{"type":45,"value":17668},{"type":39,"tag":1072,"props":19517,"children":19518},{"style":1090},[19519],{"type":45,"value":7703},{"type":39,"tag":1072,"props":19521,"children":19522},{"class":1074,"line":8081},[19523,19528,19532,19536,19540,19544,19548,19552,19556,19560,19564,19568,19572,19576],{"type":39,"tag":1072,"props":19524,"children":19525},{"style":1096},[19526],{"type":45,"value":19527},"    DATEDIFF",{"type":39,"tag":1072,"props":19529,"children":19530},{"style":1090},[19531],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19533,"children":19534},{"style":1084},[19535],{"type":45,"value":17689},{"type":39,"tag":1072,"props":19537,"children":19538},{"style":1090},[19539],{"type":45,"value":978},{"type":39,"tag":1072,"props":19541,"children":19542},{"style":1096},[19543],{"type":45,"value":17698},{"type":39,"tag":1072,"props":19545,"children":19546},{"style":1090},[19547],{"type":45,"value":934},{"type":39,"tag":1072,"props":19549,"children":19550},{"style":1096},[19551],{"type":45,"value":17647},{"type":39,"tag":1072,"props":19553,"children":19554},{"style":1090},[19555],{"type":45,"value":978},{"type":39,"tag":1072,"props":19557,"children":19558},{"style":1096},[19559],{"type":45,"value":17698},{"type":39,"tag":1072,"props":19561,"children":19562},{"style":1090},[19563],{"type":45,"value":934},{"type":39,"tag":1072,"props":19565,"children":19566},{"style":1096},[19567],{"type":45,"value":17723},{"type":39,"tag":1072,"props":19569,"children":19570},{"style":1090},[19571],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19573,"children":19574},{"style":1195},[19575],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19577,"children":19578},{"style":1090},[19579],{"type":45,"value":17736},{"type":39,"tag":1072,"props":19581,"children":19582},{"class":1074,"line":8102},[19583,19587,19591,19595,19599,19603,19607,19611,19615],{"type":39,"tag":1072,"props":19584,"children":19585},{"style":1096},[19586],{"type":45,"value":15354},{"type":39,"tag":1072,"props":19588,"children":19589},{"style":1090},[19590],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19592,"children":19593},{"style":1195},[19594],{"type":45,"value":17577},{"type":39,"tag":1072,"props":19596,"children":19597},{"style":1096},[19598],{"type":45,"value":17756},{"type":39,"tag":1072,"props":19600,"children":19601},{"style":1090},[19602],{"type":45,"value":934},{"type":39,"tag":1072,"props":19604,"children":19605},{"style":1096},[19606],{"type":45,"value":17318},{"type":39,"tag":1072,"props":19608,"children":19609},{"style":1090},[19610],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19612,"children":19613},{"style":1195},[19614],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19616,"children":19617},{"style":1090},[19618],{"type":45,"value":17777},{"type":39,"tag":1072,"props":19620,"children":19621},{"class":1074,"line":8123},[19622,19626,19630,19634,19638,19642,19646,19650,19654,19658,19662,19666,19670,19674,19678,19682,19686,19690,19694,19698,19702,19706,19710,19714,19718],{"type":39,"tag":1072,"props":19623,"children":19624},{"style":1096},[19625],{"type":45,"value":15571},{"type":39,"tag":1072,"props":19627,"children":19628},{"style":1090},[19629],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19631,"children":19632},{"style":1096},[19633],{"type":45,"value":16245},{"type":39,"tag":1072,"props":19635,"children":19636},{"style":1090},[19637],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19639,"children":19640},{"style":1195},[19641],{"type":45,"value":17577},{"type":39,"tag":1072,"props":19643,"children":19644},{"style":1096},[19645],{"type":45,"value":17756},{"type":39,"tag":1072,"props":19647,"children":19648},{"style":1090},[19649],{"type":45,"value":934},{"type":39,"tag":1072,"props":19651,"children":19652},{"style":1096},[19653],{"type":45,"value":17318},{"type":39,"tag":1072,"props":19655,"children":19656},{"style":1090},[19657],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19659,"children":19660},{"style":1195},[19661],{"type":45,"value":15581},{"type":39,"tag":1072,"props":19663,"children":19664},{"style":1096},[19665],{"type":45,"value":16167},{"type":39,"tag":1072,"props":19667,"children":19668},{"style":1090},[19669],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19671,"children":19672},{"style":1096},[19673],{"type":45,"value":17806},{"type":39,"tag":1072,"props":19675,"children":19676},{"style":1090},[19677],{"type":45,"value":934},{"type":39,"tag":1072,"props":19679,"children":19680},{"style":1096},[19681],{"type":45,"value":17668},{"type":39,"tag":1072,"props":19683,"children":19684},{"style":1090},[19685],{"type":45,"value":978},{"type":39,"tag":1072,"props":19687,"children":19688},{"style":1096},[19689],{"type":45,"value":8157},{"type":39,"tag":1072,"props":19691,"children":19692},{"style":1090},[19693],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19695,"children":19696},{"style":1195},[19697],{"type":45,"value":13780},{"type":39,"tag":1072,"props":19699,"children":19700},{"style":1096},[19701],{"type":45,"value":8148},{"type":39,"tag":1072,"props":19703,"children":19704},{"style":1090},[19705],{"type":45,"value":978},{"type":39,"tag":1072,"props":19707,"children":19708},{"style":1096},[19709],{"type":45,"value":7856},{"type":39,"tag":1072,"props":19711,"children":19712},{"style":1090},[19713],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19715,"children":19716},{"style":1195},[19717],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19719,"children":19720},{"style":1090},[19721],{"type":45,"value":17855},{"type":39,"tag":1072,"props":19723,"children":19724},{"class":1074,"line":8169},[19725,19729,19733,19737,19741,19745,19749,19753],{"type":39,"tag":1072,"props":19726,"children":19727},{"style":1096},[19728],{"type":45,"value":15439},{"type":39,"tag":1072,"props":19730,"children":19731},{"style":1090},[19732],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19734,"children":19735},{"style":1096},[19736],{"type":45,"value":17698},{"type":39,"tag":1072,"props":19738,"children":19739},{"style":1090},[19740],{"type":45,"value":934},{"type":39,"tag":1072,"props":19742,"children":19743},{"style":1096},[19744],{"type":45,"value":17879},{"type":39,"tag":1072,"props":19746,"children":19747},{"style":1090},[19748],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19750,"children":19751},{"style":1195},[19752],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19754,"children":19755},{"style":1090},[19756],{"type":45,"value":17892},{"type":39,"tag":1072,"props":19758,"children":19759},{"class":1074,"line":8195},[19760,19764,19768,19772,19776,19780,19784,19788,19792,19796,19800,19804,19808,19812,19816,19820,19824,19828,19832,19836,19840],{"type":39,"tag":1072,"props":19761,"children":19762},{"style":1096},[19763],{"type":45,"value":15571},{"type":39,"tag":1072,"props":19765,"children":19766},{"style":1090},[19767],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19769,"children":19770},{"style":1096},[19771],{"type":45,"value":16110},{"type":39,"tag":1072,"props":19773,"children":19774},{"style":1090},[19775],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19777,"children":19778},{"style":1096},[19779],{"type":45,"value":17698},{"type":39,"tag":1072,"props":19781,"children":19782},{"style":1090},[19783],{"type":45,"value":934},{"type":39,"tag":1072,"props":19785,"children":19786},{"style":1096},[19787],{"type":45,"value":17879},{"type":39,"tag":1072,"props":19789,"children":19790},{"style":1090},[19791],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19793,"children":19794},{"style":1195},[19795],{"type":45,"value":15581},{"type":39,"tag":1072,"props":19797,"children":19798},{"style":1096},[19799],{"type":45,"value":16167},{"type":39,"tag":1072,"props":19801,"children":19802},{"style":1090},[19803],{"type":45,"value":7815},{"type":39,"tag":1072,"props":19805,"children":19806},{"style":1096},[19807],{"type":45,"value":17806},{"type":39,"tag":1072,"props":19809,"children":19810},{"style":1090},[19811],{"type":45,"value":934},{"type":39,"tag":1072,"props":19813,"children":19814},{"style":1096},[19815],{"type":45,"value":17668},{"type":39,"tag":1072,"props":19817,"children":19818},{"style":1090},[19819],{"type":45,"value":978},{"type":39,"tag":1072,"props":19821,"children":19822},{"style":1096},[19823],{"type":45,"value":8157},{"type":39,"tag":1072,"props":19825,"children":19826},{"style":1090},[19827],{"type":45,"value":15600},{"type":39,"tag":1072,"props":19829,"children":19830},{"style":1096},[19831],{"type":45,"value":7856},{"type":39,"tag":1072,"props":19833,"children":19834},{"style":1090},[19835],{"type":45,"value":8344},{"type":39,"tag":1072,"props":19837,"children":19838},{"style":1195},[19839],{"type":45,"value":7866},{"type":39,"tag":1072,"props":19841,"children":19842},{"style":1090},[19843],{"type":45,"value":17957},{"type":39,"tag":1072,"props":19845,"children":19846},{"class":1074,"line":8221},[19847,19851],{"type":39,"tag":1072,"props":19848,"children":19849},{"style":1195},[19850],{"type":45,"value":8227},{"type":39,"tag":1072,"props":19852,"children":19853},{"style":1090},[19854],{"type":45,"value":17969},{"type":39,"tag":1072,"props":19856,"children":19857},{"class":1074,"line":8249},[19858,19862],{"type":39,"tag":1072,"props":19859,"children":19860},{"style":1195},[19861],{"type":45,"value":17977},{"type":39,"tag":1072,"props":19863,"children":19864},{"style":1090},[19865],{"type":45,"value":17982},{"type":39,"tag":1072,"props":19867,"children":19868},{"class":1074,"line":8275},[19869,19873,19877,19881,19885,19889,19893,19897],{"type":39,"tag":1072,"props":19870,"children":19871},{"style":1195},[19872],{"type":45,"value":8281},{"type":39,"tag":1072,"props":19874,"children":19875},{"style":1096},[19876],{"type":45,"value":17756},{"type":39,"tag":1072,"props":19878,"children":19879},{"style":1090},[19880],{"type":45,"value":934},{"type":39,"tag":1072,"props":19882,"children":19883},{"style":1096},[19884],{"type":45,"value":17647},{"type":39,"tag":1072,"props":19886,"children":19887},{"style":1195},[19888],{"type":45,"value":8299},{"type":39,"tag":1072,"props":19890,"children":19891},{"style":1096},[19892],{"type":45,"value":18010},{"type":39,"tag":1072,"props":19894,"children":19895},{"style":1090},[19896],{"type":45,"value":934},{"type":39,"tag":1072,"props":19898,"children":19899},{"style":1096},[19900],{"type":45,"value":18019},{"type":39,"tag":1072,"props":19902,"children":19903},{"class":1074,"line":8316},[19904,19908,19912,19916,19920,19924,19928,19932,19936],{"type":39,"tag":1072,"props":19905,"children":19906},{"style":1195},[19907],{"type":45,"value":14228},{"type":39,"tag":1072,"props":19909,"children":19910},{"style":1096},[19911],{"type":45,"value":17756},{"type":39,"tag":1072,"props":19913,"children":19914},{"style":1090},[19915],{"type":45,"value":934},{"type":39,"tag":1072,"props":19917,"children":19918},{"style":1096},[19919],{"type":45,"value":17647},{"type":39,"tag":1072,"props":19921,"children":19922},{"style":1090},[19923],{"type":45,"value":978},{"type":39,"tag":1072,"props":19925,"children":19926},{"style":1096},[19927],{"type":45,"value":17806},{"type":39,"tag":1072,"props":19929,"children":19930},{"style":1090},[19931],{"type":45,"value":934},{"type":39,"tag":1072,"props":19933,"children":19934},{"style":1096},[19935],{"type":45,"value":17668},{"type":39,"tag":1072,"props":19937,"children":19938},{"style":1090},[19939],{"type":45,"value":18059},{"type":39,"tag":1072,"props":19941,"children":19942},{"class":1074,"line":9194},[19943,19947,19951,19955,19959],{"type":39,"tag":1072,"props":19944,"children":19945},{"style":1195},[19946],{"type":45,"value":15720},{"type":39,"tag":1072,"props":19948,"children":19949},{"style":1096},[19950],{"type":45,"value":17756},{"type":39,"tag":1072,"props":19952,"children":19953},{"style":1090},[19954],{"type":45,"value":934},{"type":39,"tag":1072,"props":19956,"children":19957},{"style":1096},[19958],{"type":45,"value":17647},{"type":39,"tag":1072,"props":19960,"children":19961},{"style":1090},[19962],{"type":45,"value":18059},{"type":39,"tag":85,"props":19964,"children":19966},{"id":19965},"_3-product-performance-rpt_product_performancesql",[19967,19969],{"type":45,"value":19968},"3) Product performance - ",{"type":39,"tag":70,"props":19970,"children":19972},{"className":19971},[],[19973],{"type":45,"value":19974},"rpt_product_performance.sql",{"type":39,"tag":48,"props":19976,"children":19977},{},[19978],{"type":45,"value":19979},"A product catalog report showing all products with their key attributes and status.",{"type":39,"tag":1023,"props":19981,"children":19982},{},[19983],{"type":39,"tag":48,"props":19984,"children":19985},{},[19986,19988,19993,19995,20001],{"type":45,"value":19987},"A full product performance report would need an order_line_items staging table to connect orders to individual products. Shopify stores line items as nested JSON in the orders table. For production use, ask Claude Code to create a ",{"type":39,"tag":70,"props":19989,"children":19991},{"className":19990},[],[19992],{"type":45,"value":7288},{"type":45,"value":19994}," asset that flattens this data. This simplified version shows product catalog metrics from ",{"type":39,"tag":70,"props":19996,"children":19998},{"className":19997},[],[19999],{"type":45,"value":20000},"stg_products",{"type":45,"value":934},{"type":39,"tag":48,"props":20003,"children":20004},{},[20005,20006,20015],{"type":45,"value":7413},{"type":39,"tag":97,"props":20007,"children":20008},{},[20009],{"type":39,"tag":70,"props":20010,"children":20012},{"className":20011},[],[20013],{"type":45,"value":20014},"ecommerce\u002Fassets\u002Freports\u002Frpt_product_performance.sql",{"type":45,"value":7424},{"type":39,"tag":1062,"props":20017,"children":20019},{"className":7433,"code":20018,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_product_performance\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_products\ncolumns:\n  - name: product_id\n    type: varchar\n    checks:\n      - name: not_null\n      - name: unique\n@bruin *\u002F\n\nSELECT\n    product_id,\n    product_name,\n    category,\n    vendor,\n    price,\n    product_status,\n    created_at,\n    updated_at\nFROM staging.stg_products\nORDER BY product_name\n",[20020],{"type":39,"tag":70,"props":20021,"children":20022},{"__ignoreMap":7},[20023,20030,20038,20045,20052,20059,20066,20074,20081,20088,20095,20102,20109,20116,20123,20130,20137,20145,20153,20161,20168,20176,20184,20191,20198,20218],{"type":39,"tag":1072,"props":20024,"children":20025},{"class":1074,"line":868},[20026],{"type":39,"tag":1072,"props":20027,"children":20028},{"style":7445},[20029],{"type":45,"value":7448},{"type":39,"tag":1072,"props":20031,"children":20032},{"class":1074,"line":476},[20033],{"type":39,"tag":1072,"props":20034,"children":20035},{"style":7445},[20036],{"type":45,"value":20037},"name: reports.rpt_product_performance\n",{"type":39,"tag":1072,"props":20039,"children":20040},{"class":1074,"line":483},[20041],{"type":39,"tag":1072,"props":20042,"children":20043},{"style":7445},[20044],{"type":45,"value":7464},{"type":39,"tag":1072,"props":20046,"children":20047},{"class":1074,"line":1626},[20048],{"type":39,"tag":1072,"props":20049,"children":20050},{"style":7445},[20051],{"type":45,"value":7472},{"type":39,"tag":1072,"props":20053,"children":20054},{"class":1074,"line":11},[20055],{"type":39,"tag":1072,"props":20056,"children":20057},{"style":7445},[20058],{"type":45,"value":7480},{"type":39,"tag":1072,"props":20060,"children":20061},{"class":1074,"line":20},[20062],{"type":39,"tag":1072,"props":20063,"children":20064},{"style":7445},[20065],{"type":45,"value":7488},{"type":39,"tag":1072,"props":20067,"children":20068},{"class":1074,"line":1679},[20069],{"type":39,"tag":1072,"props":20070,"children":20071},{"style":7445},[20072],{"type":45,"value":20073},"  - staging.stg_products\n",{"type":39,"tag":1072,"props":20075,"children":20076},{"class":1074,"line":860},[20077],{"type":39,"tag":1072,"props":20078,"children":20079},{"style":7445},[20080],{"type":45,"value":7512},{"type":39,"tag":1072,"props":20082,"children":20083},{"class":1074,"line":2907},[20084],{"type":39,"tag":1072,"props":20085,"children":20086},{"style":7445},[20087],{"type":45,"value":11150},{"type":39,"tag":1072,"props":20089,"children":20090},{"class":1074,"line":7515},[20091],{"type":39,"tag":1072,"props":20092,"children":20093},{"style":7445},[20094],{"type":45,"value":7530},{"type":39,"tag":1072,"props":20096,"children":20097},{"class":1074,"line":7524},[20098],{"type":39,"tag":1072,"props":20099,"children":20100},{"style":7445},[20101],{"type":45,"value":7539},{"type":39,"tag":1072,"props":20103,"children":20104},{"class":1074,"line":7533},[20105],{"type":39,"tag":1072,"props":20106,"children":20107},{"style":7445},[20108],{"type":45,"value":7548},{"type":39,"tag":1072,"props":20110,"children":20111},{"class":1074,"line":7542},[20112],{"type":39,"tag":1072,"props":20113,"children":20114},{"style":7445},[20115],{"type":45,"value":7557},{"type":39,"tag":1072,"props":20117,"children":20118},{"class":1074,"line":7551},[20119],{"type":39,"tag":1072,"props":20120,"children":20121},{"style":7445},[20122],{"type":45,"value":7635},{"type":39,"tag":1072,"props":20124,"children":20125},{"class":1074,"line":2380},[20126],{"type":39,"tag":1072,"props":20127,"children":20128},{"emptyLinePlaceholder":19},[20129],{"type":45,"value":7644},{"type":39,"tag":1072,"props":20131,"children":20132},{"class":1074,"line":7568},[20133],{"type":39,"tag":1072,"props":20134,"children":20135},{"style":1195},[20136],{"type":45,"value":7653},{"type":39,"tag":1072,"props":20138,"children":20139},{"class":1074,"line":7577},[20140],{"type":39,"tag":1072,"props":20141,"children":20142},{"style":1090},[20143],{"type":45,"value":20144},"    product_id,\n",{"type":39,"tag":1072,"props":20146,"children":20147},{"class":1074,"line":7585},[20148],{"type":39,"tag":1072,"props":20149,"children":20150},{"style":1090},[20151],{"type":45,"value":20152},"    product_name,\n",{"type":39,"tag":1072,"props":20154,"children":20155},{"class":1074,"line":7593},[20156],{"type":39,"tag":1072,"props":20157,"children":20158},{"style":1090},[20159],{"type":45,"value":20160},"    category,\n",{"type":39,"tag":1072,"props":20162,"children":20163},{"class":1074,"line":7602},[20164],{"type":39,"tag":1072,"props":20165,"children":20166},{"style":1090},[20167],{"type":45,"value":11258},{"type":39,"tag":1072,"props":20169,"children":20170},{"class":1074,"line":7611},[20171],{"type":39,"tag":1072,"props":20172,"children":20173},{"style":1090},[20174],{"type":45,"value":20175},"    price,\n",{"type":39,"tag":1072,"props":20177,"children":20178},{"class":1074,"line":7620},[20179],{"type":39,"tag":1072,"props":20180,"children":20181},{"style":1090},[20182],{"type":45,"value":20183},"    product_status,\n",{"type":39,"tag":1072,"props":20185,"children":20186},{"class":1074,"line":7629},[20187],{"type":39,"tag":1072,"props":20188,"children":20189},{"style":1090},[20190],{"type":45,"value":11345},{"type":39,"tag":1072,"props":20192,"children":20193},{"class":1074,"line":7638},[20194],{"type":39,"tag":1072,"props":20195,"children":20196},{"style":1090},[20197],{"type":45,"value":11353},{"type":39,"tag":1072,"props":20199,"children":20200},{"class":1074,"line":7647},[20201,20205,20209,20213],{"type":39,"tag":1072,"props":20202,"children":20203},{"style":1195},[20204],{"type":45,"value":8227},{"type":39,"tag":1072,"props":20206,"children":20207},{"style":1096},[20208],{"type":45,"value":15691},{"type":39,"tag":1072,"props":20210,"children":20211},{"style":1090},[20212],{"type":45,"value":934},{"type":39,"tag":1072,"props":20214,"children":20215},{"style":1096},[20216],{"type":45,"value":20217},"stg_products\n",{"type":39,"tag":1072,"props":20219,"children":20220},{"class":1074,"line":7656},[20221,20225],{"type":39,"tag":1072,"props":20222,"children":20223},{"style":1195},[20224],{"type":45,"value":15720},{"type":39,"tag":1072,"props":20226,"children":20227},{"style":1090},[20228],{"type":45,"value":20229}," product_name\n",{"type":39,"tag":85,"props":20231,"children":20233},{"id":20232},"_4-marketing-roi-rpt_marketing_roisql",[20234,20236],{"type":45,"value":20235},"4) Marketing ROI - ",{"type":39,"tag":70,"props":20237,"children":20239},{"className":20238},[],[20240],{"type":45,"value":20241},"rpt_marketing_roi.sql",{"type":39,"tag":48,"props":20243,"children":20244},{},[20245],{"type":45,"value":20246},"Spend, revenue, and ROAS by marketing channel. This is the report that answers \"where should we spend more?\"",{"type":39,"tag":48,"props":20248,"children":20249},{},[20250,20251,20260],{"type":45,"value":7413},{"type":39,"tag":97,"props":20252,"children":20253},{},[20254],{"type":39,"tag":70,"props":20255,"children":20257},{"className":20256},[],[20258],{"type":45,"value":20259},"ecommerce\u002Fassets\u002Freports\u002Frpt_marketing_roi.sql",{"type":45,"value":7424},{"type":39,"tag":1242,"props":20262,"children":20263},{":variants":1244,"group":1245},[20264,21626,22921],{"type":39,"tag":1248,"props":20265,"children":20266},{"v-slot:clickhouse":7},[20267],{"type":39,"tag":1062,"props":20268,"children":20270},{"className":7433,"code":20269,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_marketing_roi\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_marketing_spend\n  - staging.stg_web_sessions\n  - staging.stg_orders\ncolumns:\n  - name: channel\n    type: varchar\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nWITH channel_spend AS (\n    SELECT\n        spend_date,\n        channel,\n        sum(spend) AS total_spend,\n        sum(impressions) AS total_impressions,\n        sum(clicks) AS total_clicks,\n        sum(conversions) AS total_conversions\n    FROM staging.stg_marketing_spend\n    GROUP BY spend_date, channel\n),\nchannel_sessions AS (\n    SELECT\n        session_date,\n        channel,\n        sum(total_sessions) AS sessions,\n        sum(new_users) AS new_users,\n        sum(purchase_events) AS purchases\n    FROM staging.stg_web_sessions\n    GROUP BY session_date, channel\n),\nchannel_revenue AS (\n    SELECT\n        toDate(order_date) AS order_date,\n        ws.channel,\n        sum(o.order_total) AS attributed_revenue\n    FROM staging.stg_orders o\n    INNER JOIN staging.stg_web_sessions ws\n        ON toDate(o.order_date) = ws.session_date\n    WHERE o.payment_status = 'paid'\n    GROUP BY toDate(order_date), ws.channel\n)\nSELECT\n    cs.spend_date AS report_date,\n    cs.channel,\n    cs.total_spend,\n    cs.total_impressions,\n    cs.total_clicks,\n    cs.total_conversions,\n    sess.sessions,\n    sess.new_users,\n    cr.attributed_revenue,\n    round(cr.attributed_revenue \u002F nullIf(cs.total_spend, 0), 2) AS roas,\n    round(cs.total_spend \u002F nullIf(cs.total_conversions, 0), 2) AS cost_per_acquisition,\n    round(cs.total_clicks \u002F nullIf(cs.total_impressions, 0) * 100, 2) AS click_through_rate\nFROM channel_spend cs\nLEFT JOIN channel_sessions sess\n    ON cs.spend_date = sess.session_date\n    AND cs.channel = sess.channel\nLEFT JOIN channel_revenue cr\n    ON cs.spend_date = cr.order_date\n    AND cs.channel = cr.channel\nORDER BY cs.spend_date DESC, cs.total_spend DESC\n",[20271],{"type":39,"tag":70,"props":20272,"children":20273},{"__ignoreMap":7},[20274,20281,20289,20296,20303,20310,20317,20325,20333,20340,20347,20355,20362,20369,20376,20383,20390,20410,20417,20425,20433,20455,20476,20497,20518,20538,20550,20557,20573,20580,20588,20595,20620,20640,20661,20681,20693,20700,20716,20723,20739,20760,20796,20819,20844,20889,20916,20942,20950,20958,20984,21004,21025,21046,21067,21088,21109,21129,21151,21229,21306,21395,21408,21421,21458,21494,21507,21545,21581],{"type":39,"tag":1072,"props":20275,"children":20276},{"class":1074,"line":868},[20277],{"type":39,"tag":1072,"props":20278,"children":20279},{"style":7445},[20280],{"type":45,"value":7448},{"type":39,"tag":1072,"props":20282,"children":20283},{"class":1074,"line":476},[20284],{"type":39,"tag":1072,"props":20285,"children":20286},{"style":7445},[20287],{"type":45,"value":20288},"name: reports.rpt_marketing_roi\n",{"type":39,"tag":1072,"props":20290,"children":20291},{"class":1074,"line":483},[20292],{"type":39,"tag":1072,"props":20293,"children":20294},{"style":7445},[20295],{"type":45,"value":7464},{"type":39,"tag":1072,"props":20297,"children":20298},{"class":1074,"line":1626},[20299],{"type":39,"tag":1072,"props":20300,"children":20301},{"style":7445},[20302],{"type":45,"value":7472},{"type":39,"tag":1072,"props":20304,"children":20305},{"class":1074,"line":11},[20306],{"type":39,"tag":1072,"props":20307,"children":20308},{"style":7445},[20309],{"type":45,"value":7480},{"type":39,"tag":1072,"props":20311,"children":20312},{"class":1074,"line":20},[20313],{"type":39,"tag":1072,"props":20314,"children":20315},{"style":7445},[20316],{"type":45,"value":7488},{"type":39,"tag":1072,"props":20318,"children":20319},{"class":1074,"line":1679},[20320],{"type":39,"tag":1072,"props":20321,"children":20322},{"style":7445},[20323],{"type":45,"value":20324},"  - staging.stg_marketing_spend\n",{"type":39,"tag":1072,"props":20326,"children":20327},{"class":1074,"line":860},[20328],{"type":39,"tag":1072,"props":20329,"children":20330},{"style":7445},[20331],{"type":45,"value":20332},"  - staging.stg_web_sessions\n",{"type":39,"tag":1072,"props":20334,"children":20335},{"class":1074,"line":2907},[20336],{"type":39,"tag":1072,"props":20337,"children":20338},{"style":7445},[20339],{"type":45,"value":15238},{"type":39,"tag":1072,"props":20341,"children":20342},{"class":1074,"line":7515},[20343],{"type":39,"tag":1072,"props":20344,"children":20345},{"style":7445},[20346],{"type":45,"value":7512},{"type":39,"tag":1072,"props":20348,"children":20349},{"class":1074,"line":7524},[20350],{"type":39,"tag":1072,"props":20351,"children":20352},{"style":7445},[20353],{"type":45,"value":20354},"  - name: channel\n",{"type":39,"tag":1072,"props":20356,"children":20357},{"class":1074,"line":7533},[20358],{"type":39,"tag":1072,"props":20359,"children":20360},{"style":7445},[20361],{"type":45,"value":7530},{"type":39,"tag":1072,"props":20363,"children":20364},{"class":1074,"line":7542},[20365],{"type":39,"tag":1072,"props":20366,"children":20367},{"style":7445},[20368],{"type":45,"value":7539},{"type":39,"tag":1072,"props":20370,"children":20371},{"class":1074,"line":7551},[20372],{"type":39,"tag":1072,"props":20373,"children":20374},{"style":7445},[20375],{"type":45,"value":7548},{"type":39,"tag":1072,"props":20377,"children":20378},{"class":1074,"line":2380},[20379],{"type":39,"tag":1072,"props":20380,"children":20381},{"style":7445},[20382],{"type":45,"value":7635},{"type":39,"tag":1072,"props":20384,"children":20385},{"class":1074,"line":7568},[20386],{"type":39,"tag":1072,"props":20387,"children":20388},{"emptyLinePlaceholder":19},[20389],{"type":45,"value":7644},{"type":39,"tag":1072,"props":20391,"children":20392},{"class":1074,"line":7577},[20393,20397,20402,20406],{"type":39,"tag":1072,"props":20394,"children":20395},{"style":1195},[20396],{"type":45,"value":17279},{"type":39,"tag":1072,"props":20398,"children":20399},{"style":1090},[20400],{"type":45,"value":20401}," channel_spend ",{"type":39,"tag":1072,"props":20403,"children":20404},{"style":1195},[20405],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20407,"children":20408},{"style":1090},[20409],{"type":45,"value":17293},{"type":39,"tag":1072,"props":20411,"children":20412},{"class":1074,"line":7585},[20413],{"type":39,"tag":1072,"props":20414,"children":20415},{"style":1195},[20416],{"type":45,"value":17301},{"type":39,"tag":1072,"props":20418,"children":20419},{"class":1074,"line":7593},[20420],{"type":39,"tag":1072,"props":20421,"children":20422},{"style":1090},[20423],{"type":45,"value":20424},"        spend_date,\n",{"type":39,"tag":1072,"props":20426,"children":20427},{"class":1074,"line":7602},[20428],{"type":39,"tag":1072,"props":20429,"children":20430},{"style":1090},[20431],{"type":45,"value":20432},"        channel,\n",{"type":39,"tag":1072,"props":20434,"children":20435},{"class":1074,"line":7611},[20436,20441,20446,20450],{"type":39,"tag":1072,"props":20437,"children":20438},{"style":1096},[20439],{"type":45,"value":20440},"        sum",{"type":39,"tag":1072,"props":20442,"children":20443},{"style":1090},[20444],{"type":45,"value":20445},"(spend) ",{"type":39,"tag":1072,"props":20447,"children":20448},{"style":1195},[20449],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20451,"children":20452},{"style":1090},[20453],{"type":45,"value":20454}," total_spend,\n",{"type":39,"tag":1072,"props":20456,"children":20457},{"class":1074,"line":7620},[20458,20462,20467,20471],{"type":39,"tag":1072,"props":20459,"children":20460},{"style":1096},[20461],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20463,"children":20464},{"style":1090},[20465],{"type":45,"value":20466},"(impressions) ",{"type":39,"tag":1072,"props":20468,"children":20469},{"style":1195},[20470],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20472,"children":20473},{"style":1090},[20474],{"type":45,"value":20475}," total_impressions,\n",{"type":39,"tag":1072,"props":20477,"children":20478},{"class":1074,"line":7629},[20479,20483,20488,20492],{"type":39,"tag":1072,"props":20480,"children":20481},{"style":1096},[20482],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20484,"children":20485},{"style":1090},[20486],{"type":45,"value":20487},"(clicks) ",{"type":39,"tag":1072,"props":20489,"children":20490},{"style":1195},[20491],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20493,"children":20494},{"style":1090},[20495],{"type":45,"value":20496}," total_clicks,\n",{"type":39,"tag":1072,"props":20498,"children":20499},{"class":1074,"line":7638},[20500,20504,20509,20513],{"type":39,"tag":1072,"props":20501,"children":20502},{"style":1096},[20503],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20505,"children":20506},{"style":1090},[20507],{"type":45,"value":20508},"(conversions) ",{"type":39,"tag":1072,"props":20510,"children":20511},{"style":1195},[20512],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20514,"children":20515},{"style":1090},[20516],{"type":45,"value":20517}," total_conversions\n",{"type":39,"tag":1072,"props":20519,"children":20520},{"class":1074,"line":7647},[20521,20525,20529,20533],{"type":39,"tag":1072,"props":20522,"children":20523},{"style":1195},[20524],{"type":45,"value":17413},{"type":39,"tag":1072,"props":20526,"children":20527},{"style":1096},[20528],{"type":45,"value":15691},{"type":39,"tag":1072,"props":20530,"children":20531},{"style":1090},[20532],{"type":45,"value":934},{"type":39,"tag":1072,"props":20534,"children":20535},{"style":1096},[20536],{"type":45,"value":20537},"stg_marketing_spend\n",{"type":39,"tag":1072,"props":20539,"children":20540},{"class":1074,"line":7656},[20541,20545],{"type":39,"tag":1072,"props":20542,"children":20543},{"style":1195},[20544],{"type":45,"value":17611},{"type":39,"tag":1072,"props":20546,"children":20547},{"style":1090},[20548],{"type":45,"value":20549}," spend_date, channel\n",{"type":39,"tag":1072,"props":20551,"children":20552},{"class":1074,"line":7684},[20553],{"type":39,"tag":1072,"props":20554,"children":20555},{"style":1090},[20556],{"type":45,"value":17529},{"type":39,"tag":1072,"props":20558,"children":20559},{"class":1074,"line":7706},[20560,20565,20569],{"type":39,"tag":1072,"props":20561,"children":20562},{"style":1090},[20563],{"type":45,"value":20564},"channel_sessions ",{"type":39,"tag":1072,"props":20566,"children":20567},{"style":1195},[20568],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20570,"children":20571},{"style":1090},[20572],{"type":45,"value":17293},{"type":39,"tag":1072,"props":20574,"children":20575},{"class":1074,"line":7732},[20576],{"type":39,"tag":1072,"props":20577,"children":20578},{"style":1195},[20579],{"type":45,"value":17301},{"type":39,"tag":1072,"props":20581,"children":20582},{"class":1074,"line":7758},[20583],{"type":39,"tag":1072,"props":20584,"children":20585},{"style":1090},[20586],{"type":45,"value":20587},"        session_date,\n",{"type":39,"tag":1072,"props":20589,"children":20590},{"class":1074,"line":7783},[20591],{"type":39,"tag":1072,"props":20592,"children":20593},{"style":1090},[20594],{"type":45,"value":20432},{"type":39,"tag":1072,"props":20596,"children":20597},{"class":1074,"line":7804},[20598,20602,20607,20611,20616],{"type":39,"tag":1072,"props":20599,"children":20600},{"style":1096},[20601],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20603,"children":20604},{"style":1090},[20605],{"type":45,"value":20606},"(total_sessions) ",{"type":39,"tag":1072,"props":20608,"children":20609},{"style":1195},[20610],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20612,"children":20613},{"style":1195},[20614],{"type":45,"value":20615}," sessions",{"type":39,"tag":1072,"props":20617,"children":20618},{"style":1090},[20619],{"type":45,"value":7703},{"type":39,"tag":1072,"props":20621,"children":20622},{"class":1074,"line":7874},[20623,20627,20632,20636],{"type":39,"tag":1072,"props":20624,"children":20625},{"style":1096},[20626],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20628,"children":20629},{"style":1090},[20630],{"type":45,"value":20631},"(new_users) ",{"type":39,"tag":1072,"props":20633,"children":20634},{"style":1195},[20635],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20637,"children":20638},{"style":1090},[20639],{"type":45,"value":13862},{"type":39,"tag":1072,"props":20641,"children":20642},{"class":1074,"line":7936},[20643,20647,20652,20656],{"type":39,"tag":1072,"props":20644,"children":20645},{"style":1096},[20646],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20648,"children":20649},{"style":1090},[20650],{"type":45,"value":20651},"(purchase_events) ",{"type":39,"tag":1072,"props":20653,"children":20654},{"style":1195},[20655],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20657,"children":20658},{"style":1090},[20659],{"type":45,"value":20660}," purchases\n",{"type":39,"tag":1072,"props":20662,"children":20663},{"class":1074,"line":7998},[20664,20668,20672,20676],{"type":39,"tag":1072,"props":20665,"children":20666},{"style":1195},[20667],{"type":45,"value":17413},{"type":39,"tag":1072,"props":20669,"children":20670},{"style":1096},[20671],{"type":45,"value":15691},{"type":39,"tag":1072,"props":20673,"children":20674},{"style":1090},[20675],{"type":45,"value":934},{"type":39,"tag":1072,"props":20677,"children":20678},{"style":1096},[20679],{"type":45,"value":20680},"stg_web_sessions\n",{"type":39,"tag":1072,"props":20682,"children":20683},{"class":1074,"line":8060},[20684,20688],{"type":39,"tag":1072,"props":20685,"children":20686},{"style":1195},[20687],{"type":45,"value":17611},{"type":39,"tag":1072,"props":20689,"children":20690},{"style":1090},[20691],{"type":45,"value":20692}," session_date, channel\n",{"type":39,"tag":1072,"props":20694,"children":20695},{"class":1074,"line":8081},[20696],{"type":39,"tag":1072,"props":20697,"children":20698},{"style":1090},[20699],{"type":45,"value":17529},{"type":39,"tag":1072,"props":20701,"children":20702},{"class":1074,"line":8102},[20703,20708,20712],{"type":39,"tag":1072,"props":20704,"children":20705},{"style":1090},[20706],{"type":45,"value":20707},"channel_revenue ",{"type":39,"tag":1072,"props":20709,"children":20710},{"style":1195},[20711],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20713,"children":20714},{"style":1090},[20715],{"type":45,"value":17293},{"type":39,"tag":1072,"props":20717,"children":20718},{"class":1074,"line":8123},[20719],{"type":39,"tag":1072,"props":20720,"children":20721},{"style":1195},[20722],{"type":45,"value":17301},{"type":39,"tag":1072,"props":20724,"children":20725},{"class":1074,"line":8169},[20726,20731,20735],{"type":39,"tag":1072,"props":20727,"children":20728},{"style":1090},[20729],{"type":45,"value":20730},"        toDate(order_date) ",{"type":39,"tag":1072,"props":20732,"children":20733},{"style":1195},[20734],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20736,"children":20737},{"style":1090},[20738],{"type":45,"value":7755},{"type":39,"tag":1072,"props":20740,"children":20741},{"class":1074,"line":8195},[20742,20747,20751,20756],{"type":39,"tag":1072,"props":20743,"children":20744},{"style":1096},[20745],{"type":45,"value":20746},"        ws",{"type":39,"tag":1072,"props":20748,"children":20749},{"style":1090},[20750],{"type":45,"value":934},{"type":39,"tag":1072,"props":20752,"children":20753},{"style":1096},[20754],{"type":45,"value":20755},"channel",{"type":39,"tag":1072,"props":20757,"children":20758},{"style":1090},[20759],{"type":45,"value":7703},{"type":39,"tag":1072,"props":20761,"children":20762},{"class":1074,"line":8221},[20763,20767,20771,20775,20779,20783,20787,20791],{"type":39,"tag":1072,"props":20764,"children":20765},{"style":1096},[20766],{"type":45,"value":20440},{"type":39,"tag":1072,"props":20768,"children":20769},{"style":1090},[20770],{"type":45,"value":7815},{"type":39,"tag":1072,"props":20772,"children":20773},{"style":1096},[20774],{"type":45,"value":7820},{"type":39,"tag":1072,"props":20776,"children":20777},{"style":1090},[20778],{"type":45,"value":934},{"type":39,"tag":1072,"props":20780,"children":20781},{"style":1096},[20782],{"type":45,"value":17879},{"type":39,"tag":1072,"props":20784,"children":20785},{"style":1090},[20786],{"type":45,"value":8344},{"type":39,"tag":1072,"props":20788,"children":20789},{"style":1195},[20790],{"type":45,"value":7866},{"type":39,"tag":1072,"props":20792,"children":20793},{"style":1090},[20794],{"type":45,"value":20795}," attributed_revenue\n",{"type":39,"tag":1072,"props":20797,"children":20798},{"class":1074,"line":8249},[20799,20803,20807,20811,20815],{"type":39,"tag":1072,"props":20800,"children":20801},{"style":1195},[20802],{"type":45,"value":17413},{"type":39,"tag":1072,"props":20804,"children":20805},{"style":1096},[20806],{"type":45,"value":15691},{"type":39,"tag":1072,"props":20808,"children":20809},{"style":1090},[20810],{"type":45,"value":934},{"type":39,"tag":1072,"props":20812,"children":20813},{"style":1096},[20814],{"type":45,"value":16313},{"type":39,"tag":1072,"props":20816,"children":20817},{"style":1090},[20818],{"type":45,"value":8246},{"type":39,"tag":1072,"props":20820,"children":20821},{"class":1074,"line":8275},[20822,20826,20830,20834,20839],{"type":39,"tag":1072,"props":20823,"children":20824},{"style":1195},[20825],{"type":45,"value":17437},{"type":39,"tag":1072,"props":20827,"children":20828},{"style":1096},[20829],{"type":45,"value":15691},{"type":39,"tag":1072,"props":20831,"children":20832},{"style":1090},[20833],{"type":45,"value":934},{"type":39,"tag":1072,"props":20835,"children":20836},{"style":1096},[20837],{"type":45,"value":20838},"stg_web_sessions",{"type":39,"tag":1072,"props":20840,"children":20841},{"style":1090},[20842],{"type":45,"value":20843}," ws\n",{"type":39,"tag":1072,"props":20845,"children":20846},{"class":1074,"line":8316},[20847,20851,20855,20859,20863,20867,20871,20875,20880,20884],{"type":39,"tag":1072,"props":20848,"children":20849},{"style":1195},[20850],{"type":45,"value":17462},{"type":39,"tag":1072,"props":20852,"children":20853},{"style":1090},[20854],{"type":45,"value":8327},{"type":39,"tag":1072,"props":20856,"children":20857},{"style":1096},[20858],{"type":45,"value":7820},{"type":39,"tag":1072,"props":20860,"children":20861},{"style":1090},[20862],{"type":45,"value":934},{"type":39,"tag":1072,"props":20864,"children":20865},{"style":1096},[20866],{"type":45,"value":17376},{"type":39,"tag":1072,"props":20868,"children":20869},{"style":1090},[20870],{"type":45,"value":8344},{"type":39,"tag":1072,"props":20872,"children":20873},{"style":1195},[20874],{"type":45,"value":8349},{"type":39,"tag":1072,"props":20876,"children":20877},{"style":1096},[20878],{"type":45,"value":20879}," ws",{"type":39,"tag":1072,"props":20881,"children":20882},{"style":1090},[20883],{"type":45,"value":934},{"type":39,"tag":1072,"props":20885,"children":20886},{"style":1096},[20887],{"type":45,"value":20888},"session_date\n",{"type":39,"tag":1072,"props":20890,"children":20891},{"class":1074,"line":9194},[20892,20896,20900,20904,20908,20912],{"type":39,"tag":1072,"props":20893,"children":20894},{"style":1195},[20895],{"type":45,"value":17499},{"type":39,"tag":1072,"props":20897,"children":20898},{"style":1096},[20899],{"type":45,"value":8286},{"type":39,"tag":1072,"props":20901,"children":20902},{"style":1090},[20903],{"type":45,"value":934},{"type":39,"tag":1072,"props":20905,"children":20906},{"style":1096},[20907],{"type":45,"value":17512},{"type":39,"tag":1072,"props":20909,"children":20910},{"style":1195},[20911],{"type":45,"value":8299},{"type":39,"tag":1072,"props":20913,"children":20914},{"style":1084},[20915],{"type":45,"value":17521},{"type":39,"tag":1072,"props":20917,"children":20918},{"class":1074,"line":9253},[20919,20923,20928,20933,20937],{"type":39,"tag":1072,"props":20920,"children":20921},{"style":1195},[20922],{"type":45,"value":17611},{"type":39,"tag":1072,"props":20924,"children":20925},{"style":1090},[20926],{"type":45,"value":20927}," toDate(order_date), ",{"type":39,"tag":1072,"props":20929,"children":20930},{"style":1096},[20931],{"type":45,"value":20932},"ws",{"type":39,"tag":1072,"props":20934,"children":20935},{"style":1090},[20936],{"type":45,"value":934},{"type":39,"tag":1072,"props":20938,"children":20939},{"style":1096},[20940],{"type":45,"value":20941},"channel\n",{"type":39,"tag":1072,"props":20943,"children":20945},{"class":1074,"line":20944},48,[20946],{"type":39,"tag":1072,"props":20947,"children":20948},{"style":1090},[20949],{"type":45,"value":8372},{"type":39,"tag":1072,"props":20951,"children":20953},{"class":1074,"line":20952},49,[20954],{"type":39,"tag":1072,"props":20955,"children":20956},{"style":1195},[20957],{"type":45,"value":7653},{"type":39,"tag":1072,"props":20959,"children":20961},{"class":1074,"line":20960},50,[20962,20966,20970,20975,20979],{"type":39,"tag":1072,"props":20963,"children":20964},{"style":1096},[20965],{"type":45,"value":17659},{"type":39,"tag":1072,"props":20967,"children":20968},{"style":1090},[20969],{"type":45,"value":934},{"type":39,"tag":1072,"props":20971,"children":20972},{"style":1096},[20973],{"type":45,"value":20974},"spend_date",{"type":39,"tag":1072,"props":20976,"children":20977},{"style":1195},[20978],{"type":45,"value":7676},{"type":39,"tag":1072,"props":20980,"children":20981},{"style":1090},[20982],{"type":45,"value":20983}," report_date,\n",{"type":39,"tag":1072,"props":20985,"children":20987},{"class":1074,"line":20986},51,[20988,20992,20996,21000],{"type":39,"tag":1072,"props":20989,"children":20990},{"style":1096},[20991],{"type":45,"value":17659},{"type":39,"tag":1072,"props":20993,"children":20994},{"style":1090},[20995],{"type":45,"value":934},{"type":39,"tag":1072,"props":20997,"children":20998},{"style":1096},[20999],{"type":45,"value":20755},{"type":39,"tag":1072,"props":21001,"children":21002},{"style":1090},[21003],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21005,"children":21007},{"class":1074,"line":21006},52,[21008,21012,21016,21021],{"type":39,"tag":1072,"props":21009,"children":21010},{"style":1096},[21011],{"type":45,"value":17659},{"type":39,"tag":1072,"props":21013,"children":21014},{"style":1090},[21015],{"type":45,"value":934},{"type":39,"tag":1072,"props":21017,"children":21018},{"style":1096},[21019],{"type":45,"value":21020},"total_spend",{"type":39,"tag":1072,"props":21022,"children":21023},{"style":1090},[21024],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21026,"children":21028},{"class":1074,"line":21027},53,[21029,21033,21037,21042],{"type":39,"tag":1072,"props":21030,"children":21031},{"style":1096},[21032],{"type":45,"value":17659},{"type":39,"tag":1072,"props":21034,"children":21035},{"style":1090},[21036],{"type":45,"value":934},{"type":39,"tag":1072,"props":21038,"children":21039},{"style":1096},[21040],{"type":45,"value":21041},"total_impressions",{"type":39,"tag":1072,"props":21043,"children":21044},{"style":1090},[21045],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21047,"children":21049},{"class":1074,"line":21048},54,[21050,21054,21058,21063],{"type":39,"tag":1072,"props":21051,"children":21052},{"style":1096},[21053],{"type":45,"value":17659},{"type":39,"tag":1072,"props":21055,"children":21056},{"style":1090},[21057],{"type":45,"value":934},{"type":39,"tag":1072,"props":21059,"children":21060},{"style":1096},[21061],{"type":45,"value":21062},"total_clicks",{"type":39,"tag":1072,"props":21064,"children":21065},{"style":1090},[21066],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21068,"children":21070},{"class":1074,"line":21069},55,[21071,21075,21079,21084],{"type":39,"tag":1072,"props":21072,"children":21073},{"style":1096},[21074],{"type":45,"value":17659},{"type":39,"tag":1072,"props":21076,"children":21077},{"style":1090},[21078],{"type":45,"value":934},{"type":39,"tag":1072,"props":21080,"children":21081},{"style":1096},[21082],{"type":45,"value":21083},"total_conversions",{"type":39,"tag":1072,"props":21085,"children":21086},{"style":1090},[21087],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21089,"children":21091},{"class":1074,"line":21090},56,[21092,21097,21101,21105],{"type":39,"tag":1072,"props":21093,"children":21094},{"style":1096},[21095],{"type":45,"value":21096},"    sess",{"type":39,"tag":1072,"props":21098,"children":21099},{"style":1090},[21100],{"type":45,"value":934},{"type":39,"tag":1072,"props":21102,"children":21103},{"style":1096},[21104],{"type":45,"value":13288},{"type":39,"tag":1072,"props":21106,"children":21107},{"style":1090},[21108],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21110,"children":21112},{"class":1074,"line":21111},57,[21113,21117,21121,21125],{"type":39,"tag":1072,"props":21114,"children":21115},{"style":1096},[21116],{"type":45,"value":21096},{"type":39,"tag":1072,"props":21118,"children":21119},{"style":1090},[21120],{"type":45,"value":934},{"type":39,"tag":1072,"props":21122,"children":21123},{"style":1096},[21124],{"type":45,"value":13313},{"type":39,"tag":1072,"props":21126,"children":21127},{"style":1090},[21128],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21130,"children":21132},{"class":1074,"line":21131},58,[21133,21138,21142,21147],{"type":39,"tag":1072,"props":21134,"children":21135},{"style":1096},[21136],{"type":45,"value":21137},"    cr",{"type":39,"tag":1072,"props":21139,"children":21140},{"style":1090},[21141],{"type":45,"value":934},{"type":39,"tag":1072,"props":21143,"children":21144},{"style":1096},[21145],{"type":45,"value":21146},"attributed_revenue",{"type":39,"tag":1072,"props":21148,"children":21149},{"style":1090},[21150],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21152,"children":21154},{"class":1074,"line":21153},59,[21155,21159,21163,21168,21172,21176,21180,21184,21188,21192,21196,21200,21204,21208,21212,21216,21220,21224],{"type":39,"tag":1072,"props":21156,"children":21157},{"style":1096},[21158],{"type":45,"value":15571},{"type":39,"tag":1072,"props":21160,"children":21161},{"style":1090},[21162],{"type":45,"value":7815},{"type":39,"tag":1072,"props":21164,"children":21165},{"style":1096},[21166],{"type":45,"value":21167},"cr",{"type":39,"tag":1072,"props":21169,"children":21170},{"style":1090},[21171],{"type":45,"value":934},{"type":39,"tag":1072,"props":21173,"children":21174},{"style":1096},[21175],{"type":45,"value":21146},{"type":39,"tag":1072,"props":21177,"children":21178},{"style":1195},[21179],{"type":45,"value":8143},{"type":39,"tag":1072,"props":21181,"children":21182},{"style":1096},[21183],{"type":45,"value":15586},{"type":39,"tag":1072,"props":21185,"children":21186},{"style":1090},[21187],{"type":45,"value":7815},{"type":39,"tag":1072,"props":21189,"children":21190},{"style":1096},[21191],{"type":45,"value":17806},{"type":39,"tag":1072,"props":21193,"children":21194},{"style":1090},[21195],{"type":45,"value":934},{"type":39,"tag":1072,"props":21197,"children":21198},{"style":1096},[21199],{"type":45,"value":21020},{"type":39,"tag":1072,"props":21201,"children":21202},{"style":1090},[21203],{"type":45,"value":978},{"type":39,"tag":1072,"props":21205,"children":21206},{"style":1096},[21207],{"type":45,"value":8157},{"type":39,"tag":1072,"props":21209,"children":21210},{"style":1090},[21211],{"type":45,"value":15600},{"type":39,"tag":1072,"props":21213,"children":21214},{"style":1096},[21215],{"type":45,"value":7856},{"type":39,"tag":1072,"props":21217,"children":21218},{"style":1090},[21219],{"type":45,"value":8344},{"type":39,"tag":1072,"props":21221,"children":21222},{"style":1195},[21223],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21225,"children":21226},{"style":1090},[21227],{"type":45,"value":21228}," roas,\n",{"type":39,"tag":1072,"props":21230,"children":21232},{"class":1074,"line":21231},60,[21233,21237,21241,21245,21249,21253,21257,21261,21265,21269,21273,21277,21281,21285,21289,21293,21297,21301],{"type":39,"tag":1072,"props":21234,"children":21235},{"style":1096},[21236],{"type":45,"value":15571},{"type":39,"tag":1072,"props":21238,"children":21239},{"style":1090},[21240],{"type":45,"value":7815},{"type":39,"tag":1072,"props":21242,"children":21243},{"style":1096},[21244],{"type":45,"value":17806},{"type":39,"tag":1072,"props":21246,"children":21247},{"style":1090},[21248],{"type":45,"value":934},{"type":39,"tag":1072,"props":21250,"children":21251},{"style":1096},[21252],{"type":45,"value":21020},{"type":39,"tag":1072,"props":21254,"children":21255},{"style":1195},[21256],{"type":45,"value":8143},{"type":39,"tag":1072,"props":21258,"children":21259},{"style":1096},[21260],{"type":45,"value":15586},{"type":39,"tag":1072,"props":21262,"children":21263},{"style":1090},[21264],{"type":45,"value":7815},{"type":39,"tag":1072,"props":21266,"children":21267},{"style":1096},[21268],{"type":45,"value":17806},{"type":39,"tag":1072,"props":21270,"children":21271},{"style":1090},[21272],{"type":45,"value":934},{"type":39,"tag":1072,"props":21274,"children":21275},{"style":1096},[21276],{"type":45,"value":21083},{"type":39,"tag":1072,"props":21278,"children":21279},{"style":1090},[21280],{"type":45,"value":978},{"type":39,"tag":1072,"props":21282,"children":21283},{"style":1096},[21284],{"type":45,"value":8157},{"type":39,"tag":1072,"props":21286,"children":21287},{"style":1090},[21288],{"type":45,"value":15600},{"type":39,"tag":1072,"props":21290,"children":21291},{"style":1096},[21292],{"type":45,"value":7856},{"type":39,"tag":1072,"props":21294,"children":21295},{"style":1090},[21296],{"type":45,"value":8344},{"type":39,"tag":1072,"props":21298,"children":21299},{"style":1195},[21300],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21302,"children":21303},{"style":1090},[21304],{"type":45,"value":21305}," cost_per_acquisition,\n",{"type":39,"tag":1072,"props":21307,"children":21309},{"class":1074,"line":21308},61,[21310,21314,21318,21322,21326,21330,21334,21338,21342,21346,21350,21354,21358,21362,21366,21370,21374,21378,21382,21386,21390],{"type":39,"tag":1072,"props":21311,"children":21312},{"style":1096},[21313],{"type":45,"value":15571},{"type":39,"tag":1072,"props":21315,"children":21316},{"style":1090},[21317],{"type":45,"value":7815},{"type":39,"tag":1072,"props":21319,"children":21320},{"style":1096},[21321],{"type":45,"value":17806},{"type":39,"tag":1072,"props":21323,"children":21324},{"style":1090},[21325],{"type":45,"value":934},{"type":39,"tag":1072,"props":21327,"children":21328},{"style":1096},[21329],{"type":45,"value":21062},{"type":39,"tag":1072,"props":21331,"children":21332},{"style":1195},[21333],{"type":45,"value":8143},{"type":39,"tag":1072,"props":21335,"children":21336},{"style":1096},[21337],{"type":45,"value":15586},{"type":39,"tag":1072,"props":21339,"children":21340},{"style":1090},[21341],{"type":45,"value":7815},{"type":39,"tag":1072,"props":21343,"children":21344},{"style":1096},[21345],{"type":45,"value":17806},{"type":39,"tag":1072,"props":21347,"children":21348},{"style":1090},[21349],{"type":45,"value":934},{"type":39,"tag":1072,"props":21351,"children":21352},{"style":1096},[21353],{"type":45,"value":21041},{"type":39,"tag":1072,"props":21355,"children":21356},{"style":1090},[21357],{"type":45,"value":978},{"type":39,"tag":1072,"props":21359,"children":21360},{"style":1096},[21361],{"type":45,"value":8157},{"type":39,"tag":1072,"props":21363,"children":21364},{"style":1090},[21365],{"type":45,"value":8344},{"type":39,"tag":1072,"props":21367,"children":21368},{"style":1195},[21369],{"type":45,"value":13780},{"type":39,"tag":1072,"props":21371,"children":21372},{"style":1096},[21373],{"type":45,"value":8148},{"type":39,"tag":1072,"props":21375,"children":21376},{"style":1090},[21377],{"type":45,"value":978},{"type":39,"tag":1072,"props":21379,"children":21380},{"style":1096},[21381],{"type":45,"value":7856},{"type":39,"tag":1072,"props":21383,"children":21384},{"style":1090},[21385],{"type":45,"value":8344},{"type":39,"tag":1072,"props":21387,"children":21388},{"style":1195},[21389],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21391,"children":21392},{"style":1090},[21393],{"type":45,"value":21394}," click_through_rate\n",{"type":39,"tag":1072,"props":21396,"children":21398},{"class":1074,"line":21397},62,[21399,21403],{"type":39,"tag":1072,"props":21400,"children":21401},{"style":1195},[21402],{"type":45,"value":8227},{"type":39,"tag":1072,"props":21404,"children":21405},{"style":1090},[21406],{"type":45,"value":21407}," channel_spend cs\n",{"type":39,"tag":1072,"props":21409,"children":21411},{"class":1074,"line":21410},63,[21412,21416],{"type":39,"tag":1072,"props":21413,"children":21414},{"style":1195},[21415],{"type":45,"value":7335},{"type":39,"tag":1072,"props":21417,"children":21418},{"style":1090},[21419],{"type":45,"value":21420}," channel_sessions sess\n",{"type":39,"tag":1072,"props":21422,"children":21424},{"class":1074,"line":21423},64,[21425,21429,21433,21437,21441,21445,21450,21454],{"type":39,"tag":1072,"props":21426,"children":21427},{"style":1195},[21428],{"type":45,"value":8281},{"type":39,"tag":1072,"props":21430,"children":21431},{"style":1096},[21432],{"type":45,"value":18010},{"type":39,"tag":1072,"props":21434,"children":21435},{"style":1090},[21436],{"type":45,"value":934},{"type":39,"tag":1072,"props":21438,"children":21439},{"style":1096},[21440],{"type":45,"value":20974},{"type":39,"tag":1072,"props":21442,"children":21443},{"style":1195},[21444],{"type":45,"value":8299},{"type":39,"tag":1072,"props":21446,"children":21447},{"style":1096},[21448],{"type":45,"value":21449}," sess",{"type":39,"tag":1072,"props":21451,"children":21452},{"style":1090},[21453],{"type":45,"value":934},{"type":39,"tag":1072,"props":21455,"children":21456},{"style":1096},[21457],{"type":45,"value":20888},{"type":39,"tag":1072,"props":21459,"children":21461},{"class":1074,"line":21460},65,[21462,21466,21470,21474,21478,21482,21486,21490],{"type":39,"tag":1072,"props":21463,"children":21464},{"style":1195},[21465],{"type":45,"value":8322},{"type":39,"tag":1072,"props":21467,"children":21468},{"style":1096},[21469],{"type":45,"value":18010},{"type":39,"tag":1072,"props":21471,"children":21472},{"style":1090},[21473],{"type":45,"value":934},{"type":39,"tag":1072,"props":21475,"children":21476},{"style":1096},[21477],{"type":45,"value":20755},{"type":39,"tag":1072,"props":21479,"children":21480},{"style":1195},[21481],{"type":45,"value":8299},{"type":39,"tag":1072,"props":21483,"children":21484},{"style":1096},[21485],{"type":45,"value":21449},{"type":39,"tag":1072,"props":21487,"children":21488},{"style":1090},[21489],{"type":45,"value":934},{"type":39,"tag":1072,"props":21491,"children":21492},{"style":1096},[21493],{"type":45,"value":20941},{"type":39,"tag":1072,"props":21495,"children":21497},{"class":1074,"line":21496},66,[21498,21502],{"type":39,"tag":1072,"props":21499,"children":21500},{"style":1195},[21501],{"type":45,"value":7335},{"type":39,"tag":1072,"props":21503,"children":21504},{"style":1090},[21505],{"type":45,"value":21506}," channel_revenue cr\n",{"type":39,"tag":1072,"props":21508,"children":21510},{"class":1074,"line":21509},67,[21511,21515,21519,21523,21527,21531,21536,21540],{"type":39,"tag":1072,"props":21512,"children":21513},{"style":1195},[21514],{"type":45,"value":8281},{"type":39,"tag":1072,"props":21516,"children":21517},{"style":1096},[21518],{"type":45,"value":18010},{"type":39,"tag":1072,"props":21520,"children":21521},{"style":1090},[21522],{"type":45,"value":934},{"type":39,"tag":1072,"props":21524,"children":21525},{"style":1096},[21526],{"type":45,"value":20974},{"type":39,"tag":1072,"props":21528,"children":21529},{"style":1195},[21530],{"type":45,"value":8299},{"type":39,"tag":1072,"props":21532,"children":21533},{"style":1096},[21534],{"type":45,"value":21535}," cr",{"type":39,"tag":1072,"props":21537,"children":21538},{"style":1090},[21539],{"type":45,"value":934},{"type":39,"tag":1072,"props":21541,"children":21542},{"style":1096},[21543],{"type":45,"value":21544},"order_date\n",{"type":39,"tag":1072,"props":21546,"children":21548},{"class":1074,"line":21547},68,[21549,21553,21557,21561,21565,21569,21573,21577],{"type":39,"tag":1072,"props":21550,"children":21551},{"style":1195},[21552],{"type":45,"value":8322},{"type":39,"tag":1072,"props":21554,"children":21555},{"style":1096},[21556],{"type":45,"value":18010},{"type":39,"tag":1072,"props":21558,"children":21559},{"style":1090},[21560],{"type":45,"value":934},{"type":39,"tag":1072,"props":21562,"children":21563},{"style":1096},[21564],{"type":45,"value":20755},{"type":39,"tag":1072,"props":21566,"children":21567},{"style":1195},[21568],{"type":45,"value":8299},{"type":39,"tag":1072,"props":21570,"children":21571},{"style":1096},[21572],{"type":45,"value":21535},{"type":39,"tag":1072,"props":21574,"children":21575},{"style":1090},[21576],{"type":45,"value":934},{"type":39,"tag":1072,"props":21578,"children":21579},{"style":1096},[21580],{"type":45,"value":20941},{"type":39,"tag":1072,"props":21582,"children":21584},{"class":1074,"line":21583},69,[21585,21589,21593,21597,21601,21605,21609,21613,21617,21621],{"type":39,"tag":1072,"props":21586,"children":21587},{"style":1195},[21588],{"type":45,"value":15720},{"type":39,"tag":1072,"props":21590,"children":21591},{"style":1096},[21592],{"type":45,"value":18010},{"type":39,"tag":1072,"props":21594,"children":21595},{"style":1090},[21596],{"type":45,"value":934},{"type":39,"tag":1072,"props":21598,"children":21599},{"style":1096},[21600],{"type":45,"value":20974},{"type":39,"tag":1072,"props":21602,"children":21603},{"style":1195},[21604],{"type":45,"value":9324},{"type":39,"tag":1072,"props":21606,"children":21607},{"style":1090},[21608],{"type":45,"value":978},{"type":39,"tag":1072,"props":21610,"children":21611},{"style":1096},[21612],{"type":45,"value":17806},{"type":39,"tag":1072,"props":21614,"children":21615},{"style":1090},[21616],{"type":45,"value":934},{"type":39,"tag":1072,"props":21618,"children":21619},{"style":1096},[21620],{"type":45,"value":21020},{"type":39,"tag":1072,"props":21622,"children":21623},{"style":1195},[21624],{"type":45,"value":21625}," DESC\n",{"type":39,"tag":1248,"props":21627,"children":21628},{"v-slot:bigquery":7},[21629],{"type":39,"tag":1062,"props":21630,"children":21632},{"className":7433,"code":21631,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_marketing_roi\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_marketing_spend\n  - staging.stg_web_sessions\n  - staging.stg_orders\ncolumns:\n  - name: channel\n    type: varchar\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nWITH channel_spend AS (\n    SELECT\n        spend_date,\n        channel,\n        sum(spend) AS total_spend,\n        sum(impressions) AS total_impressions,\n        sum(clicks) AS total_clicks,\n        sum(conversions) AS total_conversions\n    FROM staging.stg_marketing_spend\n    GROUP BY spend_date, channel\n),\nchannel_sessions AS (\n    SELECT\n        session_date,\n        channel,\n        sum(total_sessions) AS sessions,\n        sum(new_users) AS new_users,\n        sum(purchase_events) AS purchases\n    FROM staging.stg_web_sessions\n    GROUP BY session_date, channel\n),\nchannel_revenue AS (\n    SELECT\n        DATE(order_date) AS order_date,\n        ws.channel,\n        sum(o.order_total) AS attributed_revenue\n    FROM staging.stg_orders o\n    INNER JOIN staging.stg_web_sessions ws\n        ON DATE(o.order_date) = ws.session_date\n    WHERE o.payment_status = 'paid'\n    GROUP BY DATE(order_date), ws.channel\n)\nSELECT\n    cs.spend_date AS report_date,\n    cs.channel,\n    cs.total_spend,\n    cs.total_impressions,\n    cs.total_clicks,\n    cs.total_conversions,\n    sess.sessions,\n    sess.new_users,\n    cr.attributed_revenue,\n    round(cr.attributed_revenue \u002F NULLIF(cs.total_spend, 0), 2) AS roas,\n    round(cs.total_spend \u002F NULLIF(cs.total_conversions, 0), 2) AS cost_per_acquisition,\n    round(cs.total_clicks \u002F NULLIF(cs.total_impressions, 0) * 100, 2) AS click_through_rate\nFROM channel_spend cs\nLEFT JOIN channel_sessions sess\n    ON cs.spend_date = sess.session_date\n    AND cs.channel = sess.channel\nLEFT JOIN channel_revenue cr\n    ON cs.spend_date = cr.order_date\n    AND cs.channel = cr.channel\nORDER BY cs.spend_date DESC, cs.total_spend DESC\n",[21633],{"type":39,"tag":70,"props":21634,"children":21635},{"__ignoreMap":7},[21636,21643,21650,21657,21664,21671,21678,21685,21692,21699,21706,21713,21720,21727,21734,21741,21748,21767,21774,21781,21788,21807,21826,21845,21864,21883,21894,21901,21916,21923,21930,21937,21960,21979,21998,22017,22028,22035,22050,22057,22077,22096,22131,22154,22177,22224,22251,22279,22286,22293,22316,22335,22354,22373,22392,22411,22430,22449,22468,22543,22618,22705,22716,22727,22762,22797,22808,22843,22878],{"type":39,"tag":1072,"props":21637,"children":21638},{"class":1074,"line":868},[21639],{"type":39,"tag":1072,"props":21640,"children":21641},{"style":7445},[21642],{"type":45,"value":7448},{"type":39,"tag":1072,"props":21644,"children":21645},{"class":1074,"line":476},[21646],{"type":39,"tag":1072,"props":21647,"children":21648},{"style":7445},[21649],{"type":45,"value":20288},{"type":39,"tag":1072,"props":21651,"children":21652},{"class":1074,"line":483},[21653],{"type":39,"tag":1072,"props":21654,"children":21655},{"style":7445},[21656],{"type":45,"value":7464},{"type":39,"tag":1072,"props":21658,"children":21659},{"class":1074,"line":1626},[21660],{"type":39,"tag":1072,"props":21661,"children":21662},{"style":7445},[21663],{"type":45,"value":7472},{"type":39,"tag":1072,"props":21665,"children":21666},{"class":1074,"line":11},[21667],{"type":39,"tag":1072,"props":21668,"children":21669},{"style":7445},[21670],{"type":45,"value":7480},{"type":39,"tag":1072,"props":21672,"children":21673},{"class":1074,"line":20},[21674],{"type":39,"tag":1072,"props":21675,"children":21676},{"style":7445},[21677],{"type":45,"value":7488},{"type":39,"tag":1072,"props":21679,"children":21680},{"class":1074,"line":1679},[21681],{"type":39,"tag":1072,"props":21682,"children":21683},{"style":7445},[21684],{"type":45,"value":20324},{"type":39,"tag":1072,"props":21686,"children":21687},{"class":1074,"line":860},[21688],{"type":39,"tag":1072,"props":21689,"children":21690},{"style":7445},[21691],{"type":45,"value":20332},{"type":39,"tag":1072,"props":21693,"children":21694},{"class":1074,"line":2907},[21695],{"type":39,"tag":1072,"props":21696,"children":21697},{"style":7445},[21698],{"type":45,"value":15238},{"type":39,"tag":1072,"props":21700,"children":21701},{"class":1074,"line":7515},[21702],{"type":39,"tag":1072,"props":21703,"children":21704},{"style":7445},[21705],{"type":45,"value":7512},{"type":39,"tag":1072,"props":21707,"children":21708},{"class":1074,"line":7524},[21709],{"type":39,"tag":1072,"props":21710,"children":21711},{"style":7445},[21712],{"type":45,"value":20354},{"type":39,"tag":1072,"props":21714,"children":21715},{"class":1074,"line":7533},[21716],{"type":39,"tag":1072,"props":21717,"children":21718},{"style":7445},[21719],{"type":45,"value":7530},{"type":39,"tag":1072,"props":21721,"children":21722},{"class":1074,"line":7542},[21723],{"type":39,"tag":1072,"props":21724,"children":21725},{"style":7445},[21726],{"type":45,"value":7539},{"type":39,"tag":1072,"props":21728,"children":21729},{"class":1074,"line":7551},[21730],{"type":39,"tag":1072,"props":21731,"children":21732},{"style":7445},[21733],{"type":45,"value":7548},{"type":39,"tag":1072,"props":21735,"children":21736},{"class":1074,"line":2380},[21737],{"type":39,"tag":1072,"props":21738,"children":21739},{"style":7445},[21740],{"type":45,"value":7635},{"type":39,"tag":1072,"props":21742,"children":21743},{"class":1074,"line":7568},[21744],{"type":39,"tag":1072,"props":21745,"children":21746},{"emptyLinePlaceholder":19},[21747],{"type":45,"value":7644},{"type":39,"tag":1072,"props":21749,"children":21750},{"class":1074,"line":7577},[21751,21755,21759,21763],{"type":39,"tag":1072,"props":21752,"children":21753},{"style":1195},[21754],{"type":45,"value":17279},{"type":39,"tag":1072,"props":21756,"children":21757},{"style":1090},[21758],{"type":45,"value":20401},{"type":39,"tag":1072,"props":21760,"children":21761},{"style":1195},[21762],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21764,"children":21765},{"style":1090},[21766],{"type":45,"value":17293},{"type":39,"tag":1072,"props":21768,"children":21769},{"class":1074,"line":7585},[21770],{"type":39,"tag":1072,"props":21771,"children":21772},{"style":1195},[21773],{"type":45,"value":17301},{"type":39,"tag":1072,"props":21775,"children":21776},{"class":1074,"line":7593},[21777],{"type":39,"tag":1072,"props":21778,"children":21779},{"style":1090},[21780],{"type":45,"value":20424},{"type":39,"tag":1072,"props":21782,"children":21783},{"class":1074,"line":7602},[21784],{"type":39,"tag":1072,"props":21785,"children":21786},{"style":1090},[21787],{"type":45,"value":20432},{"type":39,"tag":1072,"props":21789,"children":21790},{"class":1074,"line":7611},[21791,21795,21799,21803],{"type":39,"tag":1072,"props":21792,"children":21793},{"style":1096},[21794],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21796,"children":21797},{"style":1090},[21798],{"type":45,"value":20445},{"type":39,"tag":1072,"props":21800,"children":21801},{"style":1195},[21802],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21804,"children":21805},{"style":1090},[21806],{"type":45,"value":20454},{"type":39,"tag":1072,"props":21808,"children":21809},{"class":1074,"line":7620},[21810,21814,21818,21822],{"type":39,"tag":1072,"props":21811,"children":21812},{"style":1096},[21813],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21815,"children":21816},{"style":1090},[21817],{"type":45,"value":20466},{"type":39,"tag":1072,"props":21819,"children":21820},{"style":1195},[21821],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21823,"children":21824},{"style":1090},[21825],{"type":45,"value":20475},{"type":39,"tag":1072,"props":21827,"children":21828},{"class":1074,"line":7629},[21829,21833,21837,21841],{"type":39,"tag":1072,"props":21830,"children":21831},{"style":1096},[21832],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21834,"children":21835},{"style":1090},[21836],{"type":45,"value":20487},{"type":39,"tag":1072,"props":21838,"children":21839},{"style":1195},[21840],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21842,"children":21843},{"style":1090},[21844],{"type":45,"value":20496},{"type":39,"tag":1072,"props":21846,"children":21847},{"class":1074,"line":7638},[21848,21852,21856,21860],{"type":39,"tag":1072,"props":21849,"children":21850},{"style":1096},[21851],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21853,"children":21854},{"style":1090},[21855],{"type":45,"value":20508},{"type":39,"tag":1072,"props":21857,"children":21858},{"style":1195},[21859],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21861,"children":21862},{"style":1090},[21863],{"type":45,"value":20517},{"type":39,"tag":1072,"props":21865,"children":21866},{"class":1074,"line":7647},[21867,21871,21875,21879],{"type":39,"tag":1072,"props":21868,"children":21869},{"style":1195},[21870],{"type":45,"value":17413},{"type":39,"tag":1072,"props":21872,"children":21873},{"style":1096},[21874],{"type":45,"value":15691},{"type":39,"tag":1072,"props":21876,"children":21877},{"style":1090},[21878],{"type":45,"value":934},{"type":39,"tag":1072,"props":21880,"children":21881},{"style":1096},[21882],{"type":45,"value":20537},{"type":39,"tag":1072,"props":21884,"children":21885},{"class":1074,"line":7656},[21886,21890],{"type":39,"tag":1072,"props":21887,"children":21888},{"style":1195},[21889],{"type":45,"value":17611},{"type":39,"tag":1072,"props":21891,"children":21892},{"style":1090},[21893],{"type":45,"value":20549},{"type":39,"tag":1072,"props":21895,"children":21896},{"class":1074,"line":7684},[21897],{"type":39,"tag":1072,"props":21898,"children":21899},{"style":1090},[21900],{"type":45,"value":17529},{"type":39,"tag":1072,"props":21902,"children":21903},{"class":1074,"line":7706},[21904,21908,21912],{"type":39,"tag":1072,"props":21905,"children":21906},{"style":1090},[21907],{"type":45,"value":20564},{"type":39,"tag":1072,"props":21909,"children":21910},{"style":1195},[21911],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21913,"children":21914},{"style":1090},[21915],{"type":45,"value":17293},{"type":39,"tag":1072,"props":21917,"children":21918},{"class":1074,"line":7732},[21919],{"type":39,"tag":1072,"props":21920,"children":21921},{"style":1195},[21922],{"type":45,"value":17301},{"type":39,"tag":1072,"props":21924,"children":21925},{"class":1074,"line":7758},[21926],{"type":39,"tag":1072,"props":21927,"children":21928},{"style":1090},[21929],{"type":45,"value":20587},{"type":39,"tag":1072,"props":21931,"children":21932},{"class":1074,"line":7783},[21933],{"type":39,"tag":1072,"props":21934,"children":21935},{"style":1090},[21936],{"type":45,"value":20432},{"type":39,"tag":1072,"props":21938,"children":21939},{"class":1074,"line":7804},[21940,21944,21948,21952,21956],{"type":39,"tag":1072,"props":21941,"children":21942},{"style":1096},[21943],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21945,"children":21946},{"style":1090},[21947],{"type":45,"value":20606},{"type":39,"tag":1072,"props":21949,"children":21950},{"style":1195},[21951],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21953,"children":21954},{"style":1195},[21955],{"type":45,"value":20615},{"type":39,"tag":1072,"props":21957,"children":21958},{"style":1090},[21959],{"type":45,"value":7703},{"type":39,"tag":1072,"props":21961,"children":21962},{"class":1074,"line":7874},[21963,21967,21971,21975],{"type":39,"tag":1072,"props":21964,"children":21965},{"style":1096},[21966],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21968,"children":21969},{"style":1090},[21970],{"type":45,"value":20631},{"type":39,"tag":1072,"props":21972,"children":21973},{"style":1195},[21974],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21976,"children":21977},{"style":1090},[21978],{"type":45,"value":13862},{"type":39,"tag":1072,"props":21980,"children":21981},{"class":1074,"line":7936},[21982,21986,21990,21994],{"type":39,"tag":1072,"props":21983,"children":21984},{"style":1096},[21985],{"type":45,"value":20440},{"type":39,"tag":1072,"props":21987,"children":21988},{"style":1090},[21989],{"type":45,"value":20651},{"type":39,"tag":1072,"props":21991,"children":21992},{"style":1195},[21993],{"type":45,"value":7866},{"type":39,"tag":1072,"props":21995,"children":21996},{"style":1090},[21997],{"type":45,"value":20660},{"type":39,"tag":1072,"props":21999,"children":22000},{"class":1074,"line":7998},[22001,22005,22009,22013],{"type":39,"tag":1072,"props":22002,"children":22003},{"style":1195},[22004],{"type":45,"value":17413},{"type":39,"tag":1072,"props":22006,"children":22007},{"style":1096},[22008],{"type":45,"value":15691},{"type":39,"tag":1072,"props":22010,"children":22011},{"style":1090},[22012],{"type":45,"value":934},{"type":39,"tag":1072,"props":22014,"children":22015},{"style":1096},[22016],{"type":45,"value":20680},{"type":39,"tag":1072,"props":22018,"children":22019},{"class":1074,"line":8060},[22020,22024],{"type":39,"tag":1072,"props":22021,"children":22022},{"style":1195},[22023],{"type":45,"value":17611},{"type":39,"tag":1072,"props":22025,"children":22026},{"style":1090},[22027],{"type":45,"value":20692},{"type":39,"tag":1072,"props":22029,"children":22030},{"class":1074,"line":8081},[22031],{"type":39,"tag":1072,"props":22032,"children":22033},{"style":1090},[22034],{"type":45,"value":17529},{"type":39,"tag":1072,"props":22036,"children":22037},{"class":1074,"line":8102},[22038,22042,22046],{"type":39,"tag":1072,"props":22039,"children":22040},{"style":1090},[22041],{"type":45,"value":20707},{"type":39,"tag":1072,"props":22043,"children":22044},{"style":1195},[22045],{"type":45,"value":7866},{"type":39,"tag":1072,"props":22047,"children":22048},{"style":1090},[22049],{"type":45,"value":17293},{"type":39,"tag":1072,"props":22051,"children":22052},{"class":1074,"line":8123},[22053],{"type":39,"tag":1072,"props":22054,"children":22055},{"style":1195},[22056],{"type":45,"value":17301},{"type":39,"tag":1072,"props":22058,"children":22059},{"class":1074,"line":8169},[22060,22065,22069,22073],{"type":39,"tag":1072,"props":22061,"children":22062},{"style":1195},[22063],{"type":45,"value":22064},"        DATE",{"type":39,"tag":1072,"props":22066,"children":22067},{"style":1090},[22068],{"type":45,"value":15887},{"type":39,"tag":1072,"props":22070,"children":22071},{"style":1195},[22072],{"type":45,"value":7866},{"type":39,"tag":1072,"props":22074,"children":22075},{"style":1090},[22076],{"type":45,"value":7755},{"type":39,"tag":1072,"props":22078,"children":22079},{"class":1074,"line":8195},[22080,22084,22088,22092],{"type":39,"tag":1072,"props":22081,"children":22082},{"style":1096},[22083],{"type":45,"value":20746},{"type":39,"tag":1072,"props":22085,"children":22086},{"style":1090},[22087],{"type":45,"value":934},{"type":39,"tag":1072,"props":22089,"children":22090},{"style":1096},[22091],{"type":45,"value":20755},{"type":39,"tag":1072,"props":22093,"children":22094},{"style":1090},[22095],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22097,"children":22098},{"class":1074,"line":8221},[22099,22103,22107,22111,22115,22119,22123,22127],{"type":39,"tag":1072,"props":22100,"children":22101},{"style":1096},[22102],{"type":45,"value":20440},{"type":39,"tag":1072,"props":22104,"children":22105},{"style":1090},[22106],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22108,"children":22109},{"style":1096},[22110],{"type":45,"value":7820},{"type":39,"tag":1072,"props":22112,"children":22113},{"style":1090},[22114],{"type":45,"value":934},{"type":39,"tag":1072,"props":22116,"children":22117},{"style":1096},[22118],{"type":45,"value":17879},{"type":39,"tag":1072,"props":22120,"children":22121},{"style":1090},[22122],{"type":45,"value":8344},{"type":39,"tag":1072,"props":22124,"children":22125},{"style":1195},[22126],{"type":45,"value":7866},{"type":39,"tag":1072,"props":22128,"children":22129},{"style":1090},[22130],{"type":45,"value":20795},{"type":39,"tag":1072,"props":22132,"children":22133},{"class":1074,"line":8249},[22134,22138,22142,22146,22150],{"type":39,"tag":1072,"props":22135,"children":22136},{"style":1195},[22137],{"type":45,"value":17413},{"type":39,"tag":1072,"props":22139,"children":22140},{"style":1096},[22141],{"type":45,"value":15691},{"type":39,"tag":1072,"props":22143,"children":22144},{"style":1090},[22145],{"type":45,"value":934},{"type":39,"tag":1072,"props":22147,"children":22148},{"style":1096},[22149],{"type":45,"value":16313},{"type":39,"tag":1072,"props":22151,"children":22152},{"style":1090},[22153],{"type":45,"value":8246},{"type":39,"tag":1072,"props":22155,"children":22156},{"class":1074,"line":8275},[22157,22161,22165,22169,22173],{"type":39,"tag":1072,"props":22158,"children":22159},{"style":1195},[22160],{"type":45,"value":17437},{"type":39,"tag":1072,"props":22162,"children":22163},{"style":1096},[22164],{"type":45,"value":15691},{"type":39,"tag":1072,"props":22166,"children":22167},{"style":1090},[22168],{"type":45,"value":934},{"type":39,"tag":1072,"props":22170,"children":22171},{"style":1096},[22172],{"type":45,"value":20838},{"type":39,"tag":1072,"props":22174,"children":22175},{"style":1090},[22176],{"type":45,"value":20843},{"type":39,"tag":1072,"props":22178,"children":22179},{"class":1074,"line":8316},[22180,22184,22188,22192,22196,22200,22204,22208,22212,22216,22220],{"type":39,"tag":1072,"props":22181,"children":22182},{"style":1195},[22183],{"type":45,"value":17462},{"type":39,"tag":1072,"props":22185,"children":22186},{"style":1195},[22187],{"type":45,"value":9143},{"type":39,"tag":1072,"props":22189,"children":22190},{"style":1090},[22191],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22193,"children":22194},{"style":1096},[22195],{"type":45,"value":7820},{"type":39,"tag":1072,"props":22197,"children":22198},{"style":1090},[22199],{"type":45,"value":934},{"type":39,"tag":1072,"props":22201,"children":22202},{"style":1096},[22203],{"type":45,"value":17376},{"type":39,"tag":1072,"props":22205,"children":22206},{"style":1090},[22207],{"type":45,"value":8344},{"type":39,"tag":1072,"props":22209,"children":22210},{"style":1195},[22211],{"type":45,"value":8349},{"type":39,"tag":1072,"props":22213,"children":22214},{"style":1096},[22215],{"type":45,"value":20879},{"type":39,"tag":1072,"props":22217,"children":22218},{"style":1090},[22219],{"type":45,"value":934},{"type":39,"tag":1072,"props":22221,"children":22222},{"style":1096},[22223],{"type":45,"value":20888},{"type":39,"tag":1072,"props":22225,"children":22226},{"class":1074,"line":9194},[22227,22231,22235,22239,22243,22247],{"type":39,"tag":1072,"props":22228,"children":22229},{"style":1195},[22230],{"type":45,"value":17499},{"type":39,"tag":1072,"props":22232,"children":22233},{"style":1096},[22234],{"type":45,"value":8286},{"type":39,"tag":1072,"props":22236,"children":22237},{"style":1090},[22238],{"type":45,"value":934},{"type":39,"tag":1072,"props":22240,"children":22241},{"style":1096},[22242],{"type":45,"value":17512},{"type":39,"tag":1072,"props":22244,"children":22245},{"style":1195},[22246],{"type":45,"value":8299},{"type":39,"tag":1072,"props":22248,"children":22249},{"style":1084},[22250],{"type":45,"value":17521},{"type":39,"tag":1072,"props":22252,"children":22253},{"class":1074,"line":9253},[22254,22258,22262,22267,22271,22275],{"type":39,"tag":1072,"props":22255,"children":22256},{"style":1195},[22257],{"type":45,"value":17611},{"type":39,"tag":1072,"props":22259,"children":22260},{"style":1195},[22261],{"type":45,"value":9143},{"type":39,"tag":1072,"props":22263,"children":22264},{"style":1090},[22265],{"type":45,"value":22266},"(order_date), ",{"type":39,"tag":1072,"props":22268,"children":22269},{"style":1096},[22270],{"type":45,"value":20932},{"type":39,"tag":1072,"props":22272,"children":22273},{"style":1090},[22274],{"type":45,"value":934},{"type":39,"tag":1072,"props":22276,"children":22277},{"style":1096},[22278],{"type":45,"value":20941},{"type":39,"tag":1072,"props":22280,"children":22281},{"class":1074,"line":20944},[22282],{"type":39,"tag":1072,"props":22283,"children":22284},{"style":1090},[22285],{"type":45,"value":8372},{"type":39,"tag":1072,"props":22287,"children":22288},{"class":1074,"line":20952},[22289],{"type":39,"tag":1072,"props":22290,"children":22291},{"style":1195},[22292],{"type":45,"value":7653},{"type":39,"tag":1072,"props":22294,"children":22295},{"class":1074,"line":20960},[22296,22300,22304,22308,22312],{"type":39,"tag":1072,"props":22297,"children":22298},{"style":1096},[22299],{"type":45,"value":17659},{"type":39,"tag":1072,"props":22301,"children":22302},{"style":1090},[22303],{"type":45,"value":934},{"type":39,"tag":1072,"props":22305,"children":22306},{"style":1096},[22307],{"type":45,"value":20974},{"type":39,"tag":1072,"props":22309,"children":22310},{"style":1195},[22311],{"type":45,"value":7676},{"type":39,"tag":1072,"props":22313,"children":22314},{"style":1090},[22315],{"type":45,"value":20983},{"type":39,"tag":1072,"props":22317,"children":22318},{"class":1074,"line":20986},[22319,22323,22327,22331],{"type":39,"tag":1072,"props":22320,"children":22321},{"style":1096},[22322],{"type":45,"value":17659},{"type":39,"tag":1072,"props":22324,"children":22325},{"style":1090},[22326],{"type":45,"value":934},{"type":39,"tag":1072,"props":22328,"children":22329},{"style":1096},[22330],{"type":45,"value":20755},{"type":39,"tag":1072,"props":22332,"children":22333},{"style":1090},[22334],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22336,"children":22337},{"class":1074,"line":21006},[22338,22342,22346,22350],{"type":39,"tag":1072,"props":22339,"children":22340},{"style":1096},[22341],{"type":45,"value":17659},{"type":39,"tag":1072,"props":22343,"children":22344},{"style":1090},[22345],{"type":45,"value":934},{"type":39,"tag":1072,"props":22347,"children":22348},{"style":1096},[22349],{"type":45,"value":21020},{"type":39,"tag":1072,"props":22351,"children":22352},{"style":1090},[22353],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22355,"children":22356},{"class":1074,"line":21027},[22357,22361,22365,22369],{"type":39,"tag":1072,"props":22358,"children":22359},{"style":1096},[22360],{"type":45,"value":17659},{"type":39,"tag":1072,"props":22362,"children":22363},{"style":1090},[22364],{"type":45,"value":934},{"type":39,"tag":1072,"props":22366,"children":22367},{"style":1096},[22368],{"type":45,"value":21041},{"type":39,"tag":1072,"props":22370,"children":22371},{"style":1090},[22372],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22374,"children":22375},{"class":1074,"line":21048},[22376,22380,22384,22388],{"type":39,"tag":1072,"props":22377,"children":22378},{"style":1096},[22379],{"type":45,"value":17659},{"type":39,"tag":1072,"props":22381,"children":22382},{"style":1090},[22383],{"type":45,"value":934},{"type":39,"tag":1072,"props":22385,"children":22386},{"style":1096},[22387],{"type":45,"value":21062},{"type":39,"tag":1072,"props":22389,"children":22390},{"style":1090},[22391],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22393,"children":22394},{"class":1074,"line":21069},[22395,22399,22403,22407],{"type":39,"tag":1072,"props":22396,"children":22397},{"style":1096},[22398],{"type":45,"value":17659},{"type":39,"tag":1072,"props":22400,"children":22401},{"style":1090},[22402],{"type":45,"value":934},{"type":39,"tag":1072,"props":22404,"children":22405},{"style":1096},[22406],{"type":45,"value":21083},{"type":39,"tag":1072,"props":22408,"children":22409},{"style":1090},[22410],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22412,"children":22413},{"class":1074,"line":21090},[22414,22418,22422,22426],{"type":39,"tag":1072,"props":22415,"children":22416},{"style":1096},[22417],{"type":45,"value":21096},{"type":39,"tag":1072,"props":22419,"children":22420},{"style":1090},[22421],{"type":45,"value":934},{"type":39,"tag":1072,"props":22423,"children":22424},{"style":1096},[22425],{"type":45,"value":13288},{"type":39,"tag":1072,"props":22427,"children":22428},{"style":1090},[22429],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22431,"children":22432},{"class":1074,"line":21111},[22433,22437,22441,22445],{"type":39,"tag":1072,"props":22434,"children":22435},{"style":1096},[22436],{"type":45,"value":21096},{"type":39,"tag":1072,"props":22438,"children":22439},{"style":1090},[22440],{"type":45,"value":934},{"type":39,"tag":1072,"props":22442,"children":22443},{"style":1096},[22444],{"type":45,"value":13313},{"type":39,"tag":1072,"props":22446,"children":22447},{"style":1090},[22448],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22450,"children":22451},{"class":1074,"line":21131},[22452,22456,22460,22464],{"type":39,"tag":1072,"props":22453,"children":22454},{"style":1096},[22455],{"type":45,"value":21137},{"type":39,"tag":1072,"props":22457,"children":22458},{"style":1090},[22459],{"type":45,"value":934},{"type":39,"tag":1072,"props":22461,"children":22462},{"style":1096},[22463],{"type":45,"value":21146},{"type":39,"tag":1072,"props":22465,"children":22466},{"style":1090},[22467],{"type":45,"value":7703},{"type":39,"tag":1072,"props":22469,"children":22470},{"class":1074,"line":21153},[22471,22475,22479,22483,22487,22491,22495,22499,22503,22507,22511,22515,22519,22523,22527,22531,22535,22539],{"type":39,"tag":1072,"props":22472,"children":22473},{"style":1096},[22474],{"type":45,"value":15571},{"type":39,"tag":1072,"props":22476,"children":22477},{"style":1090},[22478],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22480,"children":22481},{"style":1096},[22482],{"type":45,"value":21167},{"type":39,"tag":1072,"props":22484,"children":22485},{"style":1090},[22486],{"type":45,"value":934},{"type":39,"tag":1072,"props":22488,"children":22489},{"style":1096},[22490],{"type":45,"value":21146},{"type":39,"tag":1072,"props":22492,"children":22493},{"style":1195},[22494],{"type":45,"value":8143},{"type":39,"tag":1072,"props":22496,"children":22497},{"style":1096},[22498],{"type":45,"value":16167},{"type":39,"tag":1072,"props":22500,"children":22501},{"style":1090},[22502],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22504,"children":22505},{"style":1096},[22506],{"type":45,"value":17806},{"type":39,"tag":1072,"props":22508,"children":22509},{"style":1090},[22510],{"type":45,"value":934},{"type":39,"tag":1072,"props":22512,"children":22513},{"style":1096},[22514],{"type":45,"value":21020},{"type":39,"tag":1072,"props":22516,"children":22517},{"style":1090},[22518],{"type":45,"value":978},{"type":39,"tag":1072,"props":22520,"children":22521},{"style":1096},[22522],{"type":45,"value":8157},{"type":39,"tag":1072,"props":22524,"children":22525},{"style":1090},[22526],{"type":45,"value":15600},{"type":39,"tag":1072,"props":22528,"children":22529},{"style":1096},[22530],{"type":45,"value":7856},{"type":39,"tag":1072,"props":22532,"children":22533},{"style":1090},[22534],{"type":45,"value":8344},{"type":39,"tag":1072,"props":22536,"children":22537},{"style":1195},[22538],{"type":45,"value":7866},{"type":39,"tag":1072,"props":22540,"children":22541},{"style":1090},[22542],{"type":45,"value":21228},{"type":39,"tag":1072,"props":22544,"children":22545},{"class":1074,"line":21231},[22546,22550,22554,22558,22562,22566,22570,22574,22578,22582,22586,22590,22594,22598,22602,22606,22610,22614],{"type":39,"tag":1072,"props":22547,"children":22548},{"style":1096},[22549],{"type":45,"value":15571},{"type":39,"tag":1072,"props":22551,"children":22552},{"style":1090},[22553],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22555,"children":22556},{"style":1096},[22557],{"type":45,"value":17806},{"type":39,"tag":1072,"props":22559,"children":22560},{"style":1090},[22561],{"type":45,"value":934},{"type":39,"tag":1072,"props":22563,"children":22564},{"style":1096},[22565],{"type":45,"value":21020},{"type":39,"tag":1072,"props":22567,"children":22568},{"style":1195},[22569],{"type":45,"value":8143},{"type":39,"tag":1072,"props":22571,"children":22572},{"style":1096},[22573],{"type":45,"value":16167},{"type":39,"tag":1072,"props":22575,"children":22576},{"style":1090},[22577],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22579,"children":22580},{"style":1096},[22581],{"type":45,"value":17806},{"type":39,"tag":1072,"props":22583,"children":22584},{"style":1090},[22585],{"type":45,"value":934},{"type":39,"tag":1072,"props":22587,"children":22588},{"style":1096},[22589],{"type":45,"value":21083},{"type":39,"tag":1072,"props":22591,"children":22592},{"style":1090},[22593],{"type":45,"value":978},{"type":39,"tag":1072,"props":22595,"children":22596},{"style":1096},[22597],{"type":45,"value":8157},{"type":39,"tag":1072,"props":22599,"children":22600},{"style":1090},[22601],{"type":45,"value":15600},{"type":39,"tag":1072,"props":22603,"children":22604},{"style":1096},[22605],{"type":45,"value":7856},{"type":39,"tag":1072,"props":22607,"children":22608},{"style":1090},[22609],{"type":45,"value":8344},{"type":39,"tag":1072,"props":22611,"children":22612},{"style":1195},[22613],{"type":45,"value":7866},{"type":39,"tag":1072,"props":22615,"children":22616},{"style":1090},[22617],{"type":45,"value":21305},{"type":39,"tag":1072,"props":22619,"children":22620},{"class":1074,"line":21308},[22621,22625,22629,22633,22637,22641,22645,22649,22653,22657,22661,22665,22669,22673,22677,22681,22685,22689,22693,22697,22701],{"type":39,"tag":1072,"props":22622,"children":22623},{"style":1096},[22624],{"type":45,"value":15571},{"type":39,"tag":1072,"props":22626,"children":22627},{"style":1090},[22628],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22630,"children":22631},{"style":1096},[22632],{"type":45,"value":17806},{"type":39,"tag":1072,"props":22634,"children":22635},{"style":1090},[22636],{"type":45,"value":934},{"type":39,"tag":1072,"props":22638,"children":22639},{"style":1096},[22640],{"type":45,"value":21062},{"type":39,"tag":1072,"props":22642,"children":22643},{"style":1195},[22644],{"type":45,"value":8143},{"type":39,"tag":1072,"props":22646,"children":22647},{"style":1096},[22648],{"type":45,"value":16167},{"type":39,"tag":1072,"props":22650,"children":22651},{"style":1090},[22652],{"type":45,"value":7815},{"type":39,"tag":1072,"props":22654,"children":22655},{"style":1096},[22656],{"type":45,"value":17806},{"type":39,"tag":1072,"props":22658,"children":22659},{"style":1090},[22660],{"type":45,"value":934},{"type":39,"tag":1072,"props":22662,"children":22663},{"style":1096},[22664],{"type":45,"value":21041},{"type":39,"tag":1072,"props":22666,"children":22667},{"style":1090},[22668],{"type":45,"value":978},{"type":39,"tag":1072,"props":22670,"children":22671},{"style":1096},[22672],{"type":45,"value":8157},{"type":39,"tag":1072,"props":22674,"children":22675},{"style":1090},[22676],{"type":45,"value":8344},{"type":39,"tag":1072,"props":22678,"children":22679},{"style":1195},[22680],{"type":45,"value":13780},{"type":39,"tag":1072,"props":22682,"children":22683},{"style":1096},[22684],{"type":45,"value":8148},{"type":39,"tag":1072,"props":22686,"children":22687},{"style":1090},[22688],{"type":45,"value":978},{"type":39,"tag":1072,"props":22690,"children":22691},{"style":1096},[22692],{"type":45,"value":7856},{"type":39,"tag":1072,"props":22694,"children":22695},{"style":1090},[22696],{"type":45,"value":8344},{"type":39,"tag":1072,"props":22698,"children":22699},{"style":1195},[22700],{"type":45,"value":7866},{"type":39,"tag":1072,"props":22702,"children":22703},{"style":1090},[22704],{"type":45,"value":21394},{"type":39,"tag":1072,"props":22706,"children":22707},{"class":1074,"line":21397},[22708,22712],{"type":39,"tag":1072,"props":22709,"children":22710},{"style":1195},[22711],{"type":45,"value":8227},{"type":39,"tag":1072,"props":22713,"children":22714},{"style":1090},[22715],{"type":45,"value":21407},{"type":39,"tag":1072,"props":22717,"children":22718},{"class":1074,"line":21410},[22719,22723],{"type":39,"tag":1072,"props":22720,"children":22721},{"style":1195},[22722],{"type":45,"value":7335},{"type":39,"tag":1072,"props":22724,"children":22725},{"style":1090},[22726],{"type":45,"value":21420},{"type":39,"tag":1072,"props":22728,"children":22729},{"class":1074,"line":21423},[22730,22734,22738,22742,22746,22750,22754,22758],{"type":39,"tag":1072,"props":22731,"children":22732},{"style":1195},[22733],{"type":45,"value":8281},{"type":39,"tag":1072,"props":22735,"children":22736},{"style":1096},[22737],{"type":45,"value":18010},{"type":39,"tag":1072,"props":22739,"children":22740},{"style":1090},[22741],{"type":45,"value":934},{"type":39,"tag":1072,"props":22743,"children":22744},{"style":1096},[22745],{"type":45,"value":20974},{"type":39,"tag":1072,"props":22747,"children":22748},{"style":1195},[22749],{"type":45,"value":8299},{"type":39,"tag":1072,"props":22751,"children":22752},{"style":1096},[22753],{"type":45,"value":21449},{"type":39,"tag":1072,"props":22755,"children":22756},{"style":1090},[22757],{"type":45,"value":934},{"type":39,"tag":1072,"props":22759,"children":22760},{"style":1096},[22761],{"type":45,"value":20888},{"type":39,"tag":1072,"props":22763,"children":22764},{"class":1074,"line":21460},[22765,22769,22773,22777,22781,22785,22789,22793],{"type":39,"tag":1072,"props":22766,"children":22767},{"style":1195},[22768],{"type":45,"value":8322},{"type":39,"tag":1072,"props":22770,"children":22771},{"style":1096},[22772],{"type":45,"value":18010},{"type":39,"tag":1072,"props":22774,"children":22775},{"style":1090},[22776],{"type":45,"value":934},{"type":39,"tag":1072,"props":22778,"children":22779},{"style":1096},[22780],{"type":45,"value":20755},{"type":39,"tag":1072,"props":22782,"children":22783},{"style":1195},[22784],{"type":45,"value":8299},{"type":39,"tag":1072,"props":22786,"children":22787},{"style":1096},[22788],{"type":45,"value":21449},{"type":39,"tag":1072,"props":22790,"children":22791},{"style":1090},[22792],{"type":45,"value":934},{"type":39,"tag":1072,"props":22794,"children":22795},{"style":1096},[22796],{"type":45,"value":20941},{"type":39,"tag":1072,"props":22798,"children":22799},{"class":1074,"line":21496},[22800,22804],{"type":39,"tag":1072,"props":22801,"children":22802},{"style":1195},[22803],{"type":45,"value":7335},{"type":39,"tag":1072,"props":22805,"children":22806},{"style":1090},[22807],{"type":45,"value":21506},{"type":39,"tag":1072,"props":22809,"children":22810},{"class":1074,"line":21509},[22811,22815,22819,22823,22827,22831,22835,22839],{"type":39,"tag":1072,"props":22812,"children":22813},{"style":1195},[22814],{"type":45,"value":8281},{"type":39,"tag":1072,"props":22816,"children":22817},{"style":1096},[22818],{"type":45,"value":18010},{"type":39,"tag":1072,"props":22820,"children":22821},{"style":1090},[22822],{"type":45,"value":934},{"type":39,"tag":1072,"props":22824,"children":22825},{"style":1096},[22826],{"type":45,"value":20974},{"type":39,"tag":1072,"props":22828,"children":22829},{"style":1195},[22830],{"type":45,"value":8299},{"type":39,"tag":1072,"props":22832,"children":22833},{"style":1096},[22834],{"type":45,"value":21535},{"type":39,"tag":1072,"props":22836,"children":22837},{"style":1090},[22838],{"type":45,"value":934},{"type":39,"tag":1072,"props":22840,"children":22841},{"style":1096},[22842],{"type":45,"value":21544},{"type":39,"tag":1072,"props":22844,"children":22845},{"class":1074,"line":21547},[22846,22850,22854,22858,22862,22866,22870,22874],{"type":39,"tag":1072,"props":22847,"children":22848},{"style":1195},[22849],{"type":45,"value":8322},{"type":39,"tag":1072,"props":22851,"children":22852},{"style":1096},[22853],{"type":45,"value":18010},{"type":39,"tag":1072,"props":22855,"children":22856},{"style":1090},[22857],{"type":45,"value":934},{"type":39,"tag":1072,"props":22859,"children":22860},{"style":1096},[22861],{"type":45,"value":20755},{"type":39,"tag":1072,"props":22863,"children":22864},{"style":1195},[22865],{"type":45,"value":8299},{"type":39,"tag":1072,"props":22867,"children":22868},{"style":1096},[22869],{"type":45,"value":21535},{"type":39,"tag":1072,"props":22871,"children":22872},{"style":1090},[22873],{"type":45,"value":934},{"type":39,"tag":1072,"props":22875,"children":22876},{"style":1096},[22877],{"type":45,"value":20941},{"type":39,"tag":1072,"props":22879,"children":22880},{"class":1074,"line":21583},[22881,22885,22889,22893,22897,22901,22905,22909,22913,22917],{"type":39,"tag":1072,"props":22882,"children":22883},{"style":1195},[22884],{"type":45,"value":15720},{"type":39,"tag":1072,"props":22886,"children":22887},{"style":1096},[22888],{"type":45,"value":18010},{"type":39,"tag":1072,"props":22890,"children":22891},{"style":1090},[22892],{"type":45,"value":934},{"type":39,"tag":1072,"props":22894,"children":22895},{"style":1096},[22896],{"type":45,"value":20974},{"type":39,"tag":1072,"props":22898,"children":22899},{"style":1195},[22900],{"type":45,"value":9324},{"type":39,"tag":1072,"props":22902,"children":22903},{"style":1090},[22904],{"type":45,"value":978},{"type":39,"tag":1072,"props":22906,"children":22907},{"style":1096},[22908],{"type":45,"value":17806},{"type":39,"tag":1072,"props":22910,"children":22911},{"style":1090},[22912],{"type":45,"value":934},{"type":39,"tag":1072,"props":22914,"children":22915},{"style":1096},[22916],{"type":45,"value":21020},{"type":39,"tag":1072,"props":22918,"children":22919},{"style":1195},[22920],{"type":45,"value":21625},{"type":39,"tag":1248,"props":22922,"children":22923},{"v-slot:snowflake":7},[22924],{"type":39,"tag":1062,"props":22925,"children":22927},{"className":7433,"code":22926,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_marketing_roi\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - staging.stg_marketing_spend\n  - staging.stg_web_sessions\n  - staging.stg_orders\ncolumns:\n  - name: channel\n    type: varchar\n    checks:\n      - name: not_null\n@bruin *\u002F\n\nWITH channel_spend AS (\n    SELECT\n        spend_date,\n        channel,\n        sum(spend) AS total_spend,\n        sum(impressions) AS total_impressions,\n        sum(clicks) AS total_clicks,\n        sum(conversions) AS total_conversions\n    FROM staging.stg_marketing_spend\n    GROUP BY spend_date, channel\n),\nchannel_sessions AS (\n    SELECT\n        session_date,\n        channel,\n        sum(total_sessions) AS sessions,\n        sum(new_users) AS new_users,\n        sum(purchase_events) AS purchases\n    FROM staging.stg_web_sessions\n    GROUP BY session_date, channel\n),\nchannel_revenue AS (\n    SELECT\n        order_date::DATE AS order_date,\n        ws.channel,\n        sum(o.order_total) AS attributed_revenue\n    FROM staging.stg_orders o\n    INNER JOIN staging.stg_web_sessions ws\n        ON order_date::DATE = ws.session_date\n    WHERE o.payment_status = 'paid'\n    GROUP BY order_date::DATE, ws.channel\n)\nSELECT\n    cs.spend_date AS report_date,\n    cs.channel,\n    cs.total_spend,\n    cs.total_impressions,\n    cs.total_clicks,\n    cs.total_conversions,\n    sess.sessions,\n    sess.new_users,\n    cr.attributed_revenue,\n    round(cr.attributed_revenue \u002F NULLIF(cs.total_spend, 0), 2) AS roas,\n    round(cs.total_spend \u002F NULLIF(cs.total_conversions, 0), 2) AS cost_per_acquisition,\n    round(cs.total_clicks \u002F NULLIF(cs.total_impressions, 0) * 100, 2) AS click_through_rate\nFROM channel_spend cs\nLEFT JOIN channel_sessions sess\n    ON cs.spend_date = sess.session_date\n    AND cs.channel = sess.channel\nLEFT JOIN channel_revenue cr\n    ON cs.spend_date = cr.order_date\n    AND cs.channel = cr.channel\nORDER BY cs.spend_date DESC, cs.total_spend DESC\n",[22928],{"type":39,"tag":70,"props":22929,"children":22930},{"__ignoreMap":7},[22931,22938,22945,22952,22959,22966,22973,22980,22987,22994,23001,23008,23015,23022,23029,23036,23043,23062,23069,23076,23083,23102,23121,23140,23159,23178,23189,23196,23211,23218,23225,23232,23255,23274,23293,23312,23323,23330,23345,23352,23372,23391,23426,23449,23472,23503,23530,23561,23568,23575,23598,23617,23636,23655,23674,23693,23712,23731,23750,23825,23900,23987,23998,24009,24044,24079,24090,24125,24160],{"type":39,"tag":1072,"props":22932,"children":22933},{"class":1074,"line":868},[22934],{"type":39,"tag":1072,"props":22935,"children":22936},{"style":7445},[22937],{"type":45,"value":7448},{"type":39,"tag":1072,"props":22939,"children":22940},{"class":1074,"line":476},[22941],{"type":39,"tag":1072,"props":22942,"children":22943},{"style":7445},[22944],{"type":45,"value":20288},{"type":39,"tag":1072,"props":22946,"children":22947},{"class":1074,"line":483},[22948],{"type":39,"tag":1072,"props":22949,"children":22950},{"style":7445},[22951],{"type":45,"value":7464},{"type":39,"tag":1072,"props":22953,"children":22954},{"class":1074,"line":1626},[22955],{"type":39,"tag":1072,"props":22956,"children":22957},{"style":7445},[22958],{"type":45,"value":7472},{"type":39,"tag":1072,"props":22960,"children":22961},{"class":1074,"line":11},[22962],{"type":39,"tag":1072,"props":22963,"children":22964},{"style":7445},[22965],{"type":45,"value":7480},{"type":39,"tag":1072,"props":22967,"children":22968},{"class":1074,"line":20},[22969],{"type":39,"tag":1072,"props":22970,"children":22971},{"style":7445},[22972],{"type":45,"value":7488},{"type":39,"tag":1072,"props":22974,"children":22975},{"class":1074,"line":1679},[22976],{"type":39,"tag":1072,"props":22977,"children":22978},{"style":7445},[22979],{"type":45,"value":20324},{"type":39,"tag":1072,"props":22981,"children":22982},{"class":1074,"line":860},[22983],{"type":39,"tag":1072,"props":22984,"children":22985},{"style":7445},[22986],{"type":45,"value":20332},{"type":39,"tag":1072,"props":22988,"children":22989},{"class":1074,"line":2907},[22990],{"type":39,"tag":1072,"props":22991,"children":22992},{"style":7445},[22993],{"type":45,"value":15238},{"type":39,"tag":1072,"props":22995,"children":22996},{"class":1074,"line":7515},[22997],{"type":39,"tag":1072,"props":22998,"children":22999},{"style":7445},[23000],{"type":45,"value":7512},{"type":39,"tag":1072,"props":23002,"children":23003},{"class":1074,"line":7524},[23004],{"type":39,"tag":1072,"props":23005,"children":23006},{"style":7445},[23007],{"type":45,"value":20354},{"type":39,"tag":1072,"props":23009,"children":23010},{"class":1074,"line":7533},[23011],{"type":39,"tag":1072,"props":23012,"children":23013},{"style":7445},[23014],{"type":45,"value":7530},{"type":39,"tag":1072,"props":23016,"children":23017},{"class":1074,"line":7542},[23018],{"type":39,"tag":1072,"props":23019,"children":23020},{"style":7445},[23021],{"type":45,"value":7539},{"type":39,"tag":1072,"props":23023,"children":23024},{"class":1074,"line":7551},[23025],{"type":39,"tag":1072,"props":23026,"children":23027},{"style":7445},[23028],{"type":45,"value":7548},{"type":39,"tag":1072,"props":23030,"children":23031},{"class":1074,"line":2380},[23032],{"type":39,"tag":1072,"props":23033,"children":23034},{"style":7445},[23035],{"type":45,"value":7635},{"type":39,"tag":1072,"props":23037,"children":23038},{"class":1074,"line":7568},[23039],{"type":39,"tag":1072,"props":23040,"children":23041},{"emptyLinePlaceholder":19},[23042],{"type":45,"value":7644},{"type":39,"tag":1072,"props":23044,"children":23045},{"class":1074,"line":7577},[23046,23050,23054,23058],{"type":39,"tag":1072,"props":23047,"children":23048},{"style":1195},[23049],{"type":45,"value":17279},{"type":39,"tag":1072,"props":23051,"children":23052},{"style":1090},[23053],{"type":45,"value":20401},{"type":39,"tag":1072,"props":23055,"children":23056},{"style":1195},[23057],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23059,"children":23060},{"style":1090},[23061],{"type":45,"value":17293},{"type":39,"tag":1072,"props":23063,"children":23064},{"class":1074,"line":7585},[23065],{"type":39,"tag":1072,"props":23066,"children":23067},{"style":1195},[23068],{"type":45,"value":17301},{"type":39,"tag":1072,"props":23070,"children":23071},{"class":1074,"line":7593},[23072],{"type":39,"tag":1072,"props":23073,"children":23074},{"style":1090},[23075],{"type":45,"value":20424},{"type":39,"tag":1072,"props":23077,"children":23078},{"class":1074,"line":7602},[23079],{"type":39,"tag":1072,"props":23080,"children":23081},{"style":1090},[23082],{"type":45,"value":20432},{"type":39,"tag":1072,"props":23084,"children":23085},{"class":1074,"line":7611},[23086,23090,23094,23098],{"type":39,"tag":1072,"props":23087,"children":23088},{"style":1096},[23089],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23091,"children":23092},{"style":1090},[23093],{"type":45,"value":20445},{"type":39,"tag":1072,"props":23095,"children":23096},{"style":1195},[23097],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23099,"children":23100},{"style":1090},[23101],{"type":45,"value":20454},{"type":39,"tag":1072,"props":23103,"children":23104},{"class":1074,"line":7620},[23105,23109,23113,23117],{"type":39,"tag":1072,"props":23106,"children":23107},{"style":1096},[23108],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23110,"children":23111},{"style":1090},[23112],{"type":45,"value":20466},{"type":39,"tag":1072,"props":23114,"children":23115},{"style":1195},[23116],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23118,"children":23119},{"style":1090},[23120],{"type":45,"value":20475},{"type":39,"tag":1072,"props":23122,"children":23123},{"class":1074,"line":7629},[23124,23128,23132,23136],{"type":39,"tag":1072,"props":23125,"children":23126},{"style":1096},[23127],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23129,"children":23130},{"style":1090},[23131],{"type":45,"value":20487},{"type":39,"tag":1072,"props":23133,"children":23134},{"style":1195},[23135],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23137,"children":23138},{"style":1090},[23139],{"type":45,"value":20496},{"type":39,"tag":1072,"props":23141,"children":23142},{"class":1074,"line":7638},[23143,23147,23151,23155],{"type":39,"tag":1072,"props":23144,"children":23145},{"style":1096},[23146],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23148,"children":23149},{"style":1090},[23150],{"type":45,"value":20508},{"type":39,"tag":1072,"props":23152,"children":23153},{"style":1195},[23154],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23156,"children":23157},{"style":1090},[23158],{"type":45,"value":20517},{"type":39,"tag":1072,"props":23160,"children":23161},{"class":1074,"line":7647},[23162,23166,23170,23174],{"type":39,"tag":1072,"props":23163,"children":23164},{"style":1195},[23165],{"type":45,"value":17413},{"type":39,"tag":1072,"props":23167,"children":23168},{"style":1096},[23169],{"type":45,"value":15691},{"type":39,"tag":1072,"props":23171,"children":23172},{"style":1090},[23173],{"type":45,"value":934},{"type":39,"tag":1072,"props":23175,"children":23176},{"style":1096},[23177],{"type":45,"value":20537},{"type":39,"tag":1072,"props":23179,"children":23180},{"class":1074,"line":7656},[23181,23185],{"type":39,"tag":1072,"props":23182,"children":23183},{"style":1195},[23184],{"type":45,"value":17611},{"type":39,"tag":1072,"props":23186,"children":23187},{"style":1090},[23188],{"type":45,"value":20549},{"type":39,"tag":1072,"props":23190,"children":23191},{"class":1074,"line":7684},[23192],{"type":39,"tag":1072,"props":23193,"children":23194},{"style":1090},[23195],{"type":45,"value":17529},{"type":39,"tag":1072,"props":23197,"children":23198},{"class":1074,"line":7706},[23199,23203,23207],{"type":39,"tag":1072,"props":23200,"children":23201},{"style":1090},[23202],{"type":45,"value":20564},{"type":39,"tag":1072,"props":23204,"children":23205},{"style":1195},[23206],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23208,"children":23209},{"style":1090},[23210],{"type":45,"value":17293},{"type":39,"tag":1072,"props":23212,"children":23213},{"class":1074,"line":7732},[23214],{"type":39,"tag":1072,"props":23215,"children":23216},{"style":1195},[23217],{"type":45,"value":17301},{"type":39,"tag":1072,"props":23219,"children":23220},{"class":1074,"line":7758},[23221],{"type":39,"tag":1072,"props":23222,"children":23223},{"style":1090},[23224],{"type":45,"value":20587},{"type":39,"tag":1072,"props":23226,"children":23227},{"class":1074,"line":7783},[23228],{"type":39,"tag":1072,"props":23229,"children":23230},{"style":1090},[23231],{"type":45,"value":20432},{"type":39,"tag":1072,"props":23233,"children":23234},{"class":1074,"line":7804},[23235,23239,23243,23247,23251],{"type":39,"tag":1072,"props":23236,"children":23237},{"style":1096},[23238],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23240,"children":23241},{"style":1090},[23242],{"type":45,"value":20606},{"type":39,"tag":1072,"props":23244,"children":23245},{"style":1195},[23246],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23248,"children":23249},{"style":1195},[23250],{"type":45,"value":20615},{"type":39,"tag":1072,"props":23252,"children":23253},{"style":1090},[23254],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23256,"children":23257},{"class":1074,"line":7874},[23258,23262,23266,23270],{"type":39,"tag":1072,"props":23259,"children":23260},{"style":1096},[23261],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23263,"children":23264},{"style":1090},[23265],{"type":45,"value":20631},{"type":39,"tag":1072,"props":23267,"children":23268},{"style":1195},[23269],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23271,"children":23272},{"style":1090},[23273],{"type":45,"value":13862},{"type":39,"tag":1072,"props":23275,"children":23276},{"class":1074,"line":7936},[23277,23281,23285,23289],{"type":39,"tag":1072,"props":23278,"children":23279},{"style":1096},[23280],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23282,"children":23283},{"style":1090},[23284],{"type":45,"value":20651},{"type":39,"tag":1072,"props":23286,"children":23287},{"style":1195},[23288],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23290,"children":23291},{"style":1090},[23292],{"type":45,"value":20660},{"type":39,"tag":1072,"props":23294,"children":23295},{"class":1074,"line":7998},[23296,23300,23304,23308],{"type":39,"tag":1072,"props":23297,"children":23298},{"style":1195},[23299],{"type":45,"value":17413},{"type":39,"tag":1072,"props":23301,"children":23302},{"style":1096},[23303],{"type":45,"value":15691},{"type":39,"tag":1072,"props":23305,"children":23306},{"style":1090},[23307],{"type":45,"value":934},{"type":39,"tag":1072,"props":23309,"children":23310},{"style":1096},[23311],{"type":45,"value":20680},{"type":39,"tag":1072,"props":23313,"children":23314},{"class":1074,"line":8060},[23315,23319],{"type":39,"tag":1072,"props":23316,"children":23317},{"style":1195},[23318],{"type":45,"value":17611},{"type":39,"tag":1072,"props":23320,"children":23321},{"style":1090},[23322],{"type":45,"value":20692},{"type":39,"tag":1072,"props":23324,"children":23325},{"class":1074,"line":8081},[23326],{"type":39,"tag":1072,"props":23327,"children":23328},{"style":1090},[23329],{"type":45,"value":17529},{"type":39,"tag":1072,"props":23331,"children":23332},{"class":1074,"line":8102},[23333,23337,23341],{"type":39,"tag":1072,"props":23334,"children":23335},{"style":1090},[23336],{"type":45,"value":20707},{"type":39,"tag":1072,"props":23338,"children":23339},{"style":1195},[23340],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23342,"children":23343},{"style":1090},[23344],{"type":45,"value":17293},{"type":39,"tag":1072,"props":23346,"children":23347},{"class":1074,"line":8123},[23348],{"type":39,"tag":1072,"props":23349,"children":23350},{"style":1195},[23351],{"type":45,"value":17301},{"type":39,"tag":1072,"props":23353,"children":23354},{"class":1074,"line":8169},[23355,23360,23364,23368],{"type":39,"tag":1072,"props":23356,"children":23357},{"style":1090},[23358],{"type":45,"value":23359},"        order_date::",{"type":39,"tag":1072,"props":23361,"children":23362},{"style":1195},[23363],{"type":45,"value":10140},{"type":39,"tag":1072,"props":23365,"children":23366},{"style":1195},[23367],{"type":45,"value":7676},{"type":39,"tag":1072,"props":23369,"children":23370},{"style":1090},[23371],{"type":45,"value":7755},{"type":39,"tag":1072,"props":23373,"children":23374},{"class":1074,"line":8195},[23375,23379,23383,23387],{"type":39,"tag":1072,"props":23376,"children":23377},{"style":1096},[23378],{"type":45,"value":20746},{"type":39,"tag":1072,"props":23380,"children":23381},{"style":1090},[23382],{"type":45,"value":934},{"type":39,"tag":1072,"props":23384,"children":23385},{"style":1096},[23386],{"type":45,"value":20755},{"type":39,"tag":1072,"props":23388,"children":23389},{"style":1090},[23390],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23392,"children":23393},{"class":1074,"line":8221},[23394,23398,23402,23406,23410,23414,23418,23422],{"type":39,"tag":1072,"props":23395,"children":23396},{"style":1096},[23397],{"type":45,"value":20440},{"type":39,"tag":1072,"props":23399,"children":23400},{"style":1090},[23401],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23403,"children":23404},{"style":1096},[23405],{"type":45,"value":7820},{"type":39,"tag":1072,"props":23407,"children":23408},{"style":1090},[23409],{"type":45,"value":934},{"type":39,"tag":1072,"props":23411,"children":23412},{"style":1096},[23413],{"type":45,"value":17879},{"type":39,"tag":1072,"props":23415,"children":23416},{"style":1090},[23417],{"type":45,"value":8344},{"type":39,"tag":1072,"props":23419,"children":23420},{"style":1195},[23421],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23423,"children":23424},{"style":1090},[23425],{"type":45,"value":20795},{"type":39,"tag":1072,"props":23427,"children":23428},{"class":1074,"line":8249},[23429,23433,23437,23441,23445],{"type":39,"tag":1072,"props":23430,"children":23431},{"style":1195},[23432],{"type":45,"value":17413},{"type":39,"tag":1072,"props":23434,"children":23435},{"style":1096},[23436],{"type":45,"value":15691},{"type":39,"tag":1072,"props":23438,"children":23439},{"style":1090},[23440],{"type":45,"value":934},{"type":39,"tag":1072,"props":23442,"children":23443},{"style":1096},[23444],{"type":45,"value":16313},{"type":39,"tag":1072,"props":23446,"children":23447},{"style":1090},[23448],{"type":45,"value":8246},{"type":39,"tag":1072,"props":23450,"children":23451},{"class":1074,"line":8275},[23452,23456,23460,23464,23468],{"type":39,"tag":1072,"props":23453,"children":23454},{"style":1195},[23455],{"type":45,"value":17437},{"type":39,"tag":1072,"props":23457,"children":23458},{"style":1096},[23459],{"type":45,"value":15691},{"type":39,"tag":1072,"props":23461,"children":23462},{"style":1090},[23463],{"type":45,"value":934},{"type":39,"tag":1072,"props":23465,"children":23466},{"style":1096},[23467],{"type":45,"value":20838},{"type":39,"tag":1072,"props":23469,"children":23470},{"style":1090},[23471],{"type":45,"value":20843},{"type":39,"tag":1072,"props":23473,"children":23474},{"class":1074,"line":8316},[23475,23479,23483,23487,23491,23495,23499],{"type":39,"tag":1072,"props":23476,"children":23477},{"style":1195},[23478],{"type":45,"value":17462},{"type":39,"tag":1072,"props":23480,"children":23481},{"style":1090},[23482],{"type":45,"value":17104},{"type":39,"tag":1072,"props":23484,"children":23485},{"style":1195},[23486],{"type":45,"value":10140},{"type":39,"tag":1072,"props":23488,"children":23489},{"style":1195},[23490],{"type":45,"value":8299},{"type":39,"tag":1072,"props":23492,"children":23493},{"style":1096},[23494],{"type":45,"value":20879},{"type":39,"tag":1072,"props":23496,"children":23497},{"style":1090},[23498],{"type":45,"value":934},{"type":39,"tag":1072,"props":23500,"children":23501},{"style":1096},[23502],{"type":45,"value":20888},{"type":39,"tag":1072,"props":23504,"children":23505},{"class":1074,"line":9194},[23506,23510,23514,23518,23522,23526],{"type":39,"tag":1072,"props":23507,"children":23508},{"style":1195},[23509],{"type":45,"value":17499},{"type":39,"tag":1072,"props":23511,"children":23512},{"style":1096},[23513],{"type":45,"value":8286},{"type":39,"tag":1072,"props":23515,"children":23516},{"style":1090},[23517],{"type":45,"value":934},{"type":39,"tag":1072,"props":23519,"children":23520},{"style":1096},[23521],{"type":45,"value":17512},{"type":39,"tag":1072,"props":23523,"children":23524},{"style":1195},[23525],{"type":45,"value":8299},{"type":39,"tag":1072,"props":23527,"children":23528},{"style":1084},[23529],{"type":45,"value":17521},{"type":39,"tag":1072,"props":23531,"children":23532},{"class":1074,"line":9253},[23533,23537,23541,23545,23549,23553,23557],{"type":39,"tag":1072,"props":23534,"children":23535},{"style":1195},[23536],{"type":45,"value":17611},{"type":39,"tag":1072,"props":23538,"children":23539},{"style":1090},[23540],{"type":45,"value":17104},{"type":39,"tag":1072,"props":23542,"children":23543},{"style":1195},[23544],{"type":45,"value":10140},{"type":39,"tag":1072,"props":23546,"children":23547},{"style":1090},[23548],{"type":45,"value":978},{"type":39,"tag":1072,"props":23550,"children":23551},{"style":1096},[23552],{"type":45,"value":20932},{"type":39,"tag":1072,"props":23554,"children":23555},{"style":1090},[23556],{"type":45,"value":934},{"type":39,"tag":1072,"props":23558,"children":23559},{"style":1096},[23560],{"type":45,"value":20941},{"type":39,"tag":1072,"props":23562,"children":23563},{"class":1074,"line":20944},[23564],{"type":39,"tag":1072,"props":23565,"children":23566},{"style":1090},[23567],{"type":45,"value":8372},{"type":39,"tag":1072,"props":23569,"children":23570},{"class":1074,"line":20952},[23571],{"type":39,"tag":1072,"props":23572,"children":23573},{"style":1195},[23574],{"type":45,"value":7653},{"type":39,"tag":1072,"props":23576,"children":23577},{"class":1074,"line":20960},[23578,23582,23586,23590,23594],{"type":39,"tag":1072,"props":23579,"children":23580},{"style":1096},[23581],{"type":45,"value":17659},{"type":39,"tag":1072,"props":23583,"children":23584},{"style":1090},[23585],{"type":45,"value":934},{"type":39,"tag":1072,"props":23587,"children":23588},{"style":1096},[23589],{"type":45,"value":20974},{"type":39,"tag":1072,"props":23591,"children":23592},{"style":1195},[23593],{"type":45,"value":7676},{"type":39,"tag":1072,"props":23595,"children":23596},{"style":1090},[23597],{"type":45,"value":20983},{"type":39,"tag":1072,"props":23599,"children":23600},{"class":1074,"line":20986},[23601,23605,23609,23613],{"type":39,"tag":1072,"props":23602,"children":23603},{"style":1096},[23604],{"type":45,"value":17659},{"type":39,"tag":1072,"props":23606,"children":23607},{"style":1090},[23608],{"type":45,"value":934},{"type":39,"tag":1072,"props":23610,"children":23611},{"style":1096},[23612],{"type":45,"value":20755},{"type":39,"tag":1072,"props":23614,"children":23615},{"style":1090},[23616],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23618,"children":23619},{"class":1074,"line":21006},[23620,23624,23628,23632],{"type":39,"tag":1072,"props":23621,"children":23622},{"style":1096},[23623],{"type":45,"value":17659},{"type":39,"tag":1072,"props":23625,"children":23626},{"style":1090},[23627],{"type":45,"value":934},{"type":39,"tag":1072,"props":23629,"children":23630},{"style":1096},[23631],{"type":45,"value":21020},{"type":39,"tag":1072,"props":23633,"children":23634},{"style":1090},[23635],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23637,"children":23638},{"class":1074,"line":21027},[23639,23643,23647,23651],{"type":39,"tag":1072,"props":23640,"children":23641},{"style":1096},[23642],{"type":45,"value":17659},{"type":39,"tag":1072,"props":23644,"children":23645},{"style":1090},[23646],{"type":45,"value":934},{"type":39,"tag":1072,"props":23648,"children":23649},{"style":1096},[23650],{"type":45,"value":21041},{"type":39,"tag":1072,"props":23652,"children":23653},{"style":1090},[23654],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23656,"children":23657},{"class":1074,"line":21048},[23658,23662,23666,23670],{"type":39,"tag":1072,"props":23659,"children":23660},{"style":1096},[23661],{"type":45,"value":17659},{"type":39,"tag":1072,"props":23663,"children":23664},{"style":1090},[23665],{"type":45,"value":934},{"type":39,"tag":1072,"props":23667,"children":23668},{"style":1096},[23669],{"type":45,"value":21062},{"type":39,"tag":1072,"props":23671,"children":23672},{"style":1090},[23673],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23675,"children":23676},{"class":1074,"line":21069},[23677,23681,23685,23689],{"type":39,"tag":1072,"props":23678,"children":23679},{"style":1096},[23680],{"type":45,"value":17659},{"type":39,"tag":1072,"props":23682,"children":23683},{"style":1090},[23684],{"type":45,"value":934},{"type":39,"tag":1072,"props":23686,"children":23687},{"style":1096},[23688],{"type":45,"value":21083},{"type":39,"tag":1072,"props":23690,"children":23691},{"style":1090},[23692],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23694,"children":23695},{"class":1074,"line":21090},[23696,23700,23704,23708],{"type":39,"tag":1072,"props":23697,"children":23698},{"style":1096},[23699],{"type":45,"value":21096},{"type":39,"tag":1072,"props":23701,"children":23702},{"style":1090},[23703],{"type":45,"value":934},{"type":39,"tag":1072,"props":23705,"children":23706},{"style":1096},[23707],{"type":45,"value":13288},{"type":39,"tag":1072,"props":23709,"children":23710},{"style":1090},[23711],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23713,"children":23714},{"class":1074,"line":21111},[23715,23719,23723,23727],{"type":39,"tag":1072,"props":23716,"children":23717},{"style":1096},[23718],{"type":45,"value":21096},{"type":39,"tag":1072,"props":23720,"children":23721},{"style":1090},[23722],{"type":45,"value":934},{"type":39,"tag":1072,"props":23724,"children":23725},{"style":1096},[23726],{"type":45,"value":13313},{"type":39,"tag":1072,"props":23728,"children":23729},{"style":1090},[23730],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23732,"children":23733},{"class":1074,"line":21131},[23734,23738,23742,23746],{"type":39,"tag":1072,"props":23735,"children":23736},{"style":1096},[23737],{"type":45,"value":21137},{"type":39,"tag":1072,"props":23739,"children":23740},{"style":1090},[23741],{"type":45,"value":934},{"type":39,"tag":1072,"props":23743,"children":23744},{"style":1096},[23745],{"type":45,"value":21146},{"type":39,"tag":1072,"props":23747,"children":23748},{"style":1090},[23749],{"type":45,"value":7703},{"type":39,"tag":1072,"props":23751,"children":23752},{"class":1074,"line":21153},[23753,23757,23761,23765,23769,23773,23777,23781,23785,23789,23793,23797,23801,23805,23809,23813,23817,23821],{"type":39,"tag":1072,"props":23754,"children":23755},{"style":1096},[23756],{"type":45,"value":15571},{"type":39,"tag":1072,"props":23758,"children":23759},{"style":1090},[23760],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23762,"children":23763},{"style":1096},[23764],{"type":45,"value":21167},{"type":39,"tag":1072,"props":23766,"children":23767},{"style":1090},[23768],{"type":45,"value":934},{"type":39,"tag":1072,"props":23770,"children":23771},{"style":1096},[23772],{"type":45,"value":21146},{"type":39,"tag":1072,"props":23774,"children":23775},{"style":1195},[23776],{"type":45,"value":8143},{"type":39,"tag":1072,"props":23778,"children":23779},{"style":1096},[23780],{"type":45,"value":16167},{"type":39,"tag":1072,"props":23782,"children":23783},{"style":1090},[23784],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23786,"children":23787},{"style":1096},[23788],{"type":45,"value":17806},{"type":39,"tag":1072,"props":23790,"children":23791},{"style":1090},[23792],{"type":45,"value":934},{"type":39,"tag":1072,"props":23794,"children":23795},{"style":1096},[23796],{"type":45,"value":21020},{"type":39,"tag":1072,"props":23798,"children":23799},{"style":1090},[23800],{"type":45,"value":978},{"type":39,"tag":1072,"props":23802,"children":23803},{"style":1096},[23804],{"type":45,"value":8157},{"type":39,"tag":1072,"props":23806,"children":23807},{"style":1090},[23808],{"type":45,"value":15600},{"type":39,"tag":1072,"props":23810,"children":23811},{"style":1096},[23812],{"type":45,"value":7856},{"type":39,"tag":1072,"props":23814,"children":23815},{"style":1090},[23816],{"type":45,"value":8344},{"type":39,"tag":1072,"props":23818,"children":23819},{"style":1195},[23820],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23822,"children":23823},{"style":1090},[23824],{"type":45,"value":21228},{"type":39,"tag":1072,"props":23826,"children":23827},{"class":1074,"line":21231},[23828,23832,23836,23840,23844,23848,23852,23856,23860,23864,23868,23872,23876,23880,23884,23888,23892,23896],{"type":39,"tag":1072,"props":23829,"children":23830},{"style":1096},[23831],{"type":45,"value":15571},{"type":39,"tag":1072,"props":23833,"children":23834},{"style":1090},[23835],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23837,"children":23838},{"style":1096},[23839],{"type":45,"value":17806},{"type":39,"tag":1072,"props":23841,"children":23842},{"style":1090},[23843],{"type":45,"value":934},{"type":39,"tag":1072,"props":23845,"children":23846},{"style":1096},[23847],{"type":45,"value":21020},{"type":39,"tag":1072,"props":23849,"children":23850},{"style":1195},[23851],{"type":45,"value":8143},{"type":39,"tag":1072,"props":23853,"children":23854},{"style":1096},[23855],{"type":45,"value":16167},{"type":39,"tag":1072,"props":23857,"children":23858},{"style":1090},[23859],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23861,"children":23862},{"style":1096},[23863],{"type":45,"value":17806},{"type":39,"tag":1072,"props":23865,"children":23866},{"style":1090},[23867],{"type":45,"value":934},{"type":39,"tag":1072,"props":23869,"children":23870},{"style":1096},[23871],{"type":45,"value":21083},{"type":39,"tag":1072,"props":23873,"children":23874},{"style":1090},[23875],{"type":45,"value":978},{"type":39,"tag":1072,"props":23877,"children":23878},{"style":1096},[23879],{"type":45,"value":8157},{"type":39,"tag":1072,"props":23881,"children":23882},{"style":1090},[23883],{"type":45,"value":15600},{"type":39,"tag":1072,"props":23885,"children":23886},{"style":1096},[23887],{"type":45,"value":7856},{"type":39,"tag":1072,"props":23889,"children":23890},{"style":1090},[23891],{"type":45,"value":8344},{"type":39,"tag":1072,"props":23893,"children":23894},{"style":1195},[23895],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23897,"children":23898},{"style":1090},[23899],{"type":45,"value":21305},{"type":39,"tag":1072,"props":23901,"children":23902},{"class":1074,"line":21308},[23903,23907,23911,23915,23919,23923,23927,23931,23935,23939,23943,23947,23951,23955,23959,23963,23967,23971,23975,23979,23983],{"type":39,"tag":1072,"props":23904,"children":23905},{"style":1096},[23906],{"type":45,"value":15571},{"type":39,"tag":1072,"props":23908,"children":23909},{"style":1090},[23910],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23912,"children":23913},{"style":1096},[23914],{"type":45,"value":17806},{"type":39,"tag":1072,"props":23916,"children":23917},{"style":1090},[23918],{"type":45,"value":934},{"type":39,"tag":1072,"props":23920,"children":23921},{"style":1096},[23922],{"type":45,"value":21062},{"type":39,"tag":1072,"props":23924,"children":23925},{"style":1195},[23926],{"type":45,"value":8143},{"type":39,"tag":1072,"props":23928,"children":23929},{"style":1096},[23930],{"type":45,"value":16167},{"type":39,"tag":1072,"props":23932,"children":23933},{"style":1090},[23934],{"type":45,"value":7815},{"type":39,"tag":1072,"props":23936,"children":23937},{"style":1096},[23938],{"type":45,"value":17806},{"type":39,"tag":1072,"props":23940,"children":23941},{"style":1090},[23942],{"type":45,"value":934},{"type":39,"tag":1072,"props":23944,"children":23945},{"style":1096},[23946],{"type":45,"value":21041},{"type":39,"tag":1072,"props":23948,"children":23949},{"style":1090},[23950],{"type":45,"value":978},{"type":39,"tag":1072,"props":23952,"children":23953},{"style":1096},[23954],{"type":45,"value":8157},{"type":39,"tag":1072,"props":23956,"children":23957},{"style":1090},[23958],{"type":45,"value":8344},{"type":39,"tag":1072,"props":23960,"children":23961},{"style":1195},[23962],{"type":45,"value":13780},{"type":39,"tag":1072,"props":23964,"children":23965},{"style":1096},[23966],{"type":45,"value":8148},{"type":39,"tag":1072,"props":23968,"children":23969},{"style":1090},[23970],{"type":45,"value":978},{"type":39,"tag":1072,"props":23972,"children":23973},{"style":1096},[23974],{"type":45,"value":7856},{"type":39,"tag":1072,"props":23976,"children":23977},{"style":1090},[23978],{"type":45,"value":8344},{"type":39,"tag":1072,"props":23980,"children":23981},{"style":1195},[23982],{"type":45,"value":7866},{"type":39,"tag":1072,"props":23984,"children":23985},{"style":1090},[23986],{"type":45,"value":21394},{"type":39,"tag":1072,"props":23988,"children":23989},{"class":1074,"line":21397},[23990,23994],{"type":39,"tag":1072,"props":23991,"children":23992},{"style":1195},[23993],{"type":45,"value":8227},{"type":39,"tag":1072,"props":23995,"children":23996},{"style":1090},[23997],{"type":45,"value":21407},{"type":39,"tag":1072,"props":23999,"children":24000},{"class":1074,"line":21410},[24001,24005],{"type":39,"tag":1072,"props":24002,"children":24003},{"style":1195},[24004],{"type":45,"value":7335},{"type":39,"tag":1072,"props":24006,"children":24007},{"style":1090},[24008],{"type":45,"value":21420},{"type":39,"tag":1072,"props":24010,"children":24011},{"class":1074,"line":21423},[24012,24016,24020,24024,24028,24032,24036,24040],{"type":39,"tag":1072,"props":24013,"children":24014},{"style":1195},[24015],{"type":45,"value":8281},{"type":39,"tag":1072,"props":24017,"children":24018},{"style":1096},[24019],{"type":45,"value":18010},{"type":39,"tag":1072,"props":24021,"children":24022},{"style":1090},[24023],{"type":45,"value":934},{"type":39,"tag":1072,"props":24025,"children":24026},{"style":1096},[24027],{"type":45,"value":20974},{"type":39,"tag":1072,"props":24029,"children":24030},{"style":1195},[24031],{"type":45,"value":8299},{"type":39,"tag":1072,"props":24033,"children":24034},{"style":1096},[24035],{"type":45,"value":21449},{"type":39,"tag":1072,"props":24037,"children":24038},{"style":1090},[24039],{"type":45,"value":934},{"type":39,"tag":1072,"props":24041,"children":24042},{"style":1096},[24043],{"type":45,"value":20888},{"type":39,"tag":1072,"props":24045,"children":24046},{"class":1074,"line":21460},[24047,24051,24055,24059,24063,24067,24071,24075],{"type":39,"tag":1072,"props":24048,"children":24049},{"style":1195},[24050],{"type":45,"value":8322},{"type":39,"tag":1072,"props":24052,"children":24053},{"style":1096},[24054],{"type":45,"value":18010},{"type":39,"tag":1072,"props":24056,"children":24057},{"style":1090},[24058],{"type":45,"value":934},{"type":39,"tag":1072,"props":24060,"children":24061},{"style":1096},[24062],{"type":45,"value":20755},{"type":39,"tag":1072,"props":24064,"children":24065},{"style":1195},[24066],{"type":45,"value":8299},{"type":39,"tag":1072,"props":24068,"children":24069},{"style":1096},[24070],{"type":45,"value":21449},{"type":39,"tag":1072,"props":24072,"children":24073},{"style":1090},[24074],{"type":45,"value":934},{"type":39,"tag":1072,"props":24076,"children":24077},{"style":1096},[24078],{"type":45,"value":20941},{"type":39,"tag":1072,"props":24080,"children":24081},{"class":1074,"line":21496},[24082,24086],{"type":39,"tag":1072,"props":24083,"children":24084},{"style":1195},[24085],{"type":45,"value":7335},{"type":39,"tag":1072,"props":24087,"children":24088},{"style":1090},[24089],{"type":45,"value":21506},{"type":39,"tag":1072,"props":24091,"children":24092},{"class":1074,"line":21509},[24093,24097,24101,24105,24109,24113,24117,24121],{"type":39,"tag":1072,"props":24094,"children":24095},{"style":1195},[24096],{"type":45,"value":8281},{"type":39,"tag":1072,"props":24098,"children":24099},{"style":1096},[24100],{"type":45,"value":18010},{"type":39,"tag":1072,"props":24102,"children":24103},{"style":1090},[24104],{"type":45,"value":934},{"type":39,"tag":1072,"props":24106,"children":24107},{"style":1096},[24108],{"type":45,"value":20974},{"type":39,"tag":1072,"props":24110,"children":24111},{"style":1195},[24112],{"type":45,"value":8299},{"type":39,"tag":1072,"props":24114,"children":24115},{"style":1096},[24116],{"type":45,"value":21535},{"type":39,"tag":1072,"props":24118,"children":24119},{"style":1090},[24120],{"type":45,"value":934},{"type":39,"tag":1072,"props":24122,"children":24123},{"style":1096},[24124],{"type":45,"value":21544},{"type":39,"tag":1072,"props":24126,"children":24127},{"class":1074,"line":21547},[24128,24132,24136,24140,24144,24148,24152,24156],{"type":39,"tag":1072,"props":24129,"children":24130},{"style":1195},[24131],{"type":45,"value":8322},{"type":39,"tag":1072,"props":24133,"children":24134},{"style":1096},[24135],{"type":45,"value":18010},{"type":39,"tag":1072,"props":24137,"children":24138},{"style":1090},[24139],{"type":45,"value":934},{"type":39,"tag":1072,"props":24141,"children":24142},{"style":1096},[24143],{"type":45,"value":20755},{"type":39,"tag":1072,"props":24145,"children":24146},{"style":1195},[24147],{"type":45,"value":8299},{"type":39,"tag":1072,"props":24149,"children":24150},{"style":1096},[24151],{"type":45,"value":21535},{"type":39,"tag":1072,"props":24153,"children":24154},{"style":1090},[24155],{"type":45,"value":934},{"type":39,"tag":1072,"props":24157,"children":24158},{"style":1096},[24159],{"type":45,"value":20941},{"type":39,"tag":1072,"props":24161,"children":24162},{"class":1074,"line":21583},[24163,24167,24171,24175,24179,24183,24187,24191,24195,24199],{"type":39,"tag":1072,"props":24164,"children":24165},{"style":1195},[24166],{"type":45,"value":15720},{"type":39,"tag":1072,"props":24168,"children":24169},{"style":1096},[24170],{"type":45,"value":18010},{"type":39,"tag":1072,"props":24172,"children":24173},{"style":1090},[24174],{"type":45,"value":934},{"type":39,"tag":1072,"props":24176,"children":24177},{"style":1096},[24178],{"type":45,"value":20974},{"type":39,"tag":1072,"props":24180,"children":24181},{"style":1195},[24182],{"type":45,"value":9324},{"type":39,"tag":1072,"props":24184,"children":24185},{"style":1090},[24186],{"type":45,"value":978},{"type":39,"tag":1072,"props":24188,"children":24189},{"style":1096},[24190],{"type":45,"value":17806},{"type":39,"tag":1072,"props":24192,"children":24193},{"style":1090},[24194],{"type":45,"value":934},{"type":39,"tag":1072,"props":24196,"children":24197},{"style":1096},[24198],{"type":45,"value":21020},{"type":39,"tag":1072,"props":24200,"children":24201},{"style":1195},[24202],{"type":45,"value":21625},{"type":39,"tag":85,"props":24204,"children":24206},{"id":24205},"_5-daily-kpis-rpt_daily_kpissql",[24207,24209],{"type":45,"value":24208},"5) Daily KPIs - ",{"type":39,"tag":70,"props":24210,"children":24212},{"className":24211},[],[24213],{"type":45,"value":24214},"rpt_daily_kpis.sql",{"type":39,"tag":48,"props":24216,"children":24217},{},[24218],{"type":45,"value":24219},"A single unified daily view of the whole business. One table, all the numbers that matter.",{"type":39,"tag":48,"props":24221,"children":24222},{},[24223,24224,24233],{"type":45,"value":7413},{"type":39,"tag":97,"props":24225,"children":24226},{},[24227],{"type":39,"tag":70,"props":24228,"children":24230},{"className":24229},[],[24231],{"type":45,"value":24232},"ecommerce\u002Fassets\u002Freports\u002Frpt_daily_kpis.sql",{"type":45,"value":7424},{"type":39,"tag":1242,"props":24235,"children":24236},{":variants":1244,"group":1245},[24237,25500,26746],{"type":39,"tag":1248,"props":24238,"children":24239},{"v-slot:clickhouse":7},[24240],{"type":39,"tag":1062,"props":24241,"children":24243},{"className":7433,"code":24242,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_daily_kpis\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - reports.rpt_daily_revenue\n  - staging.stg_customers\n  - staging.stg_orders\n  - staging.stg_web_sessions\n  - staging.stg_marketing_spend\ncolumns:\n  - name: kpi_date\n    type: date\n    checks:\n      - name: not_null\n      - name: unique\n@bruin *\u002F\n\nWITH daily_customers AS (\n    SELECT\n        toDate(o.order_date) AS order_date,\n        countIf(toDate(c.first_seen_at) = toDate(o.order_date)) AS new_customers,\n        countIf(toDate(c.first_seen_at) \u003C toDate(o.order_date)) AS returning_customers\n    FROM staging.stg_orders o\n    LEFT JOIN staging.stg_customers c\n        ON o.customer_email = c.customer_email\n    WHERE o.payment_status = 'paid'\n    GROUP BY toDate(o.order_date)\n),\ndaily_sessions AS (\n    SELECT\n        session_date,\n        sum(total_sessions) AS sessions,\n        sum(new_users) AS new_visitors,\n        sum(purchase_events) AS purchases\n    FROM staging.stg_web_sessions\n    GROUP BY session_date\n),\ndaily_spend AS (\n    SELECT\n        spend_date,\n        sum(spend) AS total_ad_spend\n    FROM staging.stg_marketing_spend\n    GROUP BY spend_date\n)\nSELECT\n    r.order_date AS kpi_date,\n    r.net_revenue,\n    r.total_orders,\n    r.paid_orders,\n    r.avg_order_value,\n    r.cancellation_rate,\n    dc.new_customers,\n    dc.returning_customers,\n    ds.sessions,\n    ds.new_visitors,\n    round(ds.purchases \u002F nullIf(ds.sessions, 0) * 100, 2) AS conversion_rate,\n    sp.total_ad_spend,\n    round(r.net_revenue \u002F nullIf(sp.total_ad_spend, 0), 2) AS overall_roas\nFROM reports.rpt_daily_revenue r\nLEFT JOIN daily_customers dc ON r.order_date = dc.order_date\nLEFT JOIN daily_sessions ds ON r.order_date = ds.session_date\nLEFT JOIN daily_spend sp ON r.order_date = sp.spend_date\nORDER BY kpi_date DESC\n",[24244],{"type":39,"tag":70,"props":24245,"children":24246},{"__ignoreMap":7},[24247,24254,24262,24269,24276,24283,24290,24298,24305,24312,24319,24326,24333,24341,24348,24355,24362,24369,24376,24383,24403,24410,24442,24499,24556,24579,24603,24638,24665,24692,24699,24715,24722,24729,24752,24772,24791,24810,24822,24829,24845,24852,24859,24879,24898,24910,24917,24924,24949,24969,24989,25009,25029,25049,25070,25090,25110,25130,25220,25241,25319,25345,25392,25437,25483],{"type":39,"tag":1072,"props":24248,"children":24249},{"class":1074,"line":868},[24250],{"type":39,"tag":1072,"props":24251,"children":24252},{"style":7445},[24253],{"type":45,"value":7448},{"type":39,"tag":1072,"props":24255,"children":24256},{"class":1074,"line":476},[24257],{"type":39,"tag":1072,"props":24258,"children":24259},{"style":7445},[24260],{"type":45,"value":24261},"name: reports.rpt_daily_kpis\n",{"type":39,"tag":1072,"props":24263,"children":24264},{"class":1074,"line":483},[24265],{"type":39,"tag":1072,"props":24266,"children":24267},{"style":7445},[24268],{"type":45,"value":7464},{"type":39,"tag":1072,"props":24270,"children":24271},{"class":1074,"line":1626},[24272],{"type":39,"tag":1072,"props":24273,"children":24274},{"style":7445},[24275],{"type":45,"value":7472},{"type":39,"tag":1072,"props":24277,"children":24278},{"class":1074,"line":11},[24279],{"type":39,"tag":1072,"props":24280,"children":24281},{"style":7445},[24282],{"type":45,"value":7480},{"type":39,"tag":1072,"props":24284,"children":24285},{"class":1074,"line":20},[24286],{"type":39,"tag":1072,"props":24287,"children":24288},{"style":7445},[24289],{"type":45,"value":7488},{"type":39,"tag":1072,"props":24291,"children":24292},{"class":1074,"line":1679},[24293],{"type":39,"tag":1072,"props":24294,"children":24295},{"style":7445},[24296],{"type":45,"value":24297},"  - reports.rpt_daily_revenue\n",{"type":39,"tag":1072,"props":24299,"children":24300},{"class":1074,"line":860},[24301],{"type":39,"tag":1072,"props":24302,"children":24303},{"style":7445},[24304],{"type":45,"value":17221},{"type":39,"tag":1072,"props":24306,"children":24307},{"class":1074,"line":2907},[24308],{"type":39,"tag":1072,"props":24309,"children":24310},{"style":7445},[24311],{"type":45,"value":15238},{"type":39,"tag":1072,"props":24313,"children":24314},{"class":1074,"line":7515},[24315],{"type":39,"tag":1072,"props":24316,"children":24317},{"style":7445},[24318],{"type":45,"value":20332},{"type":39,"tag":1072,"props":24320,"children":24321},{"class":1074,"line":7524},[24322],{"type":39,"tag":1072,"props":24323,"children":24324},{"style":7445},[24325],{"type":45,"value":20324},{"type":39,"tag":1072,"props":24327,"children":24328},{"class":1074,"line":7533},[24329],{"type":39,"tag":1072,"props":24330,"children":24331},{"style":7445},[24332],{"type":45,"value":7512},{"type":39,"tag":1072,"props":24334,"children":24335},{"class":1074,"line":7542},[24336],{"type":39,"tag":1072,"props":24337,"children":24338},{"style":7445},[24339],{"type":45,"value":24340},"  - name: kpi_date\n",{"type":39,"tag":1072,"props":24342,"children":24343},{"class":1074,"line":7551},[24344],{"type":39,"tag":1072,"props":24345,"children":24346},{"style":7445},[24347],{"type":45,"value":11546},{"type":39,"tag":1072,"props":24349,"children":24350},{"class":1074,"line":2380},[24351],{"type":39,"tag":1072,"props":24352,"children":24353},{"style":7445},[24354],{"type":45,"value":7539},{"type":39,"tag":1072,"props":24356,"children":24357},{"class":1074,"line":7568},[24358],{"type":39,"tag":1072,"props":24359,"children":24360},{"style":7445},[24361],{"type":45,"value":7548},{"type":39,"tag":1072,"props":24363,"children":24364},{"class":1074,"line":7577},[24365],{"type":39,"tag":1072,"props":24366,"children":24367},{"style":7445},[24368],{"type":45,"value":7557},{"type":39,"tag":1072,"props":24370,"children":24371},{"class":1074,"line":7585},[24372],{"type":39,"tag":1072,"props":24373,"children":24374},{"style":7445},[24375],{"type":45,"value":7635},{"type":39,"tag":1072,"props":24377,"children":24378},{"class":1074,"line":7593},[24379],{"type":39,"tag":1072,"props":24380,"children":24381},{"emptyLinePlaceholder":19},[24382],{"type":45,"value":7644},{"type":39,"tag":1072,"props":24384,"children":24385},{"class":1074,"line":7602},[24386,24390,24395,24399],{"type":39,"tag":1072,"props":24387,"children":24388},{"style":1195},[24389],{"type":45,"value":17279},{"type":39,"tag":1072,"props":24391,"children":24392},{"style":1090},[24393],{"type":45,"value":24394}," daily_customers ",{"type":39,"tag":1072,"props":24396,"children":24397},{"style":1195},[24398],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24400,"children":24401},{"style":1090},[24402],{"type":45,"value":17293},{"type":39,"tag":1072,"props":24404,"children":24405},{"class":1074,"line":7611},[24406],{"type":39,"tag":1072,"props":24407,"children":24408},{"style":1195},[24409],{"type":45,"value":17301},{"type":39,"tag":1072,"props":24411,"children":24412},{"class":1074,"line":7620},[24413,24418,24422,24426,24430,24434,24438],{"type":39,"tag":1072,"props":24414,"children":24415},{"style":1090},[24416],{"type":45,"value":24417},"        toDate(",{"type":39,"tag":1072,"props":24419,"children":24420},{"style":1096},[24421],{"type":45,"value":7820},{"type":39,"tag":1072,"props":24423,"children":24424},{"style":1090},[24425],{"type":45,"value":934},{"type":39,"tag":1072,"props":24427,"children":24428},{"style":1096},[24429],{"type":45,"value":17376},{"type":39,"tag":1072,"props":24431,"children":24432},{"style":1090},[24433],{"type":45,"value":8344},{"type":39,"tag":1072,"props":24435,"children":24436},{"style":1195},[24437],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24439,"children":24440},{"style":1090},[24441],{"type":45,"value":7755},{"type":39,"tag":1072,"props":24443,"children":24444},{"class":1074,"line":7629},[24445,24450,24454,24458,24462,24466,24470,24474,24478,24482,24486,24490,24494],{"type":39,"tag":1072,"props":24446,"children":24447},{"style":1090},[24448],{"type":45,"value":24449},"        countIf(toDate(",{"type":39,"tag":1072,"props":24451,"children":24452},{"style":1096},[24453],{"type":45,"value":8358},{"type":39,"tag":1072,"props":24455,"children":24456},{"style":1090},[24457],{"type":45,"value":934},{"type":39,"tag":1072,"props":24459,"children":24460},{"style":1096},[24461],{"type":45,"value":17343},{"type":39,"tag":1072,"props":24463,"children":24464},{"style":1090},[24465],{"type":45,"value":8344},{"type":39,"tag":1072,"props":24467,"children":24468},{"style":1195},[24469],{"type":45,"value":8349},{"type":39,"tag":1072,"props":24471,"children":24472},{"style":1090},[24473],{"type":45,"value":8327},{"type":39,"tag":1072,"props":24475,"children":24476},{"style":1096},[24477],{"type":45,"value":7820},{"type":39,"tag":1072,"props":24479,"children":24480},{"style":1090},[24481],{"type":45,"value":934},{"type":39,"tag":1072,"props":24483,"children":24484},{"style":1096},[24485],{"type":45,"value":17376},{"type":39,"tag":1072,"props":24487,"children":24488},{"style":1090},[24489],{"type":45,"value":7861},{"type":39,"tag":1072,"props":24491,"children":24492},{"style":1195},[24493],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24495,"children":24496},{"style":1090},[24497],{"type":45,"value":24498}," new_customers,\n",{"type":39,"tag":1072,"props":24500,"children":24501},{"class":1074,"line":7638},[24502,24506,24510,24514,24518,24522,24527,24531,24535,24539,24543,24547,24551],{"type":39,"tag":1072,"props":24503,"children":24504},{"style":1090},[24505],{"type":45,"value":24449},{"type":39,"tag":1072,"props":24507,"children":24508},{"style":1096},[24509],{"type":45,"value":8358},{"type":39,"tag":1072,"props":24511,"children":24512},{"style":1090},[24513],{"type":45,"value":934},{"type":39,"tag":1072,"props":24515,"children":24516},{"style":1096},[24517],{"type":45,"value":17343},{"type":39,"tag":1072,"props":24519,"children":24520},{"style":1090},[24521],{"type":45,"value":8344},{"type":39,"tag":1072,"props":24523,"children":24524},{"style":1195},[24525],{"type":45,"value":24526},"\u003C",{"type":39,"tag":1072,"props":24528,"children":24529},{"style":1090},[24530],{"type":45,"value":8327},{"type":39,"tag":1072,"props":24532,"children":24533},{"style":1096},[24534],{"type":45,"value":7820},{"type":39,"tag":1072,"props":24536,"children":24537},{"style":1090},[24538],{"type":45,"value":934},{"type":39,"tag":1072,"props":24540,"children":24541},{"style":1096},[24542],{"type":45,"value":17376},{"type":39,"tag":1072,"props":24544,"children":24545},{"style":1090},[24546],{"type":45,"value":7861},{"type":39,"tag":1072,"props":24548,"children":24549},{"style":1195},[24550],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24552,"children":24553},{"style":1090},[24554],{"type":45,"value":24555}," returning_customers\n",{"type":39,"tag":1072,"props":24557,"children":24558},{"class":1074,"line":7647},[24559,24563,24567,24571,24575],{"type":39,"tag":1072,"props":24560,"children":24561},{"style":1195},[24562],{"type":45,"value":17413},{"type":39,"tag":1072,"props":24564,"children":24565},{"style":1096},[24566],{"type":45,"value":15691},{"type":39,"tag":1072,"props":24568,"children":24569},{"style":1090},[24570],{"type":45,"value":934},{"type":39,"tag":1072,"props":24572,"children":24573},{"style":1096},[24574],{"type":45,"value":16313},{"type":39,"tag":1072,"props":24576,"children":24577},{"style":1090},[24578],{"type":45,"value":8246},{"type":39,"tag":1072,"props":24580,"children":24581},{"class":1074,"line":7656},[24582,24587,24591,24595,24599],{"type":39,"tag":1072,"props":24583,"children":24584},{"style":1195},[24585],{"type":45,"value":24586},"    LEFT JOIN",{"type":39,"tag":1072,"props":24588,"children":24589},{"style":1096},[24590],{"type":45,"value":15691},{"type":39,"tag":1072,"props":24592,"children":24593},{"style":1090},[24594],{"type":45,"value":934},{"type":39,"tag":1072,"props":24596,"children":24597},{"style":1096},[24598],{"type":45,"value":17450},{"type":39,"tag":1072,"props":24600,"children":24601},{"style":1090},[24602],{"type":45,"value":8272},{"type":39,"tag":1072,"props":24604,"children":24605},{"class":1074,"line":7684},[24606,24610,24614,24618,24622,24626,24630,24634],{"type":39,"tag":1072,"props":24607,"children":24608},{"style":1195},[24609],{"type":45,"value":17462},{"type":39,"tag":1072,"props":24611,"children":24612},{"style":1096},[24613],{"type":45,"value":8286},{"type":39,"tag":1072,"props":24615,"children":24616},{"style":1090},[24617],{"type":45,"value":934},{"type":39,"tag":1072,"props":24619,"children":24620},{"style":1096},[24621],{"type":45,"value":17318},{"type":39,"tag":1072,"props":24623,"children":24624},{"style":1195},[24625],{"type":45,"value":8299},{"type":39,"tag":1072,"props":24627,"children":24628},{"style":1096},[24629],{"type":45,"value":8304},{"type":39,"tag":1072,"props":24631,"children":24632},{"style":1090},[24633],{"type":45,"value":934},{"type":39,"tag":1072,"props":24635,"children":24636},{"style":1096},[24637],{"type":45,"value":17491},{"type":39,"tag":1072,"props":24639,"children":24640},{"class":1074,"line":7706},[24641,24645,24649,24653,24657,24661],{"type":39,"tag":1072,"props":24642,"children":24643},{"style":1195},[24644],{"type":45,"value":17499},{"type":39,"tag":1072,"props":24646,"children":24647},{"style":1096},[24648],{"type":45,"value":8286},{"type":39,"tag":1072,"props":24650,"children":24651},{"style":1090},[24652],{"type":45,"value":934},{"type":39,"tag":1072,"props":24654,"children":24655},{"style":1096},[24656],{"type":45,"value":17512},{"type":39,"tag":1072,"props":24658,"children":24659},{"style":1195},[24660],{"type":45,"value":8299},{"type":39,"tag":1072,"props":24662,"children":24663},{"style":1084},[24664],{"type":45,"value":17521},{"type":39,"tag":1072,"props":24666,"children":24667},{"class":1074,"line":7732},[24668,24672,24676,24680,24684,24688],{"type":39,"tag":1072,"props":24669,"children":24670},{"style":1195},[24671],{"type":45,"value":17611},{"type":39,"tag":1072,"props":24673,"children":24674},{"style":1090},[24675],{"type":45,"value":8327},{"type":39,"tag":1072,"props":24677,"children":24678},{"style":1096},[24679],{"type":45,"value":7820},{"type":39,"tag":1072,"props":24681,"children":24682},{"style":1090},[24683],{"type":45,"value":934},{"type":39,"tag":1072,"props":24685,"children":24686},{"style":1096},[24687],{"type":45,"value":17376},{"type":39,"tag":1072,"props":24689,"children":24690},{"style":1090},[24691],{"type":45,"value":8372},{"type":39,"tag":1072,"props":24693,"children":24694},{"class":1074,"line":7758},[24695],{"type":39,"tag":1072,"props":24696,"children":24697},{"style":1090},[24698],{"type":45,"value":17529},{"type":39,"tag":1072,"props":24700,"children":24701},{"class":1074,"line":7783},[24702,24707,24711],{"type":39,"tag":1072,"props":24703,"children":24704},{"style":1090},[24705],{"type":45,"value":24706},"daily_sessions ",{"type":39,"tag":1072,"props":24708,"children":24709},{"style":1195},[24710],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24712,"children":24713},{"style":1090},[24714],{"type":45,"value":17293},{"type":39,"tag":1072,"props":24716,"children":24717},{"class":1074,"line":7804},[24718],{"type":39,"tag":1072,"props":24719,"children":24720},{"style":1195},[24721],{"type":45,"value":17301},{"type":39,"tag":1072,"props":24723,"children":24724},{"class":1074,"line":7874},[24725],{"type":39,"tag":1072,"props":24726,"children":24727},{"style":1090},[24728],{"type":45,"value":20587},{"type":39,"tag":1072,"props":24730,"children":24731},{"class":1074,"line":7936},[24732,24736,24740,24744,24748],{"type":39,"tag":1072,"props":24733,"children":24734},{"style":1096},[24735],{"type":45,"value":20440},{"type":39,"tag":1072,"props":24737,"children":24738},{"style":1090},[24739],{"type":45,"value":20606},{"type":39,"tag":1072,"props":24741,"children":24742},{"style":1195},[24743],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24745,"children":24746},{"style":1195},[24747],{"type":45,"value":20615},{"type":39,"tag":1072,"props":24749,"children":24750},{"style":1090},[24751],{"type":45,"value":7703},{"type":39,"tag":1072,"props":24753,"children":24754},{"class":1074,"line":7998},[24755,24759,24763,24767],{"type":39,"tag":1072,"props":24756,"children":24757},{"style":1096},[24758],{"type":45,"value":20440},{"type":39,"tag":1072,"props":24760,"children":24761},{"style":1090},[24762],{"type":45,"value":20631},{"type":39,"tag":1072,"props":24764,"children":24765},{"style":1195},[24766],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24768,"children":24769},{"style":1090},[24770],{"type":45,"value":24771}," new_visitors,\n",{"type":39,"tag":1072,"props":24773,"children":24774},{"class":1074,"line":8060},[24775,24779,24783,24787],{"type":39,"tag":1072,"props":24776,"children":24777},{"style":1096},[24778],{"type":45,"value":20440},{"type":39,"tag":1072,"props":24780,"children":24781},{"style":1090},[24782],{"type":45,"value":20651},{"type":39,"tag":1072,"props":24784,"children":24785},{"style":1195},[24786],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24788,"children":24789},{"style":1090},[24790],{"type":45,"value":20660},{"type":39,"tag":1072,"props":24792,"children":24793},{"class":1074,"line":8081},[24794,24798,24802,24806],{"type":39,"tag":1072,"props":24795,"children":24796},{"style":1195},[24797],{"type":45,"value":17413},{"type":39,"tag":1072,"props":24799,"children":24800},{"style":1096},[24801],{"type":45,"value":15691},{"type":39,"tag":1072,"props":24803,"children":24804},{"style":1090},[24805],{"type":45,"value":934},{"type":39,"tag":1072,"props":24807,"children":24808},{"style":1096},[24809],{"type":45,"value":20680},{"type":39,"tag":1072,"props":24811,"children":24812},{"class":1074,"line":8102},[24813,24817],{"type":39,"tag":1072,"props":24814,"children":24815},{"style":1195},[24816],{"type":45,"value":17611},{"type":39,"tag":1072,"props":24818,"children":24819},{"style":1090},[24820],{"type":45,"value":24821}," session_date\n",{"type":39,"tag":1072,"props":24823,"children":24824},{"class":1074,"line":8123},[24825],{"type":39,"tag":1072,"props":24826,"children":24827},{"style":1090},[24828],{"type":45,"value":17529},{"type":39,"tag":1072,"props":24830,"children":24831},{"class":1074,"line":8169},[24832,24837,24841],{"type":39,"tag":1072,"props":24833,"children":24834},{"style":1090},[24835],{"type":45,"value":24836},"daily_spend ",{"type":39,"tag":1072,"props":24838,"children":24839},{"style":1195},[24840],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24842,"children":24843},{"style":1090},[24844],{"type":45,"value":17293},{"type":39,"tag":1072,"props":24846,"children":24847},{"class":1074,"line":8195},[24848],{"type":39,"tag":1072,"props":24849,"children":24850},{"style":1195},[24851],{"type":45,"value":17301},{"type":39,"tag":1072,"props":24853,"children":24854},{"class":1074,"line":8221},[24855],{"type":39,"tag":1072,"props":24856,"children":24857},{"style":1090},[24858],{"type":45,"value":20424},{"type":39,"tag":1072,"props":24860,"children":24861},{"class":1074,"line":8249},[24862,24866,24870,24874],{"type":39,"tag":1072,"props":24863,"children":24864},{"style":1096},[24865],{"type":45,"value":20440},{"type":39,"tag":1072,"props":24867,"children":24868},{"style":1090},[24869],{"type":45,"value":20445},{"type":39,"tag":1072,"props":24871,"children":24872},{"style":1195},[24873],{"type":45,"value":7866},{"type":39,"tag":1072,"props":24875,"children":24876},{"style":1090},[24877],{"type":45,"value":24878}," total_ad_spend\n",{"type":39,"tag":1072,"props":24880,"children":24881},{"class":1074,"line":8275},[24882,24886,24890,24894],{"type":39,"tag":1072,"props":24883,"children":24884},{"style":1195},[24885],{"type":45,"value":17413},{"type":39,"tag":1072,"props":24887,"children":24888},{"style":1096},[24889],{"type":45,"value":15691},{"type":39,"tag":1072,"props":24891,"children":24892},{"style":1090},[24893],{"type":45,"value":934},{"type":39,"tag":1072,"props":24895,"children":24896},{"style":1096},[24897],{"type":45,"value":20537},{"type":39,"tag":1072,"props":24899,"children":24900},{"class":1074,"line":8316},[24901,24905],{"type":39,"tag":1072,"props":24902,"children":24903},{"style":1195},[24904],{"type":45,"value":17611},{"type":39,"tag":1072,"props":24906,"children":24907},{"style":1090},[24908],{"type":45,"value":24909}," spend_date\n",{"type":39,"tag":1072,"props":24911,"children":24912},{"class":1074,"line":9194},[24913],{"type":39,"tag":1072,"props":24914,"children":24915},{"style":1090},[24916],{"type":45,"value":8372},{"type":39,"tag":1072,"props":24918,"children":24919},{"class":1074,"line":9253},[24920],{"type":39,"tag":1072,"props":24921,"children":24922},{"style":1195},[24923],{"type":45,"value":7653},{"type":39,"tag":1072,"props":24925,"children":24926},{"class":1074,"line":20944},[24927,24932,24936,24940,24944],{"type":39,"tag":1072,"props":24928,"children":24929},{"style":1096},[24930],{"type":45,"value":24931},"    r",{"type":39,"tag":1072,"props":24933,"children":24934},{"style":1090},[24935],{"type":45,"value":934},{"type":39,"tag":1072,"props":24937,"children":24938},{"style":1096},[24939],{"type":45,"value":17376},{"type":39,"tag":1072,"props":24941,"children":24942},{"style":1195},[24943],{"type":45,"value":7676},{"type":39,"tag":1072,"props":24945,"children":24946},{"style":1090},[24947],{"type":45,"value":24948}," kpi_date,\n",{"type":39,"tag":1072,"props":24950,"children":24951},{"class":1074,"line":20952},[24952,24956,24960,24965],{"type":39,"tag":1072,"props":24953,"children":24954},{"style":1096},[24955],{"type":45,"value":24931},{"type":39,"tag":1072,"props":24957,"children":24958},{"style":1090},[24959],{"type":45,"value":934},{"type":39,"tag":1072,"props":24961,"children":24962},{"style":1096},[24963],{"type":45,"value":24964},"net_revenue",{"type":39,"tag":1072,"props":24966,"children":24967},{"style":1090},[24968],{"type":45,"value":7703},{"type":39,"tag":1072,"props":24970,"children":24971},{"class":1074,"line":20960},[24972,24976,24980,24985],{"type":39,"tag":1072,"props":24973,"children":24974},{"style":1096},[24975],{"type":45,"value":24931},{"type":39,"tag":1072,"props":24977,"children":24978},{"style":1090},[24979],{"type":45,"value":934},{"type":39,"tag":1072,"props":24981,"children":24982},{"style":1096},[24983],{"type":45,"value":24984},"total_orders",{"type":39,"tag":1072,"props":24986,"children":24987},{"style":1090},[24988],{"type":45,"value":7703},{"type":39,"tag":1072,"props":24990,"children":24991},{"class":1074,"line":20986},[24992,24996,25000,25005],{"type":39,"tag":1072,"props":24993,"children":24994},{"style":1096},[24995],{"type":45,"value":24931},{"type":39,"tag":1072,"props":24997,"children":24998},{"style":1090},[24999],{"type":45,"value":934},{"type":39,"tag":1072,"props":25001,"children":25002},{"style":1096},[25003],{"type":45,"value":25004},"paid_orders",{"type":39,"tag":1072,"props":25006,"children":25007},{"style":1090},[25008],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25010,"children":25011},{"class":1074,"line":21006},[25012,25016,25020,25025],{"type":39,"tag":1072,"props":25013,"children":25014},{"style":1096},[25015],{"type":45,"value":24931},{"type":39,"tag":1072,"props":25017,"children":25018},{"style":1090},[25019],{"type":45,"value":934},{"type":39,"tag":1072,"props":25021,"children":25022},{"style":1096},[25023],{"type":45,"value":25024},"avg_order_value",{"type":39,"tag":1072,"props":25026,"children":25027},{"style":1090},[25028],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25030,"children":25031},{"class":1074,"line":21027},[25032,25036,25040,25045],{"type":39,"tag":1072,"props":25033,"children":25034},{"style":1096},[25035],{"type":45,"value":24931},{"type":39,"tag":1072,"props":25037,"children":25038},{"style":1090},[25039],{"type":45,"value":934},{"type":39,"tag":1072,"props":25041,"children":25042},{"style":1096},[25043],{"type":45,"value":25044},"cancellation_rate",{"type":39,"tag":1072,"props":25046,"children":25047},{"style":1090},[25048],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25050,"children":25051},{"class":1074,"line":21048},[25052,25057,25061,25066],{"type":39,"tag":1072,"props":25053,"children":25054},{"style":1096},[25055],{"type":45,"value":25056},"    dc",{"type":39,"tag":1072,"props":25058,"children":25059},{"style":1090},[25060],{"type":45,"value":934},{"type":39,"tag":1072,"props":25062,"children":25063},{"style":1096},[25064],{"type":45,"value":25065},"new_customers",{"type":39,"tag":1072,"props":25067,"children":25068},{"style":1090},[25069],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25071,"children":25072},{"class":1074,"line":21069},[25073,25077,25081,25086],{"type":39,"tag":1072,"props":25074,"children":25075},{"style":1096},[25076],{"type":45,"value":25056},{"type":39,"tag":1072,"props":25078,"children":25079},{"style":1090},[25080],{"type":45,"value":934},{"type":39,"tag":1072,"props":25082,"children":25083},{"style":1096},[25084],{"type":45,"value":25085},"returning_customers",{"type":39,"tag":1072,"props":25087,"children":25088},{"style":1090},[25089],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25091,"children":25092},{"class":1074,"line":21090},[25093,25098,25102,25106],{"type":39,"tag":1072,"props":25094,"children":25095},{"style":1096},[25096],{"type":45,"value":25097},"    ds",{"type":39,"tag":1072,"props":25099,"children":25100},{"style":1090},[25101],{"type":45,"value":934},{"type":39,"tag":1072,"props":25103,"children":25104},{"style":1096},[25105],{"type":45,"value":13288},{"type":39,"tag":1072,"props":25107,"children":25108},{"style":1090},[25109],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25111,"children":25112},{"class":1074,"line":21111},[25113,25117,25121,25126],{"type":39,"tag":1072,"props":25114,"children":25115},{"style":1096},[25116],{"type":45,"value":25097},{"type":39,"tag":1072,"props":25118,"children":25119},{"style":1090},[25120],{"type":45,"value":934},{"type":39,"tag":1072,"props":25122,"children":25123},{"style":1096},[25124],{"type":45,"value":25125},"new_visitors",{"type":39,"tag":1072,"props":25127,"children":25128},{"style":1090},[25129],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25131,"children":25132},{"class":1074,"line":21131},[25133,25137,25141,25146,25150,25155,25159,25163,25167,25171,25175,25179,25183,25187,25191,25195,25199,25203,25207,25211,25215],{"type":39,"tag":1072,"props":25134,"children":25135},{"style":1096},[25136],{"type":45,"value":15571},{"type":39,"tag":1072,"props":25138,"children":25139},{"style":1090},[25140],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25142,"children":25143},{"style":1096},[25144],{"type":45,"value":25145},"ds",{"type":39,"tag":1072,"props":25147,"children":25148},{"style":1090},[25149],{"type":45,"value":934},{"type":39,"tag":1072,"props":25151,"children":25152},{"style":1096},[25153],{"type":45,"value":25154},"purchases",{"type":39,"tag":1072,"props":25156,"children":25157},{"style":1195},[25158],{"type":45,"value":8143},{"type":39,"tag":1072,"props":25160,"children":25161},{"style":1096},[25162],{"type":45,"value":15586},{"type":39,"tag":1072,"props":25164,"children":25165},{"style":1090},[25166],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25168,"children":25169},{"style":1096},[25170],{"type":45,"value":25145},{"type":39,"tag":1072,"props":25172,"children":25173},{"style":1090},[25174],{"type":45,"value":934},{"type":39,"tag":1072,"props":25176,"children":25177},{"style":1096},[25178],{"type":45,"value":13288},{"type":39,"tag":1072,"props":25180,"children":25181},{"style":1090},[25182],{"type":45,"value":978},{"type":39,"tag":1072,"props":25184,"children":25185},{"style":1096},[25186],{"type":45,"value":8157},{"type":39,"tag":1072,"props":25188,"children":25189},{"style":1090},[25190],{"type":45,"value":8344},{"type":39,"tag":1072,"props":25192,"children":25193},{"style":1195},[25194],{"type":45,"value":13780},{"type":39,"tag":1072,"props":25196,"children":25197},{"style":1096},[25198],{"type":45,"value":8148},{"type":39,"tag":1072,"props":25200,"children":25201},{"style":1090},[25202],{"type":45,"value":978},{"type":39,"tag":1072,"props":25204,"children":25205},{"style":1096},[25206],{"type":45,"value":7856},{"type":39,"tag":1072,"props":25208,"children":25209},{"style":1090},[25210],{"type":45,"value":8344},{"type":39,"tag":1072,"props":25212,"children":25213},{"style":1195},[25214],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25216,"children":25217},{"style":1090},[25218],{"type":45,"value":25219}," conversion_rate,\n",{"type":39,"tag":1072,"props":25221,"children":25222},{"class":1074,"line":21153},[25223,25228,25232,25237],{"type":39,"tag":1072,"props":25224,"children":25225},{"style":1096},[25226],{"type":45,"value":25227},"    sp",{"type":39,"tag":1072,"props":25229,"children":25230},{"style":1090},[25231],{"type":45,"value":934},{"type":39,"tag":1072,"props":25233,"children":25234},{"style":1096},[25235],{"type":45,"value":25236},"total_ad_spend",{"type":39,"tag":1072,"props":25238,"children":25239},{"style":1090},[25240],{"type":45,"value":7703},{"type":39,"tag":1072,"props":25242,"children":25243},{"class":1074,"line":21231},[25244,25248,25252,25257,25261,25265,25269,25273,25277,25282,25286,25290,25294,25298,25302,25306,25310,25314],{"type":39,"tag":1072,"props":25245,"children":25246},{"style":1096},[25247],{"type":45,"value":15571},{"type":39,"tag":1072,"props":25249,"children":25250},{"style":1090},[25251],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25253,"children":25254},{"style":1096},[25255],{"type":45,"value":25256},"r",{"type":39,"tag":1072,"props":25258,"children":25259},{"style":1090},[25260],{"type":45,"value":934},{"type":39,"tag":1072,"props":25262,"children":25263},{"style":1096},[25264],{"type":45,"value":24964},{"type":39,"tag":1072,"props":25266,"children":25267},{"style":1195},[25268],{"type":45,"value":8143},{"type":39,"tag":1072,"props":25270,"children":25271},{"style":1096},[25272],{"type":45,"value":15586},{"type":39,"tag":1072,"props":25274,"children":25275},{"style":1090},[25276],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25278,"children":25279},{"style":1096},[25280],{"type":45,"value":25281},"sp",{"type":39,"tag":1072,"props":25283,"children":25284},{"style":1090},[25285],{"type":45,"value":934},{"type":39,"tag":1072,"props":25287,"children":25288},{"style":1096},[25289],{"type":45,"value":25236},{"type":39,"tag":1072,"props":25291,"children":25292},{"style":1090},[25293],{"type":45,"value":978},{"type":39,"tag":1072,"props":25295,"children":25296},{"style":1096},[25297],{"type":45,"value":8157},{"type":39,"tag":1072,"props":25299,"children":25300},{"style":1090},[25301],{"type":45,"value":15600},{"type":39,"tag":1072,"props":25303,"children":25304},{"style":1096},[25305],{"type":45,"value":7856},{"type":39,"tag":1072,"props":25307,"children":25308},{"style":1090},[25309],{"type":45,"value":8344},{"type":39,"tag":1072,"props":25311,"children":25312},{"style":1195},[25313],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25315,"children":25316},{"style":1090},[25317],{"type":45,"value":25318}," overall_roas\n",{"type":39,"tag":1072,"props":25320,"children":25321},{"class":1074,"line":21308},[25322,25326,25331,25335,25340],{"type":39,"tag":1072,"props":25323,"children":25324},{"style":1195},[25325],{"type":45,"value":8227},{"type":39,"tag":1072,"props":25327,"children":25328},{"style":1096},[25329],{"type":45,"value":25330}," reports",{"type":39,"tag":1072,"props":25332,"children":25333},{"style":1090},[25334],{"type":45,"value":934},{"type":39,"tag":1072,"props":25336,"children":25337},{"style":1096},[25338],{"type":45,"value":25339},"rpt_daily_revenue",{"type":39,"tag":1072,"props":25341,"children":25342},{"style":1090},[25343],{"type":45,"value":25344}," r\n",{"type":39,"tag":1072,"props":25346,"children":25347},{"class":1074,"line":21397},[25348,25352,25357,25362,25367,25371,25375,25379,25384,25388],{"type":39,"tag":1072,"props":25349,"children":25350},{"style":1195},[25351],{"type":45,"value":7335},{"type":39,"tag":1072,"props":25353,"children":25354},{"style":1090},[25355],{"type":45,"value":25356}," daily_customers dc ",{"type":39,"tag":1072,"props":25358,"children":25359},{"style":1195},[25360],{"type":45,"value":25361},"ON",{"type":39,"tag":1072,"props":25363,"children":25364},{"style":1096},[25365],{"type":45,"value":25366}," r",{"type":39,"tag":1072,"props":25368,"children":25369},{"style":1090},[25370],{"type":45,"value":934},{"type":39,"tag":1072,"props":25372,"children":25373},{"style":1096},[25374],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25376,"children":25377},{"style":1195},[25378],{"type":45,"value":8299},{"type":39,"tag":1072,"props":25380,"children":25381},{"style":1096},[25382],{"type":45,"value":25383}," dc",{"type":39,"tag":1072,"props":25385,"children":25386},{"style":1090},[25387],{"type":45,"value":934},{"type":39,"tag":1072,"props":25389,"children":25390},{"style":1096},[25391],{"type":45,"value":21544},{"type":39,"tag":1072,"props":25393,"children":25394},{"class":1074,"line":21410},[25395,25399,25404,25408,25412,25416,25420,25424,25429,25433],{"type":39,"tag":1072,"props":25396,"children":25397},{"style":1195},[25398],{"type":45,"value":7335},{"type":39,"tag":1072,"props":25400,"children":25401},{"style":1090},[25402],{"type":45,"value":25403}," daily_sessions ds ",{"type":39,"tag":1072,"props":25405,"children":25406},{"style":1195},[25407],{"type":45,"value":25361},{"type":39,"tag":1072,"props":25409,"children":25410},{"style":1096},[25411],{"type":45,"value":25366},{"type":39,"tag":1072,"props":25413,"children":25414},{"style":1090},[25415],{"type":45,"value":934},{"type":39,"tag":1072,"props":25417,"children":25418},{"style":1096},[25419],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25421,"children":25422},{"style":1195},[25423],{"type":45,"value":8299},{"type":39,"tag":1072,"props":25425,"children":25426},{"style":1096},[25427],{"type":45,"value":25428}," ds",{"type":39,"tag":1072,"props":25430,"children":25431},{"style":1090},[25432],{"type":45,"value":934},{"type":39,"tag":1072,"props":25434,"children":25435},{"style":1096},[25436],{"type":45,"value":20888},{"type":39,"tag":1072,"props":25438,"children":25439},{"class":1074,"line":21423},[25440,25444,25449,25453,25457,25461,25465,25469,25474,25478],{"type":39,"tag":1072,"props":25441,"children":25442},{"style":1195},[25443],{"type":45,"value":7335},{"type":39,"tag":1072,"props":25445,"children":25446},{"style":1090},[25447],{"type":45,"value":25448}," daily_spend sp ",{"type":39,"tag":1072,"props":25450,"children":25451},{"style":1195},[25452],{"type":45,"value":25361},{"type":39,"tag":1072,"props":25454,"children":25455},{"style":1096},[25456],{"type":45,"value":25366},{"type":39,"tag":1072,"props":25458,"children":25459},{"style":1090},[25460],{"type":45,"value":934},{"type":39,"tag":1072,"props":25462,"children":25463},{"style":1096},[25464],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25466,"children":25467},{"style":1195},[25468],{"type":45,"value":8299},{"type":39,"tag":1072,"props":25470,"children":25471},{"style":1096},[25472],{"type":45,"value":25473}," sp",{"type":39,"tag":1072,"props":25475,"children":25476},{"style":1090},[25477],{"type":45,"value":934},{"type":39,"tag":1072,"props":25479,"children":25480},{"style":1096},[25481],{"type":45,"value":25482},"spend_date\n",{"type":39,"tag":1072,"props":25484,"children":25485},{"class":1074,"line":21460},[25486,25490,25495],{"type":39,"tag":1072,"props":25487,"children":25488},{"style":1195},[25489],{"type":45,"value":15720},{"type":39,"tag":1072,"props":25491,"children":25492},{"style":1090},[25493],{"type":45,"value":25494}," kpi_date ",{"type":39,"tag":1072,"props":25496,"children":25497},{"style":1195},[25498],{"type":45,"value":25499},"DESC\n",{"type":39,"tag":1248,"props":25501,"children":25502},{"v-slot:bigquery":7},[25503],{"type":39,"tag":1062,"props":25504,"children":25506},{"className":7433,"code":25505,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_daily_kpis\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - reports.rpt_daily_revenue\n  - staging.stg_customers\n  - staging.stg_orders\n  - staging.stg_web_sessions\n  - staging.stg_marketing_spend\ncolumns:\n  - name: kpi_date\n    type: date\n    checks:\n      - name: not_null\n      - name: unique\n@bruin *\u002F\n\nWITH daily_customers AS (\n    SELECT\n        DATE(o.order_date) AS order_date,\n        COUNTIF(DATE(c.first_seen_at) = DATE(o.order_date)) AS new_customers,\n        COUNTIF(DATE(c.first_seen_at) \u003C DATE(o.order_date)) AS returning_customers\n    FROM staging.stg_orders o\n    LEFT JOIN staging.stg_customers c\n        ON o.customer_email = c.customer_email\n    WHERE o.payment_status = 'paid'\n    GROUP BY DATE(o.order_date)\n),\ndaily_sessions AS (\n    SELECT\n        session_date,\n        sum(total_sessions) AS sessions,\n        sum(new_users) AS new_visitors,\n        sum(purchase_events) AS purchases\n    FROM staging.stg_web_sessions\n    GROUP BY session_date\n),\ndaily_spend AS (\n    SELECT\n        spend_date,\n        sum(spend) AS total_ad_spend\n    FROM staging.stg_marketing_spend\n    GROUP BY spend_date\n)\nSELECT\n    r.order_date AS kpi_date,\n    r.net_revenue,\n    r.total_orders,\n    r.paid_orders,\n    r.avg_order_value,\n    r.cancellation_rate,\n    dc.new_customers,\n    dc.returning_customers,\n    ds.sessions,\n    ds.new_visitors,\n    round(ds.purchases \u002F NULLIF(ds.sessions, 0) * 100, 2) AS conversion_rate,\n    sp.total_ad_spend,\n    round(r.net_revenue \u002F NULLIF(sp.total_ad_spend, 0), 2) AS overall_roas\nFROM reports.rpt_daily_revenue r\nLEFT JOIN daily_customers dc ON r.order_date = dc.order_date\nLEFT JOIN daily_sessions ds ON r.order_date = ds.session_date\nLEFT JOIN daily_spend sp ON r.order_date = sp.spend_date\nORDER BY kpi_date DESC\n",[25507],{"type":39,"tag":70,"props":25508,"children":25509},{"__ignoreMap":7},[25510,25517,25524,25531,25538,25545,25552,25559,25566,25573,25580,25587,25594,25601,25608,25615,25622,25629,25636,25643,25662,25669,25704,25772,25839,25862,25885,25920,25947,25978,25985,26000,26007,26014,26037,26056,26075,26094,26105,26112,26127,26134,26141,26160,26179,26190,26197,26204,26227,26246,26265,26284,26303,26322,26341,26360,26379,26398,26485,26504,26579,26602,26645,26688,26731],{"type":39,"tag":1072,"props":25511,"children":25512},{"class":1074,"line":868},[25513],{"type":39,"tag":1072,"props":25514,"children":25515},{"style":7445},[25516],{"type":45,"value":7448},{"type":39,"tag":1072,"props":25518,"children":25519},{"class":1074,"line":476},[25520],{"type":39,"tag":1072,"props":25521,"children":25522},{"style":7445},[25523],{"type":45,"value":24261},{"type":39,"tag":1072,"props":25525,"children":25526},{"class":1074,"line":483},[25527],{"type":39,"tag":1072,"props":25528,"children":25529},{"style":7445},[25530],{"type":45,"value":7464},{"type":39,"tag":1072,"props":25532,"children":25533},{"class":1074,"line":1626},[25534],{"type":39,"tag":1072,"props":25535,"children":25536},{"style":7445},[25537],{"type":45,"value":7472},{"type":39,"tag":1072,"props":25539,"children":25540},{"class":1074,"line":11},[25541],{"type":39,"tag":1072,"props":25542,"children":25543},{"style":7445},[25544],{"type":45,"value":7480},{"type":39,"tag":1072,"props":25546,"children":25547},{"class":1074,"line":20},[25548],{"type":39,"tag":1072,"props":25549,"children":25550},{"style":7445},[25551],{"type":45,"value":7488},{"type":39,"tag":1072,"props":25553,"children":25554},{"class":1074,"line":1679},[25555],{"type":39,"tag":1072,"props":25556,"children":25557},{"style":7445},[25558],{"type":45,"value":24297},{"type":39,"tag":1072,"props":25560,"children":25561},{"class":1074,"line":860},[25562],{"type":39,"tag":1072,"props":25563,"children":25564},{"style":7445},[25565],{"type":45,"value":17221},{"type":39,"tag":1072,"props":25567,"children":25568},{"class":1074,"line":2907},[25569],{"type":39,"tag":1072,"props":25570,"children":25571},{"style":7445},[25572],{"type":45,"value":15238},{"type":39,"tag":1072,"props":25574,"children":25575},{"class":1074,"line":7515},[25576],{"type":39,"tag":1072,"props":25577,"children":25578},{"style":7445},[25579],{"type":45,"value":20332},{"type":39,"tag":1072,"props":25581,"children":25582},{"class":1074,"line":7524},[25583],{"type":39,"tag":1072,"props":25584,"children":25585},{"style":7445},[25586],{"type":45,"value":20324},{"type":39,"tag":1072,"props":25588,"children":25589},{"class":1074,"line":7533},[25590],{"type":39,"tag":1072,"props":25591,"children":25592},{"style":7445},[25593],{"type":45,"value":7512},{"type":39,"tag":1072,"props":25595,"children":25596},{"class":1074,"line":7542},[25597],{"type":39,"tag":1072,"props":25598,"children":25599},{"style":7445},[25600],{"type":45,"value":24340},{"type":39,"tag":1072,"props":25602,"children":25603},{"class":1074,"line":7551},[25604],{"type":39,"tag":1072,"props":25605,"children":25606},{"style":7445},[25607],{"type":45,"value":11546},{"type":39,"tag":1072,"props":25609,"children":25610},{"class":1074,"line":2380},[25611],{"type":39,"tag":1072,"props":25612,"children":25613},{"style":7445},[25614],{"type":45,"value":7539},{"type":39,"tag":1072,"props":25616,"children":25617},{"class":1074,"line":7568},[25618],{"type":39,"tag":1072,"props":25619,"children":25620},{"style":7445},[25621],{"type":45,"value":7548},{"type":39,"tag":1072,"props":25623,"children":25624},{"class":1074,"line":7577},[25625],{"type":39,"tag":1072,"props":25626,"children":25627},{"style":7445},[25628],{"type":45,"value":7557},{"type":39,"tag":1072,"props":25630,"children":25631},{"class":1074,"line":7585},[25632],{"type":39,"tag":1072,"props":25633,"children":25634},{"style":7445},[25635],{"type":45,"value":7635},{"type":39,"tag":1072,"props":25637,"children":25638},{"class":1074,"line":7593},[25639],{"type":39,"tag":1072,"props":25640,"children":25641},{"emptyLinePlaceholder":19},[25642],{"type":45,"value":7644},{"type":39,"tag":1072,"props":25644,"children":25645},{"class":1074,"line":7602},[25646,25650,25654,25658],{"type":39,"tag":1072,"props":25647,"children":25648},{"style":1195},[25649],{"type":45,"value":17279},{"type":39,"tag":1072,"props":25651,"children":25652},{"style":1090},[25653],{"type":45,"value":24394},{"type":39,"tag":1072,"props":25655,"children":25656},{"style":1195},[25657],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25659,"children":25660},{"style":1090},[25661],{"type":45,"value":17293},{"type":39,"tag":1072,"props":25663,"children":25664},{"class":1074,"line":7611},[25665],{"type":39,"tag":1072,"props":25666,"children":25667},{"style":1195},[25668],{"type":45,"value":17301},{"type":39,"tag":1072,"props":25670,"children":25671},{"class":1074,"line":7620},[25672,25676,25680,25684,25688,25692,25696,25700],{"type":39,"tag":1072,"props":25673,"children":25674},{"style":1195},[25675],{"type":45,"value":22064},{"type":39,"tag":1072,"props":25677,"children":25678},{"style":1090},[25679],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25681,"children":25682},{"style":1096},[25683],{"type":45,"value":7820},{"type":39,"tag":1072,"props":25685,"children":25686},{"style":1090},[25687],{"type":45,"value":934},{"type":39,"tag":1072,"props":25689,"children":25690},{"style":1096},[25691],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25693,"children":25694},{"style":1090},[25695],{"type":45,"value":8344},{"type":39,"tag":1072,"props":25697,"children":25698},{"style":1195},[25699],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25701,"children":25702},{"style":1090},[25703],{"type":45,"value":7755},{"type":39,"tag":1072,"props":25705,"children":25706},{"class":1074,"line":7629},[25707,25712,25716,25720,25724,25728,25732,25736,25740,25744,25748,25752,25756,25760,25764,25768],{"type":39,"tag":1072,"props":25708,"children":25709},{"style":1090},[25710],{"type":45,"value":25711},"        COUNTIF(",{"type":39,"tag":1072,"props":25713,"children":25714},{"style":1195},[25715],{"type":45,"value":10140},{"type":39,"tag":1072,"props":25717,"children":25718},{"style":1090},[25719],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25721,"children":25722},{"style":1096},[25723],{"type":45,"value":8358},{"type":39,"tag":1072,"props":25725,"children":25726},{"style":1090},[25727],{"type":45,"value":934},{"type":39,"tag":1072,"props":25729,"children":25730},{"style":1096},[25731],{"type":45,"value":17343},{"type":39,"tag":1072,"props":25733,"children":25734},{"style":1090},[25735],{"type":45,"value":8344},{"type":39,"tag":1072,"props":25737,"children":25738},{"style":1195},[25739],{"type":45,"value":8349},{"type":39,"tag":1072,"props":25741,"children":25742},{"style":1195},[25743],{"type":45,"value":9143},{"type":39,"tag":1072,"props":25745,"children":25746},{"style":1090},[25747],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25749,"children":25750},{"style":1096},[25751],{"type":45,"value":7820},{"type":39,"tag":1072,"props":25753,"children":25754},{"style":1090},[25755],{"type":45,"value":934},{"type":39,"tag":1072,"props":25757,"children":25758},{"style":1096},[25759],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25761,"children":25762},{"style":1090},[25763],{"type":45,"value":7861},{"type":39,"tag":1072,"props":25765,"children":25766},{"style":1195},[25767],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25769,"children":25770},{"style":1090},[25771],{"type":45,"value":24498},{"type":39,"tag":1072,"props":25773,"children":25774},{"class":1074,"line":7638},[25775,25779,25783,25787,25791,25795,25799,25803,25807,25811,25815,25819,25823,25827,25831,25835],{"type":39,"tag":1072,"props":25776,"children":25777},{"style":1090},[25778],{"type":45,"value":25711},{"type":39,"tag":1072,"props":25780,"children":25781},{"style":1195},[25782],{"type":45,"value":10140},{"type":39,"tag":1072,"props":25784,"children":25785},{"style":1090},[25786],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25788,"children":25789},{"style":1096},[25790],{"type":45,"value":8358},{"type":39,"tag":1072,"props":25792,"children":25793},{"style":1090},[25794],{"type":45,"value":934},{"type":39,"tag":1072,"props":25796,"children":25797},{"style":1096},[25798],{"type":45,"value":17343},{"type":39,"tag":1072,"props":25800,"children":25801},{"style":1090},[25802],{"type":45,"value":8344},{"type":39,"tag":1072,"props":25804,"children":25805},{"style":1195},[25806],{"type":45,"value":24526},{"type":39,"tag":1072,"props":25808,"children":25809},{"style":1195},[25810],{"type":45,"value":9143},{"type":39,"tag":1072,"props":25812,"children":25813},{"style":1090},[25814],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25816,"children":25817},{"style":1096},[25818],{"type":45,"value":7820},{"type":39,"tag":1072,"props":25820,"children":25821},{"style":1090},[25822],{"type":45,"value":934},{"type":39,"tag":1072,"props":25824,"children":25825},{"style":1096},[25826],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25828,"children":25829},{"style":1090},[25830],{"type":45,"value":7861},{"type":39,"tag":1072,"props":25832,"children":25833},{"style":1195},[25834],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25836,"children":25837},{"style":1090},[25838],{"type":45,"value":24555},{"type":39,"tag":1072,"props":25840,"children":25841},{"class":1074,"line":7647},[25842,25846,25850,25854,25858],{"type":39,"tag":1072,"props":25843,"children":25844},{"style":1195},[25845],{"type":45,"value":17413},{"type":39,"tag":1072,"props":25847,"children":25848},{"style":1096},[25849],{"type":45,"value":15691},{"type":39,"tag":1072,"props":25851,"children":25852},{"style":1090},[25853],{"type":45,"value":934},{"type":39,"tag":1072,"props":25855,"children":25856},{"style":1096},[25857],{"type":45,"value":16313},{"type":39,"tag":1072,"props":25859,"children":25860},{"style":1090},[25861],{"type":45,"value":8246},{"type":39,"tag":1072,"props":25863,"children":25864},{"class":1074,"line":7656},[25865,25869,25873,25877,25881],{"type":39,"tag":1072,"props":25866,"children":25867},{"style":1195},[25868],{"type":45,"value":24586},{"type":39,"tag":1072,"props":25870,"children":25871},{"style":1096},[25872],{"type":45,"value":15691},{"type":39,"tag":1072,"props":25874,"children":25875},{"style":1090},[25876],{"type":45,"value":934},{"type":39,"tag":1072,"props":25878,"children":25879},{"style":1096},[25880],{"type":45,"value":17450},{"type":39,"tag":1072,"props":25882,"children":25883},{"style":1090},[25884],{"type":45,"value":8272},{"type":39,"tag":1072,"props":25886,"children":25887},{"class":1074,"line":7684},[25888,25892,25896,25900,25904,25908,25912,25916],{"type":39,"tag":1072,"props":25889,"children":25890},{"style":1195},[25891],{"type":45,"value":17462},{"type":39,"tag":1072,"props":25893,"children":25894},{"style":1096},[25895],{"type":45,"value":8286},{"type":39,"tag":1072,"props":25897,"children":25898},{"style":1090},[25899],{"type":45,"value":934},{"type":39,"tag":1072,"props":25901,"children":25902},{"style":1096},[25903],{"type":45,"value":17318},{"type":39,"tag":1072,"props":25905,"children":25906},{"style":1195},[25907],{"type":45,"value":8299},{"type":39,"tag":1072,"props":25909,"children":25910},{"style":1096},[25911],{"type":45,"value":8304},{"type":39,"tag":1072,"props":25913,"children":25914},{"style":1090},[25915],{"type":45,"value":934},{"type":39,"tag":1072,"props":25917,"children":25918},{"style":1096},[25919],{"type":45,"value":17491},{"type":39,"tag":1072,"props":25921,"children":25922},{"class":1074,"line":7706},[25923,25927,25931,25935,25939,25943],{"type":39,"tag":1072,"props":25924,"children":25925},{"style":1195},[25926],{"type":45,"value":17499},{"type":39,"tag":1072,"props":25928,"children":25929},{"style":1096},[25930],{"type":45,"value":8286},{"type":39,"tag":1072,"props":25932,"children":25933},{"style":1090},[25934],{"type":45,"value":934},{"type":39,"tag":1072,"props":25936,"children":25937},{"style":1096},[25938],{"type":45,"value":17512},{"type":39,"tag":1072,"props":25940,"children":25941},{"style":1195},[25942],{"type":45,"value":8299},{"type":39,"tag":1072,"props":25944,"children":25945},{"style":1084},[25946],{"type":45,"value":17521},{"type":39,"tag":1072,"props":25948,"children":25949},{"class":1074,"line":7732},[25950,25954,25958,25962,25966,25970,25974],{"type":39,"tag":1072,"props":25951,"children":25952},{"style":1195},[25953],{"type":45,"value":17611},{"type":39,"tag":1072,"props":25955,"children":25956},{"style":1195},[25957],{"type":45,"value":9143},{"type":39,"tag":1072,"props":25959,"children":25960},{"style":1090},[25961],{"type":45,"value":7815},{"type":39,"tag":1072,"props":25963,"children":25964},{"style":1096},[25965],{"type":45,"value":7820},{"type":39,"tag":1072,"props":25967,"children":25968},{"style":1090},[25969],{"type":45,"value":934},{"type":39,"tag":1072,"props":25971,"children":25972},{"style":1096},[25973],{"type":45,"value":17376},{"type":39,"tag":1072,"props":25975,"children":25976},{"style":1090},[25977],{"type":45,"value":8372},{"type":39,"tag":1072,"props":25979,"children":25980},{"class":1074,"line":7758},[25981],{"type":39,"tag":1072,"props":25982,"children":25983},{"style":1090},[25984],{"type":45,"value":17529},{"type":39,"tag":1072,"props":25986,"children":25987},{"class":1074,"line":7783},[25988,25992,25996],{"type":39,"tag":1072,"props":25989,"children":25990},{"style":1090},[25991],{"type":45,"value":24706},{"type":39,"tag":1072,"props":25993,"children":25994},{"style":1195},[25995],{"type":45,"value":7866},{"type":39,"tag":1072,"props":25997,"children":25998},{"style":1090},[25999],{"type":45,"value":17293},{"type":39,"tag":1072,"props":26001,"children":26002},{"class":1074,"line":7804},[26003],{"type":39,"tag":1072,"props":26004,"children":26005},{"style":1195},[26006],{"type":45,"value":17301},{"type":39,"tag":1072,"props":26008,"children":26009},{"class":1074,"line":7874},[26010],{"type":39,"tag":1072,"props":26011,"children":26012},{"style":1090},[26013],{"type":45,"value":20587},{"type":39,"tag":1072,"props":26015,"children":26016},{"class":1074,"line":7936},[26017,26021,26025,26029,26033],{"type":39,"tag":1072,"props":26018,"children":26019},{"style":1096},[26020],{"type":45,"value":20440},{"type":39,"tag":1072,"props":26022,"children":26023},{"style":1090},[26024],{"type":45,"value":20606},{"type":39,"tag":1072,"props":26026,"children":26027},{"style":1195},[26028],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26030,"children":26031},{"style":1195},[26032],{"type":45,"value":20615},{"type":39,"tag":1072,"props":26034,"children":26035},{"style":1090},[26036],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26038,"children":26039},{"class":1074,"line":7998},[26040,26044,26048,26052],{"type":39,"tag":1072,"props":26041,"children":26042},{"style":1096},[26043],{"type":45,"value":20440},{"type":39,"tag":1072,"props":26045,"children":26046},{"style":1090},[26047],{"type":45,"value":20631},{"type":39,"tag":1072,"props":26049,"children":26050},{"style":1195},[26051],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26053,"children":26054},{"style":1090},[26055],{"type":45,"value":24771},{"type":39,"tag":1072,"props":26057,"children":26058},{"class":1074,"line":8060},[26059,26063,26067,26071],{"type":39,"tag":1072,"props":26060,"children":26061},{"style":1096},[26062],{"type":45,"value":20440},{"type":39,"tag":1072,"props":26064,"children":26065},{"style":1090},[26066],{"type":45,"value":20651},{"type":39,"tag":1072,"props":26068,"children":26069},{"style":1195},[26070],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26072,"children":26073},{"style":1090},[26074],{"type":45,"value":20660},{"type":39,"tag":1072,"props":26076,"children":26077},{"class":1074,"line":8081},[26078,26082,26086,26090],{"type":39,"tag":1072,"props":26079,"children":26080},{"style":1195},[26081],{"type":45,"value":17413},{"type":39,"tag":1072,"props":26083,"children":26084},{"style":1096},[26085],{"type":45,"value":15691},{"type":39,"tag":1072,"props":26087,"children":26088},{"style":1090},[26089],{"type":45,"value":934},{"type":39,"tag":1072,"props":26091,"children":26092},{"style":1096},[26093],{"type":45,"value":20680},{"type":39,"tag":1072,"props":26095,"children":26096},{"class":1074,"line":8102},[26097,26101],{"type":39,"tag":1072,"props":26098,"children":26099},{"style":1195},[26100],{"type":45,"value":17611},{"type":39,"tag":1072,"props":26102,"children":26103},{"style":1090},[26104],{"type":45,"value":24821},{"type":39,"tag":1072,"props":26106,"children":26107},{"class":1074,"line":8123},[26108],{"type":39,"tag":1072,"props":26109,"children":26110},{"style":1090},[26111],{"type":45,"value":17529},{"type":39,"tag":1072,"props":26113,"children":26114},{"class":1074,"line":8169},[26115,26119,26123],{"type":39,"tag":1072,"props":26116,"children":26117},{"style":1090},[26118],{"type":45,"value":24836},{"type":39,"tag":1072,"props":26120,"children":26121},{"style":1195},[26122],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26124,"children":26125},{"style":1090},[26126],{"type":45,"value":17293},{"type":39,"tag":1072,"props":26128,"children":26129},{"class":1074,"line":8195},[26130],{"type":39,"tag":1072,"props":26131,"children":26132},{"style":1195},[26133],{"type":45,"value":17301},{"type":39,"tag":1072,"props":26135,"children":26136},{"class":1074,"line":8221},[26137],{"type":39,"tag":1072,"props":26138,"children":26139},{"style":1090},[26140],{"type":45,"value":20424},{"type":39,"tag":1072,"props":26142,"children":26143},{"class":1074,"line":8249},[26144,26148,26152,26156],{"type":39,"tag":1072,"props":26145,"children":26146},{"style":1096},[26147],{"type":45,"value":20440},{"type":39,"tag":1072,"props":26149,"children":26150},{"style":1090},[26151],{"type":45,"value":20445},{"type":39,"tag":1072,"props":26153,"children":26154},{"style":1195},[26155],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26157,"children":26158},{"style":1090},[26159],{"type":45,"value":24878},{"type":39,"tag":1072,"props":26161,"children":26162},{"class":1074,"line":8275},[26163,26167,26171,26175],{"type":39,"tag":1072,"props":26164,"children":26165},{"style":1195},[26166],{"type":45,"value":17413},{"type":39,"tag":1072,"props":26168,"children":26169},{"style":1096},[26170],{"type":45,"value":15691},{"type":39,"tag":1072,"props":26172,"children":26173},{"style":1090},[26174],{"type":45,"value":934},{"type":39,"tag":1072,"props":26176,"children":26177},{"style":1096},[26178],{"type":45,"value":20537},{"type":39,"tag":1072,"props":26180,"children":26181},{"class":1074,"line":8316},[26182,26186],{"type":39,"tag":1072,"props":26183,"children":26184},{"style":1195},[26185],{"type":45,"value":17611},{"type":39,"tag":1072,"props":26187,"children":26188},{"style":1090},[26189],{"type":45,"value":24909},{"type":39,"tag":1072,"props":26191,"children":26192},{"class":1074,"line":9194},[26193],{"type":39,"tag":1072,"props":26194,"children":26195},{"style":1090},[26196],{"type":45,"value":8372},{"type":39,"tag":1072,"props":26198,"children":26199},{"class":1074,"line":9253},[26200],{"type":39,"tag":1072,"props":26201,"children":26202},{"style":1195},[26203],{"type":45,"value":7653},{"type":39,"tag":1072,"props":26205,"children":26206},{"class":1074,"line":20944},[26207,26211,26215,26219,26223],{"type":39,"tag":1072,"props":26208,"children":26209},{"style":1096},[26210],{"type":45,"value":24931},{"type":39,"tag":1072,"props":26212,"children":26213},{"style":1090},[26214],{"type":45,"value":934},{"type":39,"tag":1072,"props":26216,"children":26217},{"style":1096},[26218],{"type":45,"value":17376},{"type":39,"tag":1072,"props":26220,"children":26221},{"style":1195},[26222],{"type":45,"value":7676},{"type":39,"tag":1072,"props":26224,"children":26225},{"style":1090},[26226],{"type":45,"value":24948},{"type":39,"tag":1072,"props":26228,"children":26229},{"class":1074,"line":20952},[26230,26234,26238,26242],{"type":39,"tag":1072,"props":26231,"children":26232},{"style":1096},[26233],{"type":45,"value":24931},{"type":39,"tag":1072,"props":26235,"children":26236},{"style":1090},[26237],{"type":45,"value":934},{"type":39,"tag":1072,"props":26239,"children":26240},{"style":1096},[26241],{"type":45,"value":24964},{"type":39,"tag":1072,"props":26243,"children":26244},{"style":1090},[26245],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26247,"children":26248},{"class":1074,"line":20960},[26249,26253,26257,26261],{"type":39,"tag":1072,"props":26250,"children":26251},{"style":1096},[26252],{"type":45,"value":24931},{"type":39,"tag":1072,"props":26254,"children":26255},{"style":1090},[26256],{"type":45,"value":934},{"type":39,"tag":1072,"props":26258,"children":26259},{"style":1096},[26260],{"type":45,"value":24984},{"type":39,"tag":1072,"props":26262,"children":26263},{"style":1090},[26264],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26266,"children":26267},{"class":1074,"line":20986},[26268,26272,26276,26280],{"type":39,"tag":1072,"props":26269,"children":26270},{"style":1096},[26271],{"type":45,"value":24931},{"type":39,"tag":1072,"props":26273,"children":26274},{"style":1090},[26275],{"type":45,"value":934},{"type":39,"tag":1072,"props":26277,"children":26278},{"style":1096},[26279],{"type":45,"value":25004},{"type":39,"tag":1072,"props":26281,"children":26282},{"style":1090},[26283],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26285,"children":26286},{"class":1074,"line":21006},[26287,26291,26295,26299],{"type":39,"tag":1072,"props":26288,"children":26289},{"style":1096},[26290],{"type":45,"value":24931},{"type":39,"tag":1072,"props":26292,"children":26293},{"style":1090},[26294],{"type":45,"value":934},{"type":39,"tag":1072,"props":26296,"children":26297},{"style":1096},[26298],{"type":45,"value":25024},{"type":39,"tag":1072,"props":26300,"children":26301},{"style":1090},[26302],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26304,"children":26305},{"class":1074,"line":21027},[26306,26310,26314,26318],{"type":39,"tag":1072,"props":26307,"children":26308},{"style":1096},[26309],{"type":45,"value":24931},{"type":39,"tag":1072,"props":26311,"children":26312},{"style":1090},[26313],{"type":45,"value":934},{"type":39,"tag":1072,"props":26315,"children":26316},{"style":1096},[26317],{"type":45,"value":25044},{"type":39,"tag":1072,"props":26319,"children":26320},{"style":1090},[26321],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26323,"children":26324},{"class":1074,"line":21048},[26325,26329,26333,26337],{"type":39,"tag":1072,"props":26326,"children":26327},{"style":1096},[26328],{"type":45,"value":25056},{"type":39,"tag":1072,"props":26330,"children":26331},{"style":1090},[26332],{"type":45,"value":934},{"type":39,"tag":1072,"props":26334,"children":26335},{"style":1096},[26336],{"type":45,"value":25065},{"type":39,"tag":1072,"props":26338,"children":26339},{"style":1090},[26340],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26342,"children":26343},{"class":1074,"line":21069},[26344,26348,26352,26356],{"type":39,"tag":1072,"props":26345,"children":26346},{"style":1096},[26347],{"type":45,"value":25056},{"type":39,"tag":1072,"props":26349,"children":26350},{"style":1090},[26351],{"type":45,"value":934},{"type":39,"tag":1072,"props":26353,"children":26354},{"style":1096},[26355],{"type":45,"value":25085},{"type":39,"tag":1072,"props":26357,"children":26358},{"style":1090},[26359],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26361,"children":26362},{"class":1074,"line":21090},[26363,26367,26371,26375],{"type":39,"tag":1072,"props":26364,"children":26365},{"style":1096},[26366],{"type":45,"value":25097},{"type":39,"tag":1072,"props":26368,"children":26369},{"style":1090},[26370],{"type":45,"value":934},{"type":39,"tag":1072,"props":26372,"children":26373},{"style":1096},[26374],{"type":45,"value":13288},{"type":39,"tag":1072,"props":26376,"children":26377},{"style":1090},[26378],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26380,"children":26381},{"class":1074,"line":21111},[26382,26386,26390,26394],{"type":39,"tag":1072,"props":26383,"children":26384},{"style":1096},[26385],{"type":45,"value":25097},{"type":39,"tag":1072,"props":26387,"children":26388},{"style":1090},[26389],{"type":45,"value":934},{"type":39,"tag":1072,"props":26391,"children":26392},{"style":1096},[26393],{"type":45,"value":25125},{"type":39,"tag":1072,"props":26395,"children":26396},{"style":1090},[26397],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26399,"children":26400},{"class":1074,"line":21131},[26401,26405,26409,26413,26417,26421,26425,26429,26433,26437,26441,26445,26449,26453,26457,26461,26465,26469,26473,26477,26481],{"type":39,"tag":1072,"props":26402,"children":26403},{"style":1096},[26404],{"type":45,"value":15571},{"type":39,"tag":1072,"props":26406,"children":26407},{"style":1090},[26408],{"type":45,"value":7815},{"type":39,"tag":1072,"props":26410,"children":26411},{"style":1096},[26412],{"type":45,"value":25145},{"type":39,"tag":1072,"props":26414,"children":26415},{"style":1090},[26416],{"type":45,"value":934},{"type":39,"tag":1072,"props":26418,"children":26419},{"style":1096},[26420],{"type":45,"value":25154},{"type":39,"tag":1072,"props":26422,"children":26423},{"style":1195},[26424],{"type":45,"value":8143},{"type":39,"tag":1072,"props":26426,"children":26427},{"style":1096},[26428],{"type":45,"value":16167},{"type":39,"tag":1072,"props":26430,"children":26431},{"style":1090},[26432],{"type":45,"value":7815},{"type":39,"tag":1072,"props":26434,"children":26435},{"style":1096},[26436],{"type":45,"value":25145},{"type":39,"tag":1072,"props":26438,"children":26439},{"style":1090},[26440],{"type":45,"value":934},{"type":39,"tag":1072,"props":26442,"children":26443},{"style":1096},[26444],{"type":45,"value":13288},{"type":39,"tag":1072,"props":26446,"children":26447},{"style":1090},[26448],{"type":45,"value":978},{"type":39,"tag":1072,"props":26450,"children":26451},{"style":1096},[26452],{"type":45,"value":8157},{"type":39,"tag":1072,"props":26454,"children":26455},{"style":1090},[26456],{"type":45,"value":8344},{"type":39,"tag":1072,"props":26458,"children":26459},{"style":1195},[26460],{"type":45,"value":13780},{"type":39,"tag":1072,"props":26462,"children":26463},{"style":1096},[26464],{"type":45,"value":8148},{"type":39,"tag":1072,"props":26466,"children":26467},{"style":1090},[26468],{"type":45,"value":978},{"type":39,"tag":1072,"props":26470,"children":26471},{"style":1096},[26472],{"type":45,"value":7856},{"type":39,"tag":1072,"props":26474,"children":26475},{"style":1090},[26476],{"type":45,"value":8344},{"type":39,"tag":1072,"props":26478,"children":26479},{"style":1195},[26480],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26482,"children":26483},{"style":1090},[26484],{"type":45,"value":25219},{"type":39,"tag":1072,"props":26486,"children":26487},{"class":1074,"line":21153},[26488,26492,26496,26500],{"type":39,"tag":1072,"props":26489,"children":26490},{"style":1096},[26491],{"type":45,"value":25227},{"type":39,"tag":1072,"props":26493,"children":26494},{"style":1090},[26495],{"type":45,"value":934},{"type":39,"tag":1072,"props":26497,"children":26498},{"style":1096},[26499],{"type":45,"value":25236},{"type":39,"tag":1072,"props":26501,"children":26502},{"style":1090},[26503],{"type":45,"value":7703},{"type":39,"tag":1072,"props":26505,"children":26506},{"class":1074,"line":21231},[26507,26511,26515,26519,26523,26527,26531,26535,26539,26543,26547,26551,26555,26559,26563,26567,26571,26575],{"type":39,"tag":1072,"props":26508,"children":26509},{"style":1096},[26510],{"type":45,"value":15571},{"type":39,"tag":1072,"props":26512,"children":26513},{"style":1090},[26514],{"type":45,"value":7815},{"type":39,"tag":1072,"props":26516,"children":26517},{"style":1096},[26518],{"type":45,"value":25256},{"type":39,"tag":1072,"props":26520,"children":26521},{"style":1090},[26522],{"type":45,"value":934},{"type":39,"tag":1072,"props":26524,"children":26525},{"style":1096},[26526],{"type":45,"value":24964},{"type":39,"tag":1072,"props":26528,"children":26529},{"style":1195},[26530],{"type":45,"value":8143},{"type":39,"tag":1072,"props":26532,"children":26533},{"style":1096},[26534],{"type":45,"value":16167},{"type":39,"tag":1072,"props":26536,"children":26537},{"style":1090},[26538],{"type":45,"value":7815},{"type":39,"tag":1072,"props":26540,"children":26541},{"style":1096},[26542],{"type":45,"value":25281},{"type":39,"tag":1072,"props":26544,"children":26545},{"style":1090},[26546],{"type":45,"value":934},{"type":39,"tag":1072,"props":26548,"children":26549},{"style":1096},[26550],{"type":45,"value":25236},{"type":39,"tag":1072,"props":26552,"children":26553},{"style":1090},[26554],{"type":45,"value":978},{"type":39,"tag":1072,"props":26556,"children":26557},{"style":1096},[26558],{"type":45,"value":8157},{"type":39,"tag":1072,"props":26560,"children":26561},{"style":1090},[26562],{"type":45,"value":15600},{"type":39,"tag":1072,"props":26564,"children":26565},{"style":1096},[26566],{"type":45,"value":7856},{"type":39,"tag":1072,"props":26568,"children":26569},{"style":1090},[26570],{"type":45,"value":8344},{"type":39,"tag":1072,"props":26572,"children":26573},{"style":1195},[26574],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26576,"children":26577},{"style":1090},[26578],{"type":45,"value":25318},{"type":39,"tag":1072,"props":26580,"children":26581},{"class":1074,"line":21308},[26582,26586,26590,26594,26598],{"type":39,"tag":1072,"props":26583,"children":26584},{"style":1195},[26585],{"type":45,"value":8227},{"type":39,"tag":1072,"props":26587,"children":26588},{"style":1096},[26589],{"type":45,"value":25330},{"type":39,"tag":1072,"props":26591,"children":26592},{"style":1090},[26593],{"type":45,"value":934},{"type":39,"tag":1072,"props":26595,"children":26596},{"style":1096},[26597],{"type":45,"value":25339},{"type":39,"tag":1072,"props":26599,"children":26600},{"style":1090},[26601],{"type":45,"value":25344},{"type":39,"tag":1072,"props":26603,"children":26604},{"class":1074,"line":21397},[26605,26609,26613,26617,26621,26625,26629,26633,26637,26641],{"type":39,"tag":1072,"props":26606,"children":26607},{"style":1195},[26608],{"type":45,"value":7335},{"type":39,"tag":1072,"props":26610,"children":26611},{"style":1090},[26612],{"type":45,"value":25356},{"type":39,"tag":1072,"props":26614,"children":26615},{"style":1195},[26616],{"type":45,"value":25361},{"type":39,"tag":1072,"props":26618,"children":26619},{"style":1096},[26620],{"type":45,"value":25366},{"type":39,"tag":1072,"props":26622,"children":26623},{"style":1090},[26624],{"type":45,"value":934},{"type":39,"tag":1072,"props":26626,"children":26627},{"style":1096},[26628],{"type":45,"value":17376},{"type":39,"tag":1072,"props":26630,"children":26631},{"style":1195},[26632],{"type":45,"value":8299},{"type":39,"tag":1072,"props":26634,"children":26635},{"style":1096},[26636],{"type":45,"value":25383},{"type":39,"tag":1072,"props":26638,"children":26639},{"style":1090},[26640],{"type":45,"value":934},{"type":39,"tag":1072,"props":26642,"children":26643},{"style":1096},[26644],{"type":45,"value":21544},{"type":39,"tag":1072,"props":26646,"children":26647},{"class":1074,"line":21410},[26648,26652,26656,26660,26664,26668,26672,26676,26680,26684],{"type":39,"tag":1072,"props":26649,"children":26650},{"style":1195},[26651],{"type":45,"value":7335},{"type":39,"tag":1072,"props":26653,"children":26654},{"style":1090},[26655],{"type":45,"value":25403},{"type":39,"tag":1072,"props":26657,"children":26658},{"style":1195},[26659],{"type":45,"value":25361},{"type":39,"tag":1072,"props":26661,"children":26662},{"style":1096},[26663],{"type":45,"value":25366},{"type":39,"tag":1072,"props":26665,"children":26666},{"style":1090},[26667],{"type":45,"value":934},{"type":39,"tag":1072,"props":26669,"children":26670},{"style":1096},[26671],{"type":45,"value":17376},{"type":39,"tag":1072,"props":26673,"children":26674},{"style":1195},[26675],{"type":45,"value":8299},{"type":39,"tag":1072,"props":26677,"children":26678},{"style":1096},[26679],{"type":45,"value":25428},{"type":39,"tag":1072,"props":26681,"children":26682},{"style":1090},[26683],{"type":45,"value":934},{"type":39,"tag":1072,"props":26685,"children":26686},{"style":1096},[26687],{"type":45,"value":20888},{"type":39,"tag":1072,"props":26689,"children":26690},{"class":1074,"line":21423},[26691,26695,26699,26703,26707,26711,26715,26719,26723,26727],{"type":39,"tag":1072,"props":26692,"children":26693},{"style":1195},[26694],{"type":45,"value":7335},{"type":39,"tag":1072,"props":26696,"children":26697},{"style":1090},[26698],{"type":45,"value":25448},{"type":39,"tag":1072,"props":26700,"children":26701},{"style":1195},[26702],{"type":45,"value":25361},{"type":39,"tag":1072,"props":26704,"children":26705},{"style":1096},[26706],{"type":45,"value":25366},{"type":39,"tag":1072,"props":26708,"children":26709},{"style":1090},[26710],{"type":45,"value":934},{"type":39,"tag":1072,"props":26712,"children":26713},{"style":1096},[26714],{"type":45,"value":17376},{"type":39,"tag":1072,"props":26716,"children":26717},{"style":1195},[26718],{"type":45,"value":8299},{"type":39,"tag":1072,"props":26720,"children":26721},{"style":1096},[26722],{"type":45,"value":25473},{"type":39,"tag":1072,"props":26724,"children":26725},{"style":1090},[26726],{"type":45,"value":934},{"type":39,"tag":1072,"props":26728,"children":26729},{"style":1096},[26730],{"type":45,"value":25482},{"type":39,"tag":1072,"props":26732,"children":26733},{"class":1074,"line":21460},[26734,26738,26742],{"type":39,"tag":1072,"props":26735,"children":26736},{"style":1195},[26737],{"type":45,"value":15720},{"type":39,"tag":1072,"props":26739,"children":26740},{"style":1090},[26741],{"type":45,"value":25494},{"type":39,"tag":1072,"props":26743,"children":26744},{"style":1195},[26745],{"type":45,"value":25499},{"type":39,"tag":1248,"props":26747,"children":26748},{"v-slot:snowflake":7},[26749],{"type":39,"tag":1062,"props":26750,"children":26752},{"className":7433,"code":26751,"language":7435,"meta":7,"style":7},"\u002F* @bruin\nname: reports.rpt_daily_kpis\ntype: sql\nmaterialization:\n  type: table\ndepends:\n  - reports.rpt_daily_revenue\n  - staging.stg_customers\n  - staging.stg_orders\n  - staging.stg_web_sessions\n  - staging.stg_marketing_spend\ncolumns:\n  - name: kpi_date\n    type: date\n    checks:\n      - name: not_null\n      - name: unique\n@bruin *\u002F\n\nWITH daily_customers AS (\n    SELECT\n        o.order_date::DATE AS order_date,\n        COUNT(CASE WHEN c.first_seen_at::DATE = o.order_date::DATE THEN 1 END) AS new_customers,\n        COUNT(CASE WHEN c.first_seen_at::DATE \u003C o.order_date::DATE THEN 1 END) AS returning_customers\n    FROM staging.stg_orders o\n    LEFT JOIN staging.stg_customers c\n        ON o.customer_email = c.customer_email\n    WHERE o.payment_status = 'paid'\n    GROUP BY o.order_date::DATE\n),\ndaily_sessions AS (\n    SELECT\n        session_date,\n        sum(total_sessions) AS sessions,\n        sum(new_users) AS new_visitors,\n        sum(purchase_events) AS purchases\n    FROM staging.stg_web_sessions\n    GROUP BY session_date\n),\ndaily_spend AS (\n    SELECT\n        spend_date,\n        sum(spend) AS total_ad_spend\n    FROM staging.stg_marketing_spend\n    GROUP BY spend_date\n)\nSELECT\n    r.order_date AS kpi_date,\n    r.net_revenue,\n    r.total_orders,\n    r.paid_orders,\n    r.avg_order_value,\n    r.cancellation_rate,\n    dc.new_customers,\n    dc.returning_customers,\n    ds.sessions,\n    ds.new_visitors,\n    round(ds.purchases \u002F NULLIF(ds.sessions, 0) * 100, 2) AS conversion_rate,\n    sp.total_ad_spend,\n    round(r.net_revenue \u002F NULLIF(sp.total_ad_spend, 0), 2) AS overall_roas\nFROM reports.rpt_daily_revenue r\nLEFT JOIN daily_customers dc ON r.order_date = dc.order_date\nLEFT JOIN daily_sessions ds ON r.order_date = ds.session_date\nLEFT JOIN daily_spend sp ON r.order_date = sp.spend_date\nORDER BY kpi_date DESC\n",[26753],{"type":39,"tag":70,"props":26754,"children":26755},{"__ignoreMap":7},[26756,26763,26770,26777,26784,26791,26798,26805,26812,26819,26826,26833,26840,26847,26854,26861,26868,26875,26882,26889,26908,26915,26946,27034,27122,27145,27168,27203,27230,27257,27264,27279,27286,27293,27316,27335,27354,27373,27384,27391,27406,27413,27420,27439,27458,27469,27476,27483,27506,27525,27544,27563,27582,27601,27620,27639,27658,27677,27764,27783,27858,27881,27924,27967,28010],{"type":39,"tag":1072,"props":26757,"children":26758},{"class":1074,"line":868},[26759],{"type":39,"tag":1072,"props":26760,"children":26761},{"style":7445},[26762],{"type":45,"value":7448},{"type":39,"tag":1072,"props":26764,"children":26765},{"class":1074,"line":476},[26766],{"type":39,"tag":1072,"props":26767,"children":26768},{"style":7445},[26769],{"type":45,"value":24261},{"type":39,"tag":1072,"props":26771,"children":26772},{"class":1074,"line":483},[26773],{"type":39,"tag":1072,"props":26774,"children":26775},{"style":7445},[26776],{"type":45,"value":7464},{"type":39,"tag":1072,"props":26778,"children":26779},{"class":1074,"line":1626},[26780],{"type":39,"tag":1072,"props":26781,"children":26782},{"style":7445},[26783],{"type":45,"value":7472},{"type":39,"tag":1072,"props":26785,"children":26786},{"class":1074,"line":11},[26787],{"type":39,"tag":1072,"props":26788,"children":26789},{"style":7445},[26790],{"type":45,"value":7480},{"type":39,"tag":1072,"props":26792,"children":26793},{"class":1074,"line":20},[26794],{"type":39,"tag":1072,"props":26795,"children":26796},{"style":7445},[26797],{"type":45,"value":7488},{"type":39,"tag":1072,"props":26799,"children":26800},{"class":1074,"line":1679},[26801],{"type":39,"tag":1072,"props":26802,"children":26803},{"style":7445},[26804],{"type":45,"value":24297},{"type":39,"tag":1072,"props":26806,"children":26807},{"class":1074,"line":860},[26808],{"type":39,"tag":1072,"props":26809,"children":26810},{"style":7445},[26811],{"type":45,"value":17221},{"type":39,"tag":1072,"props":26813,"children":26814},{"class":1074,"line":2907},[26815],{"type":39,"tag":1072,"props":26816,"children":26817},{"style":7445},[26818],{"type":45,"value":15238},{"type":39,"tag":1072,"props":26820,"children":26821},{"class":1074,"line":7515},[26822],{"type":39,"tag":1072,"props":26823,"children":26824},{"style":7445},[26825],{"type":45,"value":20332},{"type":39,"tag":1072,"props":26827,"children":26828},{"class":1074,"line":7524},[26829],{"type":39,"tag":1072,"props":26830,"children":26831},{"style":7445},[26832],{"type":45,"value":20324},{"type":39,"tag":1072,"props":26834,"children":26835},{"class":1074,"line":7533},[26836],{"type":39,"tag":1072,"props":26837,"children":26838},{"style":7445},[26839],{"type":45,"value":7512},{"type":39,"tag":1072,"props":26841,"children":26842},{"class":1074,"line":7542},[26843],{"type":39,"tag":1072,"props":26844,"children":26845},{"style":7445},[26846],{"type":45,"value":24340},{"type":39,"tag":1072,"props":26848,"children":26849},{"class":1074,"line":7551},[26850],{"type":39,"tag":1072,"props":26851,"children":26852},{"style":7445},[26853],{"type":45,"value":11546},{"type":39,"tag":1072,"props":26855,"children":26856},{"class":1074,"line":2380},[26857],{"type":39,"tag":1072,"props":26858,"children":26859},{"style":7445},[26860],{"type":45,"value":7539},{"type":39,"tag":1072,"props":26862,"children":26863},{"class":1074,"line":7568},[26864],{"type":39,"tag":1072,"props":26865,"children":26866},{"style":7445},[26867],{"type":45,"value":7548},{"type":39,"tag":1072,"props":26869,"children":26870},{"class":1074,"line":7577},[26871],{"type":39,"tag":1072,"props":26872,"children":26873},{"style":7445},[26874],{"type":45,"value":7557},{"type":39,"tag":1072,"props":26876,"children":26877},{"class":1074,"line":7585},[26878],{"type":39,"tag":1072,"props":26879,"children":26880},{"style":7445},[26881],{"type":45,"value":7635},{"type":39,"tag":1072,"props":26883,"children":26884},{"class":1074,"line":7593},[26885],{"type":39,"tag":1072,"props":26886,"children":26887},{"emptyLinePlaceholder":19},[26888],{"type":45,"value":7644},{"type":39,"tag":1072,"props":26890,"children":26891},{"class":1074,"line":7602},[26892,26896,26900,26904],{"type":39,"tag":1072,"props":26893,"children":26894},{"style":1195},[26895],{"type":45,"value":17279},{"type":39,"tag":1072,"props":26897,"children":26898},{"style":1090},[26899],{"type":45,"value":24394},{"type":39,"tag":1072,"props":26901,"children":26902},{"style":1195},[26903],{"type":45,"value":7866},{"type":39,"tag":1072,"props":26905,"children":26906},{"style":1090},[26907],{"type":45,"value":17293},{"type":39,"tag":1072,"props":26909,"children":26910},{"class":1074,"line":7611},[26911],{"type":39,"tag":1072,"props":26912,"children":26913},{"style":1195},[26914],{"type":45,"value":17301},{"type":39,"tag":1072,"props":26916,"children":26917},{"class":1074,"line":7620},[26918,26922,26926,26930,26934,26938,26942],{"type":39,"tag":1072,"props":26919,"children":26920},{"style":1096},[26921],{"type":45,"value":17309},{"type":39,"tag":1072,"props":26923,"children":26924},{"style":1090},[26925],{"type":45,"value":934},{"type":39,"tag":1072,"props":26927,"children":26928},{"style":1096},[26929],{"type":45,"value":17376},{"type":39,"tag":1072,"props":26931,"children":26932},{"style":1090},[26933],{"type":45,"value":10135},{"type":39,"tag":1072,"props":26935,"children":26936},{"style":1195},[26937],{"type":45,"value":10140},{"type":39,"tag":1072,"props":26939,"children":26940},{"style":1195},[26941],{"type":45,"value":7676},{"type":39,"tag":1072,"props":26943,"children":26944},{"style":1090},[26945],{"type":45,"value":7755},{"type":39,"tag":1072,"props":26947,"children":26948},{"class":1074,"line":7629},[26949,26954,26958,26962,26966,26970,26974,26978,26982,26986,26990,26994,26998,27002,27006,27010,27014,27018,27022,27026,27030],{"type":39,"tag":1072,"props":26950,"children":26951},{"style":1096},[26952],{"type":45,"value":26953},"        COUNT",{"type":39,"tag":1072,"props":26955,"children":26956},{"style":1090},[26957],{"type":45,"value":7815},{"type":39,"tag":1072,"props":26959,"children":26960},{"style":1195},[26961],{"type":45,"value":13218},{"type":39,"tag":1072,"props":26963,"children":26964},{"style":1195},[26965],{"type":45,"value":13812},{"type":39,"tag":1072,"props":26967,"children":26968},{"style":1096},[26969],{"type":45,"value":8304},{"type":39,"tag":1072,"props":26971,"children":26972},{"style":1090},[26973],{"type":45,"value":934},{"type":39,"tag":1072,"props":26975,"children":26976},{"style":1096},[26977],{"type":45,"value":17343},{"type":39,"tag":1072,"props":26979,"children":26980},{"style":1090},[26981],{"type":45,"value":10135},{"type":39,"tag":1072,"props":26983,"children":26984},{"style":1195},[26985],{"type":45,"value":10140},{"type":39,"tag":1072,"props":26987,"children":26988},{"style":1195},[26989],{"type":45,"value":8299},{"type":39,"tag":1072,"props":26991,"children":26992},{"style":1096},[26993],{"type":45,"value":8286},{"type":39,"tag":1072,"props":26995,"children":26996},{"style":1090},[26997],{"type":45,"value":934},{"type":39,"tag":1072,"props":26999,"children":27000},{"style":1096},[27001],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27003,"children":27004},{"style":1090},[27005],{"type":45,"value":10135},{"type":39,"tag":1072,"props":27007,"children":27008},{"style":1195},[27009],{"type":45,"value":10140},{"type":39,"tag":1072,"props":27011,"children":27012},{"style":1195},[27013],{"type":45,"value":13407},{"type":39,"tag":1072,"props":27015,"children":27016},{"style":1096},[27017],{"type":45,"value":13844},{"type":39,"tag":1072,"props":27019,"children":27020},{"style":1195},[27021],{"type":45,"value":13849},{"type":39,"tag":1072,"props":27023,"children":27024},{"style":1090},[27025],{"type":45,"value":8344},{"type":39,"tag":1072,"props":27027,"children":27028},{"style":1195},[27029],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27031,"children":27032},{"style":1090},[27033],{"type":45,"value":24498},{"type":39,"tag":1072,"props":27035,"children":27036},{"class":1074,"line":7638},[27037,27041,27045,27049,27053,27057,27061,27065,27069,27073,27078,27082,27086,27090,27094,27098,27102,27106,27110,27114,27118],{"type":39,"tag":1072,"props":27038,"children":27039},{"style":1096},[27040],{"type":45,"value":26953},{"type":39,"tag":1072,"props":27042,"children":27043},{"style":1090},[27044],{"type":45,"value":7815},{"type":39,"tag":1072,"props":27046,"children":27047},{"style":1195},[27048],{"type":45,"value":13218},{"type":39,"tag":1072,"props":27050,"children":27051},{"style":1195},[27052],{"type":45,"value":13812},{"type":39,"tag":1072,"props":27054,"children":27055},{"style":1096},[27056],{"type":45,"value":8304},{"type":39,"tag":1072,"props":27058,"children":27059},{"style":1090},[27060],{"type":45,"value":934},{"type":39,"tag":1072,"props":27062,"children":27063},{"style":1096},[27064],{"type":45,"value":17343},{"type":39,"tag":1072,"props":27066,"children":27067},{"style":1090},[27068],{"type":45,"value":10135},{"type":39,"tag":1072,"props":27070,"children":27071},{"style":1195},[27072],{"type":45,"value":10140},{"type":39,"tag":1072,"props":27074,"children":27075},{"style":1195},[27076],{"type":45,"value":27077}," \u003C",{"type":39,"tag":1072,"props":27079,"children":27080},{"style":1096},[27081],{"type":45,"value":8286},{"type":39,"tag":1072,"props":27083,"children":27084},{"style":1090},[27085],{"type":45,"value":934},{"type":39,"tag":1072,"props":27087,"children":27088},{"style":1096},[27089],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27091,"children":27092},{"style":1090},[27093],{"type":45,"value":10135},{"type":39,"tag":1072,"props":27095,"children":27096},{"style":1195},[27097],{"type":45,"value":10140},{"type":39,"tag":1072,"props":27099,"children":27100},{"style":1195},[27101],{"type":45,"value":13407},{"type":39,"tag":1072,"props":27103,"children":27104},{"style":1096},[27105],{"type":45,"value":13844},{"type":39,"tag":1072,"props":27107,"children":27108},{"style":1195},[27109],{"type":45,"value":13849},{"type":39,"tag":1072,"props":27111,"children":27112},{"style":1090},[27113],{"type":45,"value":8344},{"type":39,"tag":1072,"props":27115,"children":27116},{"style":1195},[27117],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27119,"children":27120},{"style":1090},[27121],{"type":45,"value":24555},{"type":39,"tag":1072,"props":27123,"children":27124},{"class":1074,"line":7647},[27125,27129,27133,27137,27141],{"type":39,"tag":1072,"props":27126,"children":27127},{"style":1195},[27128],{"type":45,"value":17413},{"type":39,"tag":1072,"props":27130,"children":27131},{"style":1096},[27132],{"type":45,"value":15691},{"type":39,"tag":1072,"props":27134,"children":27135},{"style":1090},[27136],{"type":45,"value":934},{"type":39,"tag":1072,"props":27138,"children":27139},{"style":1096},[27140],{"type":45,"value":16313},{"type":39,"tag":1072,"props":27142,"children":27143},{"style":1090},[27144],{"type":45,"value":8246},{"type":39,"tag":1072,"props":27146,"children":27147},{"class":1074,"line":7656},[27148,27152,27156,27160,27164],{"type":39,"tag":1072,"props":27149,"children":27150},{"style":1195},[27151],{"type":45,"value":24586},{"type":39,"tag":1072,"props":27153,"children":27154},{"style":1096},[27155],{"type":45,"value":15691},{"type":39,"tag":1072,"props":27157,"children":27158},{"style":1090},[27159],{"type":45,"value":934},{"type":39,"tag":1072,"props":27161,"children":27162},{"style":1096},[27163],{"type":45,"value":17450},{"type":39,"tag":1072,"props":27165,"children":27166},{"style":1090},[27167],{"type":45,"value":8272},{"type":39,"tag":1072,"props":27169,"children":27170},{"class":1074,"line":7684},[27171,27175,27179,27183,27187,27191,27195,27199],{"type":39,"tag":1072,"props":27172,"children":27173},{"style":1195},[27174],{"type":45,"value":17462},{"type":39,"tag":1072,"props":27176,"children":27177},{"style":1096},[27178],{"type":45,"value":8286},{"type":39,"tag":1072,"props":27180,"children":27181},{"style":1090},[27182],{"type":45,"value":934},{"type":39,"tag":1072,"props":27184,"children":27185},{"style":1096},[27186],{"type":45,"value":17318},{"type":39,"tag":1072,"props":27188,"children":27189},{"style":1195},[27190],{"type":45,"value":8299},{"type":39,"tag":1072,"props":27192,"children":27193},{"style":1096},[27194],{"type":45,"value":8304},{"type":39,"tag":1072,"props":27196,"children":27197},{"style":1090},[27198],{"type":45,"value":934},{"type":39,"tag":1072,"props":27200,"children":27201},{"style":1096},[27202],{"type":45,"value":17491},{"type":39,"tag":1072,"props":27204,"children":27205},{"class":1074,"line":7706},[27206,27210,27214,27218,27222,27226],{"type":39,"tag":1072,"props":27207,"children":27208},{"style":1195},[27209],{"type":45,"value":17499},{"type":39,"tag":1072,"props":27211,"children":27212},{"style":1096},[27213],{"type":45,"value":8286},{"type":39,"tag":1072,"props":27215,"children":27216},{"style":1090},[27217],{"type":45,"value":934},{"type":39,"tag":1072,"props":27219,"children":27220},{"style":1096},[27221],{"type":45,"value":17512},{"type":39,"tag":1072,"props":27223,"children":27224},{"style":1195},[27225],{"type":45,"value":8299},{"type":39,"tag":1072,"props":27227,"children":27228},{"style":1084},[27229],{"type":45,"value":17521},{"type":39,"tag":1072,"props":27231,"children":27232},{"class":1074,"line":7732},[27233,27237,27241,27245,27249,27253],{"type":39,"tag":1072,"props":27234,"children":27235},{"style":1195},[27236],{"type":45,"value":17611},{"type":39,"tag":1072,"props":27238,"children":27239},{"style":1096},[27240],{"type":45,"value":8286},{"type":39,"tag":1072,"props":27242,"children":27243},{"style":1090},[27244],{"type":45,"value":934},{"type":39,"tag":1072,"props":27246,"children":27247},{"style":1096},[27248],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27250,"children":27251},{"style":1090},[27252],{"type":45,"value":10135},{"type":39,"tag":1072,"props":27254,"children":27255},{"style":1195},[27256],{"type":45,"value":10165},{"type":39,"tag":1072,"props":27258,"children":27259},{"class":1074,"line":7758},[27260],{"type":39,"tag":1072,"props":27261,"children":27262},{"style":1090},[27263],{"type":45,"value":17529},{"type":39,"tag":1072,"props":27265,"children":27266},{"class":1074,"line":7783},[27267,27271,27275],{"type":39,"tag":1072,"props":27268,"children":27269},{"style":1090},[27270],{"type":45,"value":24706},{"type":39,"tag":1072,"props":27272,"children":27273},{"style":1195},[27274],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27276,"children":27277},{"style":1090},[27278],{"type":45,"value":17293},{"type":39,"tag":1072,"props":27280,"children":27281},{"class":1074,"line":7804},[27282],{"type":39,"tag":1072,"props":27283,"children":27284},{"style":1195},[27285],{"type":45,"value":17301},{"type":39,"tag":1072,"props":27287,"children":27288},{"class":1074,"line":7874},[27289],{"type":39,"tag":1072,"props":27290,"children":27291},{"style":1090},[27292],{"type":45,"value":20587},{"type":39,"tag":1072,"props":27294,"children":27295},{"class":1074,"line":7936},[27296,27300,27304,27308,27312],{"type":39,"tag":1072,"props":27297,"children":27298},{"style":1096},[27299],{"type":45,"value":20440},{"type":39,"tag":1072,"props":27301,"children":27302},{"style":1090},[27303],{"type":45,"value":20606},{"type":39,"tag":1072,"props":27305,"children":27306},{"style":1195},[27307],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27309,"children":27310},{"style":1195},[27311],{"type":45,"value":20615},{"type":39,"tag":1072,"props":27313,"children":27314},{"style":1090},[27315],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27317,"children":27318},{"class":1074,"line":7998},[27319,27323,27327,27331],{"type":39,"tag":1072,"props":27320,"children":27321},{"style":1096},[27322],{"type":45,"value":20440},{"type":39,"tag":1072,"props":27324,"children":27325},{"style":1090},[27326],{"type":45,"value":20631},{"type":39,"tag":1072,"props":27328,"children":27329},{"style":1195},[27330],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27332,"children":27333},{"style":1090},[27334],{"type":45,"value":24771},{"type":39,"tag":1072,"props":27336,"children":27337},{"class":1074,"line":8060},[27338,27342,27346,27350],{"type":39,"tag":1072,"props":27339,"children":27340},{"style":1096},[27341],{"type":45,"value":20440},{"type":39,"tag":1072,"props":27343,"children":27344},{"style":1090},[27345],{"type":45,"value":20651},{"type":39,"tag":1072,"props":27347,"children":27348},{"style":1195},[27349],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27351,"children":27352},{"style":1090},[27353],{"type":45,"value":20660},{"type":39,"tag":1072,"props":27355,"children":27356},{"class":1074,"line":8081},[27357,27361,27365,27369],{"type":39,"tag":1072,"props":27358,"children":27359},{"style":1195},[27360],{"type":45,"value":17413},{"type":39,"tag":1072,"props":27362,"children":27363},{"style":1096},[27364],{"type":45,"value":15691},{"type":39,"tag":1072,"props":27366,"children":27367},{"style":1090},[27368],{"type":45,"value":934},{"type":39,"tag":1072,"props":27370,"children":27371},{"style":1096},[27372],{"type":45,"value":20680},{"type":39,"tag":1072,"props":27374,"children":27375},{"class":1074,"line":8102},[27376,27380],{"type":39,"tag":1072,"props":27377,"children":27378},{"style":1195},[27379],{"type":45,"value":17611},{"type":39,"tag":1072,"props":27381,"children":27382},{"style":1090},[27383],{"type":45,"value":24821},{"type":39,"tag":1072,"props":27385,"children":27386},{"class":1074,"line":8123},[27387],{"type":39,"tag":1072,"props":27388,"children":27389},{"style":1090},[27390],{"type":45,"value":17529},{"type":39,"tag":1072,"props":27392,"children":27393},{"class":1074,"line":8169},[27394,27398,27402],{"type":39,"tag":1072,"props":27395,"children":27396},{"style":1090},[27397],{"type":45,"value":24836},{"type":39,"tag":1072,"props":27399,"children":27400},{"style":1195},[27401],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27403,"children":27404},{"style":1090},[27405],{"type":45,"value":17293},{"type":39,"tag":1072,"props":27407,"children":27408},{"class":1074,"line":8195},[27409],{"type":39,"tag":1072,"props":27410,"children":27411},{"style":1195},[27412],{"type":45,"value":17301},{"type":39,"tag":1072,"props":27414,"children":27415},{"class":1074,"line":8221},[27416],{"type":39,"tag":1072,"props":27417,"children":27418},{"style":1090},[27419],{"type":45,"value":20424},{"type":39,"tag":1072,"props":27421,"children":27422},{"class":1074,"line":8249},[27423,27427,27431,27435],{"type":39,"tag":1072,"props":27424,"children":27425},{"style":1096},[27426],{"type":45,"value":20440},{"type":39,"tag":1072,"props":27428,"children":27429},{"style":1090},[27430],{"type":45,"value":20445},{"type":39,"tag":1072,"props":27432,"children":27433},{"style":1195},[27434],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27436,"children":27437},{"style":1090},[27438],{"type":45,"value":24878},{"type":39,"tag":1072,"props":27440,"children":27441},{"class":1074,"line":8275},[27442,27446,27450,27454],{"type":39,"tag":1072,"props":27443,"children":27444},{"style":1195},[27445],{"type":45,"value":17413},{"type":39,"tag":1072,"props":27447,"children":27448},{"style":1096},[27449],{"type":45,"value":15691},{"type":39,"tag":1072,"props":27451,"children":27452},{"style":1090},[27453],{"type":45,"value":934},{"type":39,"tag":1072,"props":27455,"children":27456},{"style":1096},[27457],{"type":45,"value":20537},{"type":39,"tag":1072,"props":27459,"children":27460},{"class":1074,"line":8316},[27461,27465],{"type":39,"tag":1072,"props":27462,"children":27463},{"style":1195},[27464],{"type":45,"value":17611},{"type":39,"tag":1072,"props":27466,"children":27467},{"style":1090},[27468],{"type":45,"value":24909},{"type":39,"tag":1072,"props":27470,"children":27471},{"class":1074,"line":9194},[27472],{"type":39,"tag":1072,"props":27473,"children":27474},{"style":1090},[27475],{"type":45,"value":8372},{"type":39,"tag":1072,"props":27477,"children":27478},{"class":1074,"line":9253},[27479],{"type":39,"tag":1072,"props":27480,"children":27481},{"style":1195},[27482],{"type":45,"value":7653},{"type":39,"tag":1072,"props":27484,"children":27485},{"class":1074,"line":20944},[27486,27490,27494,27498,27502],{"type":39,"tag":1072,"props":27487,"children":27488},{"style":1096},[27489],{"type":45,"value":24931},{"type":39,"tag":1072,"props":27491,"children":27492},{"style":1090},[27493],{"type":45,"value":934},{"type":39,"tag":1072,"props":27495,"children":27496},{"style":1096},[27497],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27499,"children":27500},{"style":1195},[27501],{"type":45,"value":7676},{"type":39,"tag":1072,"props":27503,"children":27504},{"style":1090},[27505],{"type":45,"value":24948},{"type":39,"tag":1072,"props":27507,"children":27508},{"class":1074,"line":20952},[27509,27513,27517,27521],{"type":39,"tag":1072,"props":27510,"children":27511},{"style":1096},[27512],{"type":45,"value":24931},{"type":39,"tag":1072,"props":27514,"children":27515},{"style":1090},[27516],{"type":45,"value":934},{"type":39,"tag":1072,"props":27518,"children":27519},{"style":1096},[27520],{"type":45,"value":24964},{"type":39,"tag":1072,"props":27522,"children":27523},{"style":1090},[27524],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27526,"children":27527},{"class":1074,"line":20960},[27528,27532,27536,27540],{"type":39,"tag":1072,"props":27529,"children":27530},{"style":1096},[27531],{"type":45,"value":24931},{"type":39,"tag":1072,"props":27533,"children":27534},{"style":1090},[27535],{"type":45,"value":934},{"type":39,"tag":1072,"props":27537,"children":27538},{"style":1096},[27539],{"type":45,"value":24984},{"type":39,"tag":1072,"props":27541,"children":27542},{"style":1090},[27543],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27545,"children":27546},{"class":1074,"line":20986},[27547,27551,27555,27559],{"type":39,"tag":1072,"props":27548,"children":27549},{"style":1096},[27550],{"type":45,"value":24931},{"type":39,"tag":1072,"props":27552,"children":27553},{"style":1090},[27554],{"type":45,"value":934},{"type":39,"tag":1072,"props":27556,"children":27557},{"style":1096},[27558],{"type":45,"value":25004},{"type":39,"tag":1072,"props":27560,"children":27561},{"style":1090},[27562],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27564,"children":27565},{"class":1074,"line":21006},[27566,27570,27574,27578],{"type":39,"tag":1072,"props":27567,"children":27568},{"style":1096},[27569],{"type":45,"value":24931},{"type":39,"tag":1072,"props":27571,"children":27572},{"style":1090},[27573],{"type":45,"value":934},{"type":39,"tag":1072,"props":27575,"children":27576},{"style":1096},[27577],{"type":45,"value":25024},{"type":39,"tag":1072,"props":27579,"children":27580},{"style":1090},[27581],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27583,"children":27584},{"class":1074,"line":21027},[27585,27589,27593,27597],{"type":39,"tag":1072,"props":27586,"children":27587},{"style":1096},[27588],{"type":45,"value":24931},{"type":39,"tag":1072,"props":27590,"children":27591},{"style":1090},[27592],{"type":45,"value":934},{"type":39,"tag":1072,"props":27594,"children":27595},{"style":1096},[27596],{"type":45,"value":25044},{"type":39,"tag":1072,"props":27598,"children":27599},{"style":1090},[27600],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27602,"children":27603},{"class":1074,"line":21048},[27604,27608,27612,27616],{"type":39,"tag":1072,"props":27605,"children":27606},{"style":1096},[27607],{"type":45,"value":25056},{"type":39,"tag":1072,"props":27609,"children":27610},{"style":1090},[27611],{"type":45,"value":934},{"type":39,"tag":1072,"props":27613,"children":27614},{"style":1096},[27615],{"type":45,"value":25065},{"type":39,"tag":1072,"props":27617,"children":27618},{"style":1090},[27619],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27621,"children":27622},{"class":1074,"line":21069},[27623,27627,27631,27635],{"type":39,"tag":1072,"props":27624,"children":27625},{"style":1096},[27626],{"type":45,"value":25056},{"type":39,"tag":1072,"props":27628,"children":27629},{"style":1090},[27630],{"type":45,"value":934},{"type":39,"tag":1072,"props":27632,"children":27633},{"style":1096},[27634],{"type":45,"value":25085},{"type":39,"tag":1072,"props":27636,"children":27637},{"style":1090},[27638],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27640,"children":27641},{"class":1074,"line":21090},[27642,27646,27650,27654],{"type":39,"tag":1072,"props":27643,"children":27644},{"style":1096},[27645],{"type":45,"value":25097},{"type":39,"tag":1072,"props":27647,"children":27648},{"style":1090},[27649],{"type":45,"value":934},{"type":39,"tag":1072,"props":27651,"children":27652},{"style":1096},[27653],{"type":45,"value":13288},{"type":39,"tag":1072,"props":27655,"children":27656},{"style":1090},[27657],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27659,"children":27660},{"class":1074,"line":21111},[27661,27665,27669,27673],{"type":39,"tag":1072,"props":27662,"children":27663},{"style":1096},[27664],{"type":45,"value":25097},{"type":39,"tag":1072,"props":27666,"children":27667},{"style":1090},[27668],{"type":45,"value":934},{"type":39,"tag":1072,"props":27670,"children":27671},{"style":1096},[27672],{"type":45,"value":25125},{"type":39,"tag":1072,"props":27674,"children":27675},{"style":1090},[27676],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27678,"children":27679},{"class":1074,"line":21131},[27680,27684,27688,27692,27696,27700,27704,27708,27712,27716,27720,27724,27728,27732,27736,27740,27744,27748,27752,27756,27760],{"type":39,"tag":1072,"props":27681,"children":27682},{"style":1096},[27683],{"type":45,"value":15571},{"type":39,"tag":1072,"props":27685,"children":27686},{"style":1090},[27687],{"type":45,"value":7815},{"type":39,"tag":1072,"props":27689,"children":27690},{"style":1096},[27691],{"type":45,"value":25145},{"type":39,"tag":1072,"props":27693,"children":27694},{"style":1090},[27695],{"type":45,"value":934},{"type":39,"tag":1072,"props":27697,"children":27698},{"style":1096},[27699],{"type":45,"value":25154},{"type":39,"tag":1072,"props":27701,"children":27702},{"style":1195},[27703],{"type":45,"value":8143},{"type":39,"tag":1072,"props":27705,"children":27706},{"style":1096},[27707],{"type":45,"value":16167},{"type":39,"tag":1072,"props":27709,"children":27710},{"style":1090},[27711],{"type":45,"value":7815},{"type":39,"tag":1072,"props":27713,"children":27714},{"style":1096},[27715],{"type":45,"value":25145},{"type":39,"tag":1072,"props":27717,"children":27718},{"style":1090},[27719],{"type":45,"value":934},{"type":39,"tag":1072,"props":27721,"children":27722},{"style":1096},[27723],{"type":45,"value":13288},{"type":39,"tag":1072,"props":27725,"children":27726},{"style":1090},[27727],{"type":45,"value":978},{"type":39,"tag":1072,"props":27729,"children":27730},{"style":1096},[27731],{"type":45,"value":8157},{"type":39,"tag":1072,"props":27733,"children":27734},{"style":1090},[27735],{"type":45,"value":8344},{"type":39,"tag":1072,"props":27737,"children":27738},{"style":1195},[27739],{"type":45,"value":13780},{"type":39,"tag":1072,"props":27741,"children":27742},{"style":1096},[27743],{"type":45,"value":8148},{"type":39,"tag":1072,"props":27745,"children":27746},{"style":1090},[27747],{"type":45,"value":978},{"type":39,"tag":1072,"props":27749,"children":27750},{"style":1096},[27751],{"type":45,"value":7856},{"type":39,"tag":1072,"props":27753,"children":27754},{"style":1090},[27755],{"type":45,"value":8344},{"type":39,"tag":1072,"props":27757,"children":27758},{"style":1195},[27759],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27761,"children":27762},{"style":1090},[27763],{"type":45,"value":25219},{"type":39,"tag":1072,"props":27765,"children":27766},{"class":1074,"line":21153},[27767,27771,27775,27779],{"type":39,"tag":1072,"props":27768,"children":27769},{"style":1096},[27770],{"type":45,"value":25227},{"type":39,"tag":1072,"props":27772,"children":27773},{"style":1090},[27774],{"type":45,"value":934},{"type":39,"tag":1072,"props":27776,"children":27777},{"style":1096},[27778],{"type":45,"value":25236},{"type":39,"tag":1072,"props":27780,"children":27781},{"style":1090},[27782],{"type":45,"value":7703},{"type":39,"tag":1072,"props":27784,"children":27785},{"class":1074,"line":21231},[27786,27790,27794,27798,27802,27806,27810,27814,27818,27822,27826,27830,27834,27838,27842,27846,27850,27854],{"type":39,"tag":1072,"props":27787,"children":27788},{"style":1096},[27789],{"type":45,"value":15571},{"type":39,"tag":1072,"props":27791,"children":27792},{"style":1090},[27793],{"type":45,"value":7815},{"type":39,"tag":1072,"props":27795,"children":27796},{"style":1096},[27797],{"type":45,"value":25256},{"type":39,"tag":1072,"props":27799,"children":27800},{"style":1090},[27801],{"type":45,"value":934},{"type":39,"tag":1072,"props":27803,"children":27804},{"style":1096},[27805],{"type":45,"value":24964},{"type":39,"tag":1072,"props":27807,"children":27808},{"style":1195},[27809],{"type":45,"value":8143},{"type":39,"tag":1072,"props":27811,"children":27812},{"style":1096},[27813],{"type":45,"value":16167},{"type":39,"tag":1072,"props":27815,"children":27816},{"style":1090},[27817],{"type":45,"value":7815},{"type":39,"tag":1072,"props":27819,"children":27820},{"style":1096},[27821],{"type":45,"value":25281},{"type":39,"tag":1072,"props":27823,"children":27824},{"style":1090},[27825],{"type":45,"value":934},{"type":39,"tag":1072,"props":27827,"children":27828},{"style":1096},[27829],{"type":45,"value":25236},{"type":39,"tag":1072,"props":27831,"children":27832},{"style":1090},[27833],{"type":45,"value":978},{"type":39,"tag":1072,"props":27835,"children":27836},{"style":1096},[27837],{"type":45,"value":8157},{"type":39,"tag":1072,"props":27839,"children":27840},{"style":1090},[27841],{"type":45,"value":15600},{"type":39,"tag":1072,"props":27843,"children":27844},{"style":1096},[27845],{"type":45,"value":7856},{"type":39,"tag":1072,"props":27847,"children":27848},{"style":1090},[27849],{"type":45,"value":8344},{"type":39,"tag":1072,"props":27851,"children":27852},{"style":1195},[27853],{"type":45,"value":7866},{"type":39,"tag":1072,"props":27855,"children":27856},{"style":1090},[27857],{"type":45,"value":25318},{"type":39,"tag":1072,"props":27859,"children":27860},{"class":1074,"line":21308},[27861,27865,27869,27873,27877],{"type":39,"tag":1072,"props":27862,"children":27863},{"style":1195},[27864],{"type":45,"value":8227},{"type":39,"tag":1072,"props":27866,"children":27867},{"style":1096},[27868],{"type":45,"value":25330},{"type":39,"tag":1072,"props":27870,"children":27871},{"style":1090},[27872],{"type":45,"value":934},{"type":39,"tag":1072,"props":27874,"children":27875},{"style":1096},[27876],{"type":45,"value":25339},{"type":39,"tag":1072,"props":27878,"children":27879},{"style":1090},[27880],{"type":45,"value":25344},{"type":39,"tag":1072,"props":27882,"children":27883},{"class":1074,"line":21397},[27884,27888,27892,27896,27900,27904,27908,27912,27916,27920],{"type":39,"tag":1072,"props":27885,"children":27886},{"style":1195},[27887],{"type":45,"value":7335},{"type":39,"tag":1072,"props":27889,"children":27890},{"style":1090},[27891],{"type":45,"value":25356},{"type":39,"tag":1072,"props":27893,"children":27894},{"style":1195},[27895],{"type":45,"value":25361},{"type":39,"tag":1072,"props":27897,"children":27898},{"style":1096},[27899],{"type":45,"value":25366},{"type":39,"tag":1072,"props":27901,"children":27902},{"style":1090},[27903],{"type":45,"value":934},{"type":39,"tag":1072,"props":27905,"children":27906},{"style":1096},[27907],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27909,"children":27910},{"style":1195},[27911],{"type":45,"value":8299},{"type":39,"tag":1072,"props":27913,"children":27914},{"style":1096},[27915],{"type":45,"value":25383},{"type":39,"tag":1072,"props":27917,"children":27918},{"style":1090},[27919],{"type":45,"value":934},{"type":39,"tag":1072,"props":27921,"children":27922},{"style":1096},[27923],{"type":45,"value":21544},{"type":39,"tag":1072,"props":27925,"children":27926},{"class":1074,"line":21410},[27927,27931,27935,27939,27943,27947,27951,27955,27959,27963],{"type":39,"tag":1072,"props":27928,"children":27929},{"style":1195},[27930],{"type":45,"value":7335},{"type":39,"tag":1072,"props":27932,"children":27933},{"style":1090},[27934],{"type":45,"value":25403},{"type":39,"tag":1072,"props":27936,"children":27937},{"style":1195},[27938],{"type":45,"value":25361},{"type":39,"tag":1072,"props":27940,"children":27941},{"style":1096},[27942],{"type":45,"value":25366},{"type":39,"tag":1072,"props":27944,"children":27945},{"style":1090},[27946],{"type":45,"value":934},{"type":39,"tag":1072,"props":27948,"children":27949},{"style":1096},[27950],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27952,"children":27953},{"style":1195},[27954],{"type":45,"value":8299},{"type":39,"tag":1072,"props":27956,"children":27957},{"style":1096},[27958],{"type":45,"value":25428},{"type":39,"tag":1072,"props":27960,"children":27961},{"style":1090},[27962],{"type":45,"value":934},{"type":39,"tag":1072,"props":27964,"children":27965},{"style":1096},[27966],{"type":45,"value":20888},{"type":39,"tag":1072,"props":27968,"children":27969},{"class":1074,"line":21423},[27970,27974,27978,27982,27986,27990,27994,27998,28002,28006],{"type":39,"tag":1072,"props":27971,"children":27972},{"style":1195},[27973],{"type":45,"value":7335},{"type":39,"tag":1072,"props":27975,"children":27976},{"style":1090},[27977],{"type":45,"value":25448},{"type":39,"tag":1072,"props":27979,"children":27980},{"style":1195},[27981],{"type":45,"value":25361},{"type":39,"tag":1072,"props":27983,"children":27984},{"style":1096},[27985],{"type":45,"value":25366},{"type":39,"tag":1072,"props":27987,"children":27988},{"style":1090},[27989],{"type":45,"value":934},{"type":39,"tag":1072,"props":27991,"children":27992},{"style":1096},[27993],{"type":45,"value":17376},{"type":39,"tag":1072,"props":27995,"children":27996},{"style":1195},[27997],{"type":45,"value":8299},{"type":39,"tag":1072,"props":27999,"children":28000},{"style":1096},[28001],{"type":45,"value":25473},{"type":39,"tag":1072,"props":28003,"children":28004},{"style":1090},[28005],{"type":45,"value":934},{"type":39,"tag":1072,"props":28007,"children":28008},{"style":1096},[28009],{"type":45,"value":25482},{"type":39,"tag":1072,"props":28011,"children":28012},{"class":1074,"line":21460},[28013,28017,28021],{"type":39,"tag":1072,"props":28014,"children":28015},{"style":1195},[28016],{"type":45,"value":15720},{"type":39,"tag":1072,"props":28018,"children":28019},{"style":1090},[28020],{"type":45,"value":25494},{"type":39,"tag":1072,"props":28022,"children":28023},{"style":1195},[28024],{"type":45,"value":25499},{"type":39,"tag":85,"props":28026,"children":28028},{"id":28027},"run-the-full-pipeline-end-to-end",[28029],{"type":45,"value":28030},"Run the full pipeline end-to-end",{"type":39,"tag":48,"props":28032,"children":28033},{},[28034],{"type":45,"value":28035},"Run the entire pipeline - ingestion, staging, and reports - in one command:",{"type":39,"tag":1062,"props":28037,"children":28038},{"className":1064,"code":6777,"language":1066,"meta":7,"style":7},[28039],{"type":39,"tag":70,"props":28040,"children":28041},{"__ignoreMap":7},[28042],{"type":39,"tag":1072,"props":28043,"children":28044},{"class":1074,"line":868},[28045,28049,28053,28057,28061,28065,28069],{"type":39,"tag":1072,"props":28046,"children":28047},{"style":1078},[28048],{"type":45,"value":1125},{"type":39,"tag":1072,"props":28050,"children":28051},{"style":1084},[28052],{"type":45,"value":6793},{"type":39,"tag":1072,"props":28054,"children":28055},{"style":1096},[28056],{"type":45,"value":6798},{"type":39,"tag":1072,"props":28058,"children":28059},{"style":1084},[28060],{"type":45,"value":6803},{"type":39,"tag":1072,"props":28062,"children":28063},{"style":1096},[28064],{"type":45,"value":6808},{"type":39,"tag":1072,"props":28066,"children":28067},{"style":1084},[28068],{"type":45,"value":6813},{"type":39,"tag":1072,"props":28070,"children":28071},{"style":1084},[28072],{"type":45,"value":2325},{"type":39,"tag":48,"props":28074,"children":28075},{},[28076,28078,28083,28085,28089],{"type":45,"value":28077},"Bruin executes everything in dependency order: ",{"type":39,"tag":467,"props":28079,"children":28080},{"href":988},[28081],{"type":45,"value":28082},"ingestor assets",{"type":45,"value":28084}," first, then staging, then reports. ",{"type":39,"tag":467,"props":28086,"children":28087},{"href":988},[28088],{"type":45,"value":7054},{"type":45,"value":28090}," run after each asset.",{"type":39,"tag":48,"props":28092,"children":28093},{},[28094],{"type":45,"value":28095},"If your test month looks good, run a full backfill:",{"type":39,"tag":1062,"props":28097,"children":28099},{"className":1064,"code":28098,"language":1066,"meta":7,"style":7},"bruin run --start-date 2024-01-01 --end-date 2025-04-01 .\n",[28100],{"type":39,"tag":70,"props":28101,"children":28102},{"__ignoreMap":7},[28103],{"type":39,"tag":1072,"props":28104,"children":28105},{"class":1074,"line":868},[28106,28110,28114,28118,28122,28126,28131],{"type":39,"tag":1072,"props":28107,"children":28108},{"style":1078},[28109],{"type":45,"value":1125},{"type":39,"tag":1072,"props":28111,"children":28112},{"style":1084},[28113],{"type":45,"value":6793},{"type":39,"tag":1072,"props":28115,"children":28116},{"style":1096},[28117],{"type":45,"value":6798},{"type":39,"tag":1072,"props":28119,"children":28120},{"style":1084},[28121],{"type":45,"value":6950},{"type":39,"tag":1072,"props":28123,"children":28124},{"style":1096},[28125],{"type":45,"value":6808},{"type":39,"tag":1072,"props":28127,"children":28128},{"style":1084},[28129],{"type":45,"value":28130}," 2025-04-01",{"type":39,"tag":1072,"props":28132,"children":28133},{"style":1084},[28134],{"type":45,"value":2325},{"type":39,"tag":48,"props":28136,"children":28137},{},[28138,28140,28146],{"type":45,"value":28139},"You can also use ",{"type":39,"tag":70,"props":28141,"children":28143},{"className":28142},[],[28144],{"type":45,"value":28145},"--full-refresh",{"type":45,"value":28147}," to drop and recreate all tables from scratch if you need a clean slate:",{"type":39,"tag":1062,"props":28149,"children":28151},{"className":1064,"code":28150,"language":1066,"meta":7,"style":7},"bruin run --full-refresh --start-date 2024-01-01 --end-date 2025-04-01 .\n",[28152],{"type":39,"tag":70,"props":28153,"children":28154},{"__ignoreMap":7},[28155],{"type":39,"tag":1072,"props":28156,"children":28157},{"class":1074,"line":868},[28158,28162,28166,28171,28175,28179,28183,28187],{"type":39,"tag":1072,"props":28159,"children":28160},{"style":1078},[28161],{"type":45,"value":1125},{"type":39,"tag":1072,"props":28163,"children":28164},{"style":1084},[28165],{"type":45,"value":6793},{"type":39,"tag":1072,"props":28167,"children":28168},{"style":1096},[28169],{"type":45,"value":28170}," --full-refresh",{"type":39,"tag":1072,"props":28172,"children":28173},{"style":1096},[28174],{"type":45,"value":6798},{"type":39,"tag":1072,"props":28176,"children":28177},{"style":1084},[28178],{"type":45,"value":6950},{"type":39,"tag":1072,"props":28180,"children":28181},{"style":1096},[28182],{"type":45,"value":6808},{"type":39,"tag":1072,"props":28184,"children":28185},{"style":1084},[28186],{"type":45,"value":28130},{"type":39,"tag":1072,"props":28188,"children":28189},{"style":1084},[28190],{"type":45,"value":2325},{"type":39,"tag":48,"props":28192,"children":28193},{},[28194],{"type":45,"value":28195},"Validate the full pipeline:",{"type":39,"tag":1062,"props":28197,"children":28198},{"className":1064,"code":2304,"language":1066,"meta":7,"style":7},[28199],{"type":39,"tag":70,"props":28200,"children":28201},{"__ignoreMap":7},[28202],{"type":39,"tag":1072,"props":28203,"children":28204},{"class":1074,"line":868},[28205,28209,28213],{"type":39,"tag":1072,"props":28206,"children":28207},{"style":1078},[28208],{"type":45,"value":1125},{"type":39,"tag":1072,"props":28210,"children":28211},{"style":1084},[28212],{"type":45,"value":2320},{"type":39,"tag":1072,"props":28214,"children":28215},{"style":1084},[28216],{"type":45,"value":2325},{"type":39,"tag":85,"props":28218,"children":28220},{"id":28219},"verify-results-with-claude-code",[28221],{"type":45,"value":28222},"Verify results with Claude Code",{"type":39,"tag":48,"props":28224,"children":28225},{},[28226],{"type":45,"value":28227},"After the pipeline runs, ask Claude Code to spot-check the reports:",{"type":39,"tag":115,"props":28229,"children":28230},{},[28231],{"type":39,"tag":48,"props":28232,"children":28233},{},[28234],{"type":45,"value":28235},"Query reports.rpt_daily_revenue for the last 7 days and show me the results. Does anything look off?",{"type":39,"tag":115,"props":28237,"children":28238},{},[28239],{"type":39,"tag":48,"props":28240,"children":28241},{},[28242],{"type":45,"value":28243},"Check if rpt_customer_cohorts has data for the last 6 months. Show me the retention rate for the most recent cohort.",{"type":39,"tag":115,"props":28245,"children":28246},{},[28247],{"type":39,"tag":48,"props":28248,"children":28249},{},[28250],{"type":45,"value":28251},"Run bruin validate on the project and summarize any quality check failures.",{"type":39,"tag":48,"props":28253,"children":28254},{},[28255],{"type":45,"value":28256},"If a report looks wrong, Claude Code can compare the report output against the staging tables to find the issue:",{"type":39,"tag":115,"props":28258,"children":28259},{},[28260],{"type":39,"tag":48,"props":28261,"children":28262},{},[28263],{"type":45,"value":28264},"The rpt_marketing_roi table shows zero attributed_revenue for Facebook. Query the staging tables to trace where the data is dropping off.",{"type":39,"tag":40,"props":28266,"children":28267},{"id":285},[28268],{"type":45,"value":288},{"type":39,"tag":241,"props":28270,"children":28271},{},[28272,28282,28292,28301],{"type":39,"tag":245,"props":28273,"children":28274},{},[28275,28280],{"type":39,"tag":97,"props":28276,"children":28277},{},[28278],{"type":45,"value":28279},"5 report tables",{"type":45,"value":28281}," that turn clean staging data into business metrics",{"type":39,"tag":245,"props":28283,"children":28284},{},[28285,28290],{"type":39,"tag":97,"props":28286,"children":28287},{},[28288],{"type":45,"value":28289},"Three-layer pipeline:",{"type":45,"value":28291}," ingestion, staging, reports - all orchestrated by Bruin",{"type":39,"tag":245,"props":28293,"children":28294},{},[28295,28299],{"type":39,"tag":97,"props":28296,"children":28297},{},[28298],{"type":45,"value":14973},{"type":45,"value":28300}," make sure reports only run after their staging inputs are fresh",{"type":39,"tag":245,"props":28302,"children":28303},{},[28304,28308],{"type":39,"tag":97,"props":28305,"children":28306},{},[28307],{"type":45,"value":7054},{"type":45,"value":28309}," on every report table catch issues before anyone sees bad numbers",{"type":39,"tag":48,"props":28311,"children":28312},{},[28313],{"type":45,"value":28314},"Next, you'll add an AI layer so anyone on your team can query this data in plain language.",{"type":39,"tag":2354,"props":28316,"children":28317},{},[28318],{"type":45,"value":2358},{"title":7,"searchDepth":476,"depth":476,"links":28320},[28321,28322,28323,28338],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":28324},[28325,28326,28328,28330,28332,28334,28336,28337],{"id":15109,"depth":483,"text":15112},{"id":15146,"depth":483,"text":28327},"1) Daily revenue - rpt_daily_revenue.sql",{"id":17122,"depth":483,"text":28329},"2) Customer cohorts - rpt_customer_cohorts.sql",{"id":19965,"depth":483,"text":28331},"3) Product performance - rpt_product_performance.sql",{"id":20232,"depth":483,"text":28333},"4) Marketing ROI - rpt_marketing_roi.sql",{"id":24205,"depth":483,"text":28335},"5) Daily KPIs - rpt_daily_kpis.sql",{"id":28027,"depth":483,"text":28030},{"id":28219,"depth":483,"text":28222},{"id":285,"depth":476,"text":288},"content:tutorials:ecommerce-pipeline:build-reports.md","tutorials\u002Fecommerce-pipeline\u002Fbuild-reports.md","tutorials\u002Fecommerce-pipeline\u002Fbuild-reports",{"_path":28343,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":28344,"description":28345,"date":10,"readingTime":7515,"category":12,"tags":28346,"variants":28348,"difficulty":7046,"module":5,"subSteps":19,"step":11,"journeys":28349,"learnMore":28350,"author":28363,"body":28364,"_type":491,"_id":30289,"_source":493,"_file":30290,"_stem":30291,"_extension":496},"\u002Ftutorials\u002Fecommerce-pipeline\u002Fai-analyst","Set Up Your AI Data Analyst","Enhance your pipeline with AI-generated metadata, create an ecommerce-specific AGENTS.md, and deploy an AI analyst your team can use locally or in Slack.",[862,863,15,14,864,865,866,867,28347,17],"Slack",[865,866,867],[22,23],[28351,28354,28357,28360],{"label":28352,"url":28353},"Bruin MCP best practices","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fgetting-started\u002Fbruin-mcp.html#best-practices-for-ai-agents",{"label":28355,"url":28356},"AI enhance command reference","https:\u002F\u002Fgetbruin.com\u002Fdocs\u002Fbruin\u002Fcommands\u002Fai-enhance.html",{"label":28358,"url":28359},"AI Data Analyst module","\u002Flearn\u002Fai-data-analyst",{"label":28361,"url":28362},"Cloud + Slack AI analyst tutorial","\u002Flearn\u002Fcloud-slack",{"name":32,"role":33,"image":34},{"type":36,"children":28365,"toc":30277},[28366,28370,28406,28410,28415,28427,28431,28437,28449,28478,28490,28496,28521,28526,28534,28539,29757,29763,29775,29783,29791,29799,29807,29842,29850,29862,29868,29880,29911,29923,29929,29934,29942,29974,30080,30088,30136,30144,30182,30190,30195,30203,30215,30219,30268,30273],{"type":39,"tag":40,"props":28367,"children":28368},{"id":42},[28369],{"type":45,"value":46},{"type":39,"tag":295,"props":28371,"children":28372},{},[28373,28384,28396,28401],{"type":39,"tag":245,"props":28374,"children":28375},{},[28376,28378],{"type":45,"value":28377},"Auto-generate metadata for every asset using ",{"type":39,"tag":70,"props":28379,"children":28381},{"className":28380},[],[28382],{"type":45,"value":28383},"bruin ai enhance",{"type":39,"tag":245,"props":28385,"children":28386},{},[28387,28389,28394],{"type":45,"value":28388},"Create an ",{"type":39,"tag":70,"props":28390,"children":28392},{"className":28391},[],[28393],{"type":45,"value":75},{"type":45,"value":28395}," with ecommerce-specific context",{"type":39,"tag":245,"props":28397,"children":28398},{},[28399],{"type":45,"value":28400},"Ask your local AI analyst real business questions",{"type":39,"tag":245,"props":28402,"children":28403},{},[28404],{"type":45,"value":28405},"Deploy the analyst to Bruin Cloud so your team can use it in Slack or Teams",{"type":39,"tag":40,"props":28407,"children":28408},{"id":55},[28409],{"type":45,"value":58},{"type":39,"tag":48,"props":28411,"children":28412},{},[28413],{"type":45,"value":28414},"Your pipeline produces clean data and reports, but right now the only way to get answers is to write SQL. The AI analyst lets anyone on your team ask questions in plain language and get answers backed by real data.",{"type":39,"tag":48,"props":28416,"children":28417},{},[28418,28420,28425],{"type":45,"value":28419},"The missing piece is context. A general-purpose AI doesn't know that \"ROAS\" means return on ad spend, that Stripe amounts are in cents, or that guest checkouts have a NULL customer email. The ",{"type":39,"tag":70,"props":28421,"children":28423},{"className":28422},[],[28424],{"type":45,"value":75},{"type":45,"value":28426}," file fills that gap.",{"type":39,"tag":40,"props":28428,"children":28429},{"id":80},[28430],{"type":45,"value":83},{"type":39,"tag":85,"props":28432,"children":28434},{"id":28433},"_1-enhance-all-assets-with-ai-metadata",[28435],{"type":45,"value":28436},"1) Enhance all assets with AI metadata",{"type":39,"tag":48,"props":28438,"children":28439},{},[28440,28442,28447],{"type":45,"value":28441},"Run ",{"type":39,"tag":70,"props":28443,"children":28445},{"className":28444},[],[28446],{"type":45,"value":28383},{"type":45,"value":28448}," to auto-generate descriptions, column metadata, and quality check suggestions for every asset:",{"type":39,"tag":1062,"props":28450,"children":28452},{"className":1064,"code":28451,"language":1066,"meta":7,"style":7},"bruin ai enhance ecommerce\u002F\n",[28453],{"type":39,"tag":70,"props":28454,"children":28455},{"__ignoreMap":7},[28456],{"type":39,"tag":1072,"props":28457,"children":28458},{"class":1074,"line":868},[28459,28463,28468,28473],{"type":39,"tag":1072,"props":28460,"children":28461},{"style":1078},[28462],{"type":45,"value":1125},{"type":39,"tag":1072,"props":28464,"children":28465},{"style":1084},[28466],{"type":45,"value":28467}," ai",{"type":39,"tag":1072,"props":28469,"children":28470},{"style":1084},[28471],{"type":45,"value":28472}," enhance",{"type":39,"tag":1072,"props":28474,"children":28475},{"style":1084},[28476],{"type":45,"value":28477}," ecommerce\u002F\n",{"type":39,"tag":48,"props":28479,"children":28480},{},[28481,28483,28488],{"type":45,"value":28482},"This reads your SQL, figures out what each asset does, and writes descriptions into the asset files. Review the output - it's usually accurate but sometimes suggests ",{"type":39,"tag":70,"props":28484,"children":28486},{"className":28485},[],[28487],{"type":45,"value":14956},{"type":45,"value":28489}," checks on columns that aren't actually unique.",{"type":39,"tag":85,"props":28491,"children":28493},{"id":28492},"_2-create-your-agentsmd",[28494],{"type":45,"value":28495},"2) Create your AGENTS.md",{"type":39,"tag":48,"props":28497,"children":28498},{},[28499,28500,28505,28507,28512,28514,28519],{"type":45,"value":28388},{"type":39,"tag":70,"props":28501,"children":28503},{"className":28502},[],[28504],{"type":45,"value":75},{"type":45,"value":28506}," file at the ",{"type":39,"tag":97,"props":28508,"children":28509},{},[28510],{"type":45,"value":28511},"root of your Bruin project",{"type":45,"value":28513}," - the directory where ",{"type":39,"tag":70,"props":28515,"children":28517},{"className":28516},[],[28518],{"type":45,"value":1170},{"type":45,"value":28520}," lives. Claude Code reads this file automatically when it starts a session in your project directory.",{"type":39,"tag":48,"props":28522,"children":28523},{},[28524],{"type":45,"value":28525},"You can ask Claude Code to help draft it:",{"type":39,"tag":115,"props":28527,"children":28528},{},[28529],{"type":39,"tag":48,"props":28530,"children":28531},{},[28532],{"type":45,"value":28533},"Create an AGENTS.md file for this ecommerce analytics project. Include data access rules using bruin query with the warehouse connection name from our pipeline, a glossary of ecommerce terms (AOV, ROAS, LTV, etc.), and data caveats like Stripe amounts being in cents and guest checkouts having null customer_email.",{"type":39,"tag":48,"props":28535,"children":28536},{},[28537],{"type":45,"value":28538},"Here's what the file should look like. Replace the connection name with the one you set up in Step 1:",{"type":39,"tag":1242,"props":28540,"children":28541},{":variants":1244,"group":1245},[28542,28979,29368],{"type":39,"tag":1248,"props":28543,"children":28544},{"v-slot:clickhouse":7},[28545],{"type":39,"tag":1062,"props":28546,"children":28549},{"className":28547,"code":28548,"language":491,"meta":7,"style":7},"language-markdown shiki shiki-themes github-dark","# AGENTS.md\n\n## Data access\n- Use `bruin query --connection clickhouse-default --query \"\u003CSQL>\"` for all data access\n- Always show the SQL query and explain your reasoning before executing it\n- Add `LIMIT 10` to your SQL when exploring unfamiliar tables or testing complex queries\n- Read the `assets\u002F` directory to understand available tables and their schemas before querying\n- This is a **read-only** environment - never run INSERT, UPDATE, DELETE, or DROP statements\n\n\u003C!-- Customize this list to match the sources you actually connected in Step 1.\n     The example below includes Shopify, Stripe, Klaviyo, Facebook Ads, and GA4.\n     Remove any you don't use and add any additional sources (e.g., TikTok Ads, Pinterest, Zendesk). -->\n## Project overview\nThis is an ecommerce analytics pipeline ingesting data from Shopify (orders,\ncustomers, products, inventory), Stripe (payments, refunds, payouts),\nKlaviyo (email campaigns, flows), Facebook Ads (campaigns, ad insights),\nand GA4 (sessions, events) into your data warehouse.\n\nThe pipeline has three layers:\n- **raw.*** - ingested data from SaaS sources (do not query directly for reporting)\n- **staging.*** - cleaned, deduplicated, joined tables\n- **reports.*** - aggregated business metrics and KPIs\n\n## Domain glossary\n- **AOV** - Average Order Value: net revenue divided by number of paid orders\n- **GMV** - Gross Merchandise Value: total order value before returns and discounts\n- **NMV** - Net Merchandise Value: GMV minus returns, cancellations, and discounts\n- **ROAS** - Return on Ad Spend: attributed revenue divided by ad spend\n- **CAC** - Customer Acquisition Cost: total marketing spend divided by new customers\n- **LTV** - Lifetime Value: total revenue from a customer across all orders\n- **Conversion Rate** - percentage of website sessions resulting in a completed purchase\n- **Cart Abandonment** - percentage of sessions with add-to-cart but no purchase\n- **Repeat Purchase Rate** - percentage of customers with more than one order\n- **Churn** - customers with no order in the past 90 days\n- **SKU** - Stock Keeping Unit: unique identifier for a product variant\n- **Basket Size** - number of items in a single order\n\n## Data caveats\n- All timestamps are in **UTC**\n- Stripe amounts are in **cents** - divide by 100 for dollar values\n- `customer_email` is `NULL` for guest checkouts (~15-20% of orders)\n- Refund window is **30 days** - recent revenue figures may be revised downward\n- Inventory data syncs every **4 hours** - not real-time\n- Shopify `order_total` includes tax and shipping; use `subtotal` for product revenue only\n- Facebook Ads data has a **24-48 hour attribution delay**\n- Klaviyo campaigns have no direct spend - they appear with $0 spend in marketing reports\n\n## Query guidelines\n- For revenue, always use **NMV** (net of returns) unless explicitly asked for GMV\n- Exclude test orders: `WHERE customer_email NOT LIKE '%@test.%'`\n- Use a **12-month lookback window** for LTV calculations by default\n- For marketing attribution, use `reports.rpt_marketing_roi` - do not attempt to join raw ad data with orders directly\n- For daily KPIs, use `reports.rpt_daily_kpis` as the single source of truth\n- Prefer `staging.*` tables over `raw.*` for any analysis\n",[28550],{"type":39,"tag":70,"props":28551,"children":28552},{"__ignoreMap":7},[28553,28561,28568,28576,28584,28592,28600,28608,28616,28623,28631,28639,28647,28655,28663,28671,28679,28687,28694,28702,28710,28718,28726,28733,28741,28749,28757,28765,28773,28781,28789,28797,28805,28813,28821,28829,28837,28844,28852,28860,28868,28876,28884,28892,28900,28908,28916,28923,28931,28939,28947,28955,28963,28971],{"type":39,"tag":1072,"props":28554,"children":28555},{"class":1074,"line":868},[28556],{"type":39,"tag":1072,"props":28557,"children":28558},{},[28559],{"type":45,"value":28560},"# AGENTS.md\n",{"type":39,"tag":1072,"props":28562,"children":28563},{"class":1074,"line":476},[28564],{"type":39,"tag":1072,"props":28565,"children":28566},{"emptyLinePlaceholder":19},[28567],{"type":45,"value":7644},{"type":39,"tag":1072,"props":28569,"children":28570},{"class":1074,"line":483},[28571],{"type":39,"tag":1072,"props":28572,"children":28573},{},[28574],{"type":45,"value":28575},"## Data access\n",{"type":39,"tag":1072,"props":28577,"children":28578},{"class":1074,"line":1626},[28579],{"type":39,"tag":1072,"props":28580,"children":28581},{},[28582],{"type":45,"value":28583},"- Use `bruin query --connection clickhouse-default --query \"\u003CSQL>\"` for all data access\n",{"type":39,"tag":1072,"props":28585,"children":28586},{"class":1074,"line":11},[28587],{"type":39,"tag":1072,"props":28588,"children":28589},{},[28590],{"type":45,"value":28591},"- Always show the SQL query and explain your reasoning before executing it\n",{"type":39,"tag":1072,"props":28593,"children":28594},{"class":1074,"line":20},[28595],{"type":39,"tag":1072,"props":28596,"children":28597},{},[28598],{"type":45,"value":28599},"- Add `LIMIT 10` to your SQL when exploring unfamiliar tables or testing complex queries\n",{"type":39,"tag":1072,"props":28601,"children":28602},{"class":1074,"line":1679},[28603],{"type":39,"tag":1072,"props":28604,"children":28605},{},[28606],{"type":45,"value":28607},"- Read the `assets\u002F` directory to understand available tables and their schemas before querying\n",{"type":39,"tag":1072,"props":28609,"children":28610},{"class":1074,"line":860},[28611],{"type":39,"tag":1072,"props":28612,"children":28613},{},[28614],{"type":45,"value":28615},"- This is a **read-only** environment - never run INSERT, UPDATE, DELETE, or DROP statements\n",{"type":39,"tag":1072,"props":28617,"children":28618},{"class":1074,"line":2907},[28619],{"type":39,"tag":1072,"props":28620,"children":28621},{"emptyLinePlaceholder":19},[28622],{"type":45,"value":7644},{"type":39,"tag":1072,"props":28624,"children":28625},{"class":1074,"line":7515},[28626],{"type":39,"tag":1072,"props":28627,"children":28628},{},[28629],{"type":45,"value":28630},"\u003C!-- Customize this list to match the sources you actually connected in Step 1.\n",{"type":39,"tag":1072,"props":28632,"children":28633},{"class":1074,"line":7524},[28634],{"type":39,"tag":1072,"props":28635,"children":28636},{},[28637],{"type":45,"value":28638},"     The example below includes Shopify, Stripe, Klaviyo, Facebook Ads, and GA4.\n",{"type":39,"tag":1072,"props":28640,"children":28641},{"class":1074,"line":7533},[28642],{"type":39,"tag":1072,"props":28643,"children":28644},{},[28645],{"type":45,"value":28646},"     Remove any you don't use and add any additional sources (e.g., TikTok Ads, Pinterest, Zendesk). -->\n",{"type":39,"tag":1072,"props":28648,"children":28649},{"class":1074,"line":7542},[28650],{"type":39,"tag":1072,"props":28651,"children":28652},{},[28653],{"type":45,"value":28654},"## Project overview\n",{"type":39,"tag":1072,"props":28656,"children":28657},{"class":1074,"line":7551},[28658],{"type":39,"tag":1072,"props":28659,"children":28660},{},[28661],{"type":45,"value":28662},"This is an ecommerce analytics pipeline ingesting data from Shopify (orders,\n",{"type":39,"tag":1072,"props":28664,"children":28665},{"class":1074,"line":2380},[28666],{"type":39,"tag":1072,"props":28667,"children":28668},{},[28669],{"type":45,"value":28670},"customers, products, inventory), Stripe (payments, refunds, payouts),\n",{"type":39,"tag":1072,"props":28672,"children":28673},{"class":1074,"line":7568},[28674],{"type":39,"tag":1072,"props":28675,"children":28676},{},[28677],{"type":45,"value":28678},"Klaviyo (email campaigns, flows), Facebook Ads (campaigns, ad insights),\n",{"type":39,"tag":1072,"props":28680,"children":28681},{"class":1074,"line":7577},[28682],{"type":39,"tag":1072,"props":28683,"children":28684},{},[28685],{"type":45,"value":28686},"and GA4 (sessions, events) into your data warehouse.\n",{"type":39,"tag":1072,"props":28688,"children":28689},{"class":1074,"line":7585},[28690],{"type":39,"tag":1072,"props":28691,"children":28692},{"emptyLinePlaceholder":19},[28693],{"type":45,"value":7644},{"type":39,"tag":1072,"props":28695,"children":28696},{"class":1074,"line":7593},[28697],{"type":39,"tag":1072,"props":28698,"children":28699},{},[28700],{"type":45,"value":28701},"The pipeline has three layers:\n",{"type":39,"tag":1072,"props":28703,"children":28704},{"class":1074,"line":7602},[28705],{"type":39,"tag":1072,"props":28706,"children":28707},{},[28708],{"type":45,"value":28709},"- **raw.*** - ingested data from SaaS sources (do not query directly for reporting)\n",{"type":39,"tag":1072,"props":28711,"children":28712},{"class":1074,"line":7611},[28713],{"type":39,"tag":1072,"props":28714,"children":28715},{},[28716],{"type":45,"value":28717},"- **staging.*** - cleaned, deduplicated, joined tables\n",{"type":39,"tag":1072,"props":28719,"children":28720},{"class":1074,"line":7620},[28721],{"type":39,"tag":1072,"props":28722,"children":28723},{},[28724],{"type":45,"value":28725},"- **reports.*** - aggregated business metrics and KPIs\n",{"type":39,"tag":1072,"props":28727,"children":28728},{"class":1074,"line":7629},[28729],{"type":39,"tag":1072,"props":28730,"children":28731},{"emptyLinePlaceholder":19},[28732],{"type":45,"value":7644},{"type":39,"tag":1072,"props":28734,"children":28735},{"class":1074,"line":7638},[28736],{"type":39,"tag":1072,"props":28737,"children":28738},{},[28739],{"type":45,"value":28740},"## Domain glossary\n",{"type":39,"tag":1072,"props":28742,"children":28743},{"class":1074,"line":7647},[28744],{"type":39,"tag":1072,"props":28745,"children":28746},{},[28747],{"type":45,"value":28748},"- **AOV** - Average Order Value: net revenue divided by number of paid orders\n",{"type":39,"tag":1072,"props":28750,"children":28751},{"class":1074,"line":7656},[28752],{"type":39,"tag":1072,"props":28753,"children":28754},{},[28755],{"type":45,"value":28756},"- **GMV** - Gross Merchandise Value: total order value before returns and discounts\n",{"type":39,"tag":1072,"props":28758,"children":28759},{"class":1074,"line":7684},[28760],{"type":39,"tag":1072,"props":28761,"children":28762},{},[28763],{"type":45,"value":28764},"- **NMV** - Net Merchandise Value: GMV minus returns, cancellations, and discounts\n",{"type":39,"tag":1072,"props":28766,"children":28767},{"class":1074,"line":7706},[28768],{"type":39,"tag":1072,"props":28769,"children":28770},{},[28771],{"type":45,"value":28772},"- **ROAS** - Return on Ad Spend: attributed revenue divided by ad spend\n",{"type":39,"tag":1072,"props":28774,"children":28775},{"class":1074,"line":7732},[28776],{"type":39,"tag":1072,"props":28777,"children":28778},{},[28779],{"type":45,"value":28780},"- **CAC** - Customer Acquisition Cost: total marketing spend divided by new customers\n",{"type":39,"tag":1072,"props":28782,"children":28783},{"class":1074,"line":7758},[28784],{"type":39,"tag":1072,"props":28785,"children":28786},{},[28787],{"type":45,"value":28788},"- **LTV** - Lifetime Value: total revenue from a customer across all orders\n",{"type":39,"tag":1072,"props":28790,"children":28791},{"class":1074,"line":7783},[28792],{"type":39,"tag":1072,"props":28793,"children":28794},{},[28795],{"type":45,"value":28796},"- **Conversion Rate** - percentage of website sessions resulting in a completed purchase\n",{"type":39,"tag":1072,"props":28798,"children":28799},{"class":1074,"line":7804},[28800],{"type":39,"tag":1072,"props":28801,"children":28802},{},[28803],{"type":45,"value":28804},"- **Cart Abandonment** - percentage of sessions with add-to-cart but no purchase\n",{"type":39,"tag":1072,"props":28806,"children":28807},{"class":1074,"line":7874},[28808],{"type":39,"tag":1072,"props":28809,"children":28810},{},[28811],{"type":45,"value":28812},"- **Repeat Purchase Rate** - percentage of customers with more than one order\n",{"type":39,"tag":1072,"props":28814,"children":28815},{"class":1074,"line":7936},[28816],{"type":39,"tag":1072,"props":28817,"children":28818},{},[28819],{"type":45,"value":28820},"- **Churn** - customers with no order in the past 90 days\n",{"type":39,"tag":1072,"props":28822,"children":28823},{"class":1074,"line":7998},[28824],{"type":39,"tag":1072,"props":28825,"children":28826},{},[28827],{"type":45,"value":28828},"- **SKU** - Stock Keeping Unit: unique identifier for a product variant\n",{"type":39,"tag":1072,"props":28830,"children":28831},{"class":1074,"line":8060},[28832],{"type":39,"tag":1072,"props":28833,"children":28834},{},[28835],{"type":45,"value":28836},"- **Basket Size** - number of items in a single order\n",{"type":39,"tag":1072,"props":28838,"children":28839},{"class":1074,"line":8081},[28840],{"type":39,"tag":1072,"props":28841,"children":28842},{"emptyLinePlaceholder":19},[28843],{"type":45,"value":7644},{"type":39,"tag":1072,"props":28845,"children":28846},{"class":1074,"line":8102},[28847],{"type":39,"tag":1072,"props":28848,"children":28849},{},[28850],{"type":45,"value":28851},"## Data caveats\n",{"type":39,"tag":1072,"props":28853,"children":28854},{"class":1074,"line":8123},[28855],{"type":39,"tag":1072,"props":28856,"children":28857},{},[28858],{"type":45,"value":28859},"- All timestamps are in **UTC**\n",{"type":39,"tag":1072,"props":28861,"children":28862},{"class":1074,"line":8169},[28863],{"type":39,"tag":1072,"props":28864,"children":28865},{},[28866],{"type":45,"value":28867},"- Stripe amounts are in **cents** - divide by 100 for dollar values\n",{"type":39,"tag":1072,"props":28869,"children":28870},{"class":1074,"line":8195},[28871],{"type":39,"tag":1072,"props":28872,"children":28873},{},[28874],{"type":45,"value":28875},"- `customer_email` is `NULL` for guest checkouts (~15-20% of orders)\n",{"type":39,"tag":1072,"props":28877,"children":28878},{"class":1074,"line":8221},[28879],{"type":39,"tag":1072,"props":28880,"children":28881},{},[28882],{"type":45,"value":28883},"- Refund window is **30 days** - recent revenue figures may be revised downward\n",{"type":39,"tag":1072,"props":28885,"children":28886},{"class":1074,"line":8249},[28887],{"type":39,"tag":1072,"props":28888,"children":28889},{},[28890],{"type":45,"value":28891},"- Inventory data syncs every **4 hours** - not real-time\n",{"type":39,"tag":1072,"props":28893,"children":28894},{"class":1074,"line":8275},[28895],{"type":39,"tag":1072,"props":28896,"children":28897},{},[28898],{"type":45,"value":28899},"- Shopify `order_total` includes tax and shipping; use `subtotal` for product revenue only\n",{"type":39,"tag":1072,"props":28901,"children":28902},{"class":1074,"line":8316},[28903],{"type":39,"tag":1072,"props":28904,"children":28905},{},[28906],{"type":45,"value":28907},"- Facebook Ads data has a **24-48 hour attribution delay**\n",{"type":39,"tag":1072,"props":28909,"children":28910},{"class":1074,"line":9194},[28911],{"type":39,"tag":1072,"props":28912,"children":28913},{},[28914],{"type":45,"value":28915},"- Klaviyo campaigns have no direct spend - they appear with $0 spend in marketing reports\n",{"type":39,"tag":1072,"props":28917,"children":28918},{"class":1074,"line":9253},[28919],{"type":39,"tag":1072,"props":28920,"children":28921},{"emptyLinePlaceholder":19},[28922],{"type":45,"value":7644},{"type":39,"tag":1072,"props":28924,"children":28925},{"class":1074,"line":20944},[28926],{"type":39,"tag":1072,"props":28927,"children":28928},{},[28929],{"type":45,"value":28930},"## Query guidelines\n",{"type":39,"tag":1072,"props":28932,"children":28933},{"class":1074,"line":20952},[28934],{"type":39,"tag":1072,"props":28935,"children":28936},{},[28937],{"type":45,"value":28938},"- For revenue, always use **NMV** (net of returns) unless explicitly asked for GMV\n",{"type":39,"tag":1072,"props":28940,"children":28941},{"class":1074,"line":20960},[28942],{"type":39,"tag":1072,"props":28943,"children":28944},{},[28945],{"type":45,"value":28946},"- Exclude test orders: `WHERE customer_email NOT LIKE '%@test.%'`\n",{"type":39,"tag":1072,"props":28948,"children":28949},{"class":1074,"line":20986},[28950],{"type":39,"tag":1072,"props":28951,"children":28952},{},[28953],{"type":45,"value":28954},"- Use a **12-month lookback window** for LTV calculations by default\n",{"type":39,"tag":1072,"props":28956,"children":28957},{"class":1074,"line":21006},[28958],{"type":39,"tag":1072,"props":28959,"children":28960},{},[28961],{"type":45,"value":28962},"- For marketing attribution, use `reports.rpt_marketing_roi` - do not attempt to join raw ad data with orders directly\n",{"type":39,"tag":1072,"props":28964,"children":28965},{"class":1074,"line":21027},[28966],{"type":39,"tag":1072,"props":28967,"children":28968},{},[28969],{"type":45,"value":28970},"- For daily KPIs, use `reports.rpt_daily_kpis` as the single source of truth\n",{"type":39,"tag":1072,"props":28972,"children":28973},{"class":1074,"line":21048},[28974],{"type":39,"tag":1072,"props":28975,"children":28976},{},[28977],{"type":45,"value":28978},"- Prefer `staging.*` tables over `raw.*` for any analysis\n",{"type":39,"tag":1248,"props":28980,"children":28981},{"v-slot:bigquery":7},[28982],{"type":39,"tag":1062,"props":28983,"children":28985},{"className":28547,"code":28984,"language":491,"meta":7,"style":7},"# AGENTS.md\n\n## Data access\n- Use `bruin query --connection bigquery-default --query \"\u003CSQL>\"` for all data access\n- Always show the SQL query and explain your reasoning before executing it\n- Add `LIMIT 10` to your SQL when exploring unfamiliar tables or testing complex queries\n- Read the `assets\u002F` directory to understand available tables and their schemas before querying\n- This is a **read-only** environment - never run INSERT, UPDATE, DELETE, or DROP statements\n\n\u003C!-- Customize this list to match the sources you actually connected in Step 1.\n     The example below includes Shopify, Stripe, Klaviyo, Facebook Ads, and GA4.\n     Remove any you don't use and add any additional sources (e.g., TikTok Ads, Pinterest, Zendesk). -->\n## Project overview\nThis is an ecommerce analytics pipeline ingesting data from Shopify (orders,\ncustomers, products, inventory), Stripe (payments, refunds, payouts),\nKlaviyo (email campaigns, flows), Facebook Ads (campaigns, ad insights),\nand GA4 (sessions, events) into your data warehouse.\n\nThe pipeline has three layers:\n- **raw.*** - ingested data from SaaS sources (do not query directly for reporting)\n- **staging.*** - cleaned, deduplicated, joined tables\n- **reports.*** - aggregated business metrics and KPIs\n\n## Domain glossary\n- **AOV** - Average Order Value: net revenue divided by number of paid orders\n- **GMV** - Gross Merchandise Value: total order value before returns and discounts\n- **NMV** - Net Merchandise Value: GMV minus returns, cancellations, and discounts\n- **ROAS** - Return on Ad Spend: attributed revenue divided by ad spend\n- **CAC** - Customer Acquisition Cost: total marketing spend divided by new customers\n- **LTV** - Lifetime Value: total revenue from a customer across all orders\n- **Conversion Rate** - percentage of website sessions resulting in a completed purchase\n- **Cart Abandonment** - percentage of sessions with add-to-cart but no purchase\n- **Repeat Purchase Rate** - percentage of customers with more than one order\n- **Churn** - customers with no order in the past 90 days\n- **SKU** - Stock Keeping Unit: unique identifier for a product variant\n- **Basket Size** - number of items in a single order\n\n## Data caveats\n- All timestamps are in **UTC**\n- Stripe amounts are in **cents** - divide by 100 for dollar values\n- `customer_email` is `NULL` for guest checkouts (~15-20% of orders)\n- Refund window is **30 days** - recent revenue figures may be revised downward\n- Inventory data syncs every **4 hours** - not real-time\n- Shopify `order_total` includes tax and shipping; use `subtotal` for product revenue only\n- Facebook Ads data has a **24-48 hour attribution delay**\n- Klaviyo campaigns have no direct spend - they appear with $0 spend in marketing reports\n\n## Query guidelines\n- For revenue, always use **NMV** (net of returns) unless explicitly asked for GMV\n- Exclude test orders: `WHERE customer_email NOT LIKE '%@test.%'`\n- Use a **12-month lookback window** for LTV calculations by default\n- For marketing attribution, use `reports.rpt_marketing_roi` - do not attempt to join raw ad data with orders directly\n- For daily KPIs, use `reports.rpt_daily_kpis` as the single source of truth\n- Prefer `staging.*` tables over `raw.*` for any analysis\n",[28986],{"type":39,"tag":70,"props":28987,"children":28988},{"__ignoreMap":7},[28989,28996,29003,29010,29018,29025,29032,29039,29046,29053,29060,29067,29074,29081,29088,29095,29102,29109,29116,29123,29130,29137,29144,29151,29158,29165,29172,29179,29186,29193,29200,29207,29214,29221,29228,29235,29242,29249,29256,29263,29270,29277,29284,29291,29298,29305,29312,29319,29326,29333,29340,29347,29354,29361],{"type":39,"tag":1072,"props":28990,"children":28991},{"class":1074,"line":868},[28992],{"type":39,"tag":1072,"props":28993,"children":28994},{},[28995],{"type":45,"value":28560},{"type":39,"tag":1072,"props":28997,"children":28998},{"class":1074,"line":476},[28999],{"type":39,"tag":1072,"props":29000,"children":29001},{"emptyLinePlaceholder":19},[29002],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29004,"children":29005},{"class":1074,"line":483},[29006],{"type":39,"tag":1072,"props":29007,"children":29008},{},[29009],{"type":45,"value":28575},{"type":39,"tag":1072,"props":29011,"children":29012},{"class":1074,"line":1626},[29013],{"type":39,"tag":1072,"props":29014,"children":29015},{},[29016],{"type":45,"value":29017},"- Use `bruin query --connection bigquery-default --query \"\u003CSQL>\"` for all data access\n",{"type":39,"tag":1072,"props":29019,"children":29020},{"class":1074,"line":11},[29021],{"type":39,"tag":1072,"props":29022,"children":29023},{},[29024],{"type":45,"value":28591},{"type":39,"tag":1072,"props":29026,"children":29027},{"class":1074,"line":20},[29028],{"type":39,"tag":1072,"props":29029,"children":29030},{},[29031],{"type":45,"value":28599},{"type":39,"tag":1072,"props":29033,"children":29034},{"class":1074,"line":1679},[29035],{"type":39,"tag":1072,"props":29036,"children":29037},{},[29038],{"type":45,"value":28607},{"type":39,"tag":1072,"props":29040,"children":29041},{"class":1074,"line":860},[29042],{"type":39,"tag":1072,"props":29043,"children":29044},{},[29045],{"type":45,"value":28615},{"type":39,"tag":1072,"props":29047,"children":29048},{"class":1074,"line":2907},[29049],{"type":39,"tag":1072,"props":29050,"children":29051},{"emptyLinePlaceholder":19},[29052],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29054,"children":29055},{"class":1074,"line":7515},[29056],{"type":39,"tag":1072,"props":29057,"children":29058},{},[29059],{"type":45,"value":28630},{"type":39,"tag":1072,"props":29061,"children":29062},{"class":1074,"line":7524},[29063],{"type":39,"tag":1072,"props":29064,"children":29065},{},[29066],{"type":45,"value":28638},{"type":39,"tag":1072,"props":29068,"children":29069},{"class":1074,"line":7533},[29070],{"type":39,"tag":1072,"props":29071,"children":29072},{},[29073],{"type":45,"value":28646},{"type":39,"tag":1072,"props":29075,"children":29076},{"class":1074,"line":7542},[29077],{"type":39,"tag":1072,"props":29078,"children":29079},{},[29080],{"type":45,"value":28654},{"type":39,"tag":1072,"props":29082,"children":29083},{"class":1074,"line":7551},[29084],{"type":39,"tag":1072,"props":29085,"children":29086},{},[29087],{"type":45,"value":28662},{"type":39,"tag":1072,"props":29089,"children":29090},{"class":1074,"line":2380},[29091],{"type":39,"tag":1072,"props":29092,"children":29093},{},[29094],{"type":45,"value":28670},{"type":39,"tag":1072,"props":29096,"children":29097},{"class":1074,"line":7568},[29098],{"type":39,"tag":1072,"props":29099,"children":29100},{},[29101],{"type":45,"value":28678},{"type":39,"tag":1072,"props":29103,"children":29104},{"class":1074,"line":7577},[29105],{"type":39,"tag":1072,"props":29106,"children":29107},{},[29108],{"type":45,"value":28686},{"type":39,"tag":1072,"props":29110,"children":29111},{"class":1074,"line":7585},[29112],{"type":39,"tag":1072,"props":29113,"children":29114},{"emptyLinePlaceholder":19},[29115],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29117,"children":29118},{"class":1074,"line":7593},[29119],{"type":39,"tag":1072,"props":29120,"children":29121},{},[29122],{"type":45,"value":28701},{"type":39,"tag":1072,"props":29124,"children":29125},{"class":1074,"line":7602},[29126],{"type":39,"tag":1072,"props":29127,"children":29128},{},[29129],{"type":45,"value":28709},{"type":39,"tag":1072,"props":29131,"children":29132},{"class":1074,"line":7611},[29133],{"type":39,"tag":1072,"props":29134,"children":29135},{},[29136],{"type":45,"value":28717},{"type":39,"tag":1072,"props":29138,"children":29139},{"class":1074,"line":7620},[29140],{"type":39,"tag":1072,"props":29141,"children":29142},{},[29143],{"type":45,"value":28725},{"type":39,"tag":1072,"props":29145,"children":29146},{"class":1074,"line":7629},[29147],{"type":39,"tag":1072,"props":29148,"children":29149},{"emptyLinePlaceholder":19},[29150],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29152,"children":29153},{"class":1074,"line":7638},[29154],{"type":39,"tag":1072,"props":29155,"children":29156},{},[29157],{"type":45,"value":28740},{"type":39,"tag":1072,"props":29159,"children":29160},{"class":1074,"line":7647},[29161],{"type":39,"tag":1072,"props":29162,"children":29163},{},[29164],{"type":45,"value":28748},{"type":39,"tag":1072,"props":29166,"children":29167},{"class":1074,"line":7656},[29168],{"type":39,"tag":1072,"props":29169,"children":29170},{},[29171],{"type":45,"value":28756},{"type":39,"tag":1072,"props":29173,"children":29174},{"class":1074,"line":7684},[29175],{"type":39,"tag":1072,"props":29176,"children":29177},{},[29178],{"type":45,"value":28764},{"type":39,"tag":1072,"props":29180,"children":29181},{"class":1074,"line":7706},[29182],{"type":39,"tag":1072,"props":29183,"children":29184},{},[29185],{"type":45,"value":28772},{"type":39,"tag":1072,"props":29187,"children":29188},{"class":1074,"line":7732},[29189],{"type":39,"tag":1072,"props":29190,"children":29191},{},[29192],{"type":45,"value":28780},{"type":39,"tag":1072,"props":29194,"children":29195},{"class":1074,"line":7758},[29196],{"type":39,"tag":1072,"props":29197,"children":29198},{},[29199],{"type":45,"value":28788},{"type":39,"tag":1072,"props":29201,"children":29202},{"class":1074,"line":7783},[29203],{"type":39,"tag":1072,"props":29204,"children":29205},{},[29206],{"type":45,"value":28796},{"type":39,"tag":1072,"props":29208,"children":29209},{"class":1074,"line":7804},[29210],{"type":39,"tag":1072,"props":29211,"children":29212},{},[29213],{"type":45,"value":28804},{"type":39,"tag":1072,"props":29215,"children":29216},{"class":1074,"line":7874},[29217],{"type":39,"tag":1072,"props":29218,"children":29219},{},[29220],{"type":45,"value":28812},{"type":39,"tag":1072,"props":29222,"children":29223},{"class":1074,"line":7936},[29224],{"type":39,"tag":1072,"props":29225,"children":29226},{},[29227],{"type":45,"value":28820},{"type":39,"tag":1072,"props":29229,"children":29230},{"class":1074,"line":7998},[29231],{"type":39,"tag":1072,"props":29232,"children":29233},{},[29234],{"type":45,"value":28828},{"type":39,"tag":1072,"props":29236,"children":29237},{"class":1074,"line":8060},[29238],{"type":39,"tag":1072,"props":29239,"children":29240},{},[29241],{"type":45,"value":28836},{"type":39,"tag":1072,"props":29243,"children":29244},{"class":1074,"line":8081},[29245],{"type":39,"tag":1072,"props":29246,"children":29247},{"emptyLinePlaceholder":19},[29248],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29250,"children":29251},{"class":1074,"line":8102},[29252],{"type":39,"tag":1072,"props":29253,"children":29254},{},[29255],{"type":45,"value":28851},{"type":39,"tag":1072,"props":29257,"children":29258},{"class":1074,"line":8123},[29259],{"type":39,"tag":1072,"props":29260,"children":29261},{},[29262],{"type":45,"value":28859},{"type":39,"tag":1072,"props":29264,"children":29265},{"class":1074,"line":8169},[29266],{"type":39,"tag":1072,"props":29267,"children":29268},{},[29269],{"type":45,"value":28867},{"type":39,"tag":1072,"props":29271,"children":29272},{"class":1074,"line":8195},[29273],{"type":39,"tag":1072,"props":29274,"children":29275},{},[29276],{"type":45,"value":28875},{"type":39,"tag":1072,"props":29278,"children":29279},{"class":1074,"line":8221},[29280],{"type":39,"tag":1072,"props":29281,"children":29282},{},[29283],{"type":45,"value":28883},{"type":39,"tag":1072,"props":29285,"children":29286},{"class":1074,"line":8249},[29287],{"type":39,"tag":1072,"props":29288,"children":29289},{},[29290],{"type":45,"value":28891},{"type":39,"tag":1072,"props":29292,"children":29293},{"class":1074,"line":8275},[29294],{"type":39,"tag":1072,"props":29295,"children":29296},{},[29297],{"type":45,"value":28899},{"type":39,"tag":1072,"props":29299,"children":29300},{"class":1074,"line":8316},[29301],{"type":39,"tag":1072,"props":29302,"children":29303},{},[29304],{"type":45,"value":28907},{"type":39,"tag":1072,"props":29306,"children":29307},{"class":1074,"line":9194},[29308],{"type":39,"tag":1072,"props":29309,"children":29310},{},[29311],{"type":45,"value":28915},{"type":39,"tag":1072,"props":29313,"children":29314},{"class":1074,"line":9253},[29315],{"type":39,"tag":1072,"props":29316,"children":29317},{"emptyLinePlaceholder":19},[29318],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29320,"children":29321},{"class":1074,"line":20944},[29322],{"type":39,"tag":1072,"props":29323,"children":29324},{},[29325],{"type":45,"value":28930},{"type":39,"tag":1072,"props":29327,"children":29328},{"class":1074,"line":20952},[29329],{"type":39,"tag":1072,"props":29330,"children":29331},{},[29332],{"type":45,"value":28938},{"type":39,"tag":1072,"props":29334,"children":29335},{"class":1074,"line":20960},[29336],{"type":39,"tag":1072,"props":29337,"children":29338},{},[29339],{"type":45,"value":28946},{"type":39,"tag":1072,"props":29341,"children":29342},{"class":1074,"line":20986},[29343],{"type":39,"tag":1072,"props":29344,"children":29345},{},[29346],{"type":45,"value":28954},{"type":39,"tag":1072,"props":29348,"children":29349},{"class":1074,"line":21006},[29350],{"type":39,"tag":1072,"props":29351,"children":29352},{},[29353],{"type":45,"value":28962},{"type":39,"tag":1072,"props":29355,"children":29356},{"class":1074,"line":21027},[29357],{"type":39,"tag":1072,"props":29358,"children":29359},{},[29360],{"type":45,"value":28970},{"type":39,"tag":1072,"props":29362,"children":29363},{"class":1074,"line":21048},[29364],{"type":39,"tag":1072,"props":29365,"children":29366},{},[29367],{"type":45,"value":28978},{"type":39,"tag":1248,"props":29369,"children":29370},{"v-slot:snowflake":7},[29371],{"type":39,"tag":1062,"props":29372,"children":29374},{"className":28547,"code":29373,"language":491,"meta":7,"style":7},"# AGENTS.md\n\n## Data access\n- Use `bruin query --connection snowflake-default --query \"\u003CSQL>\"` for all data access\n- Always show the SQL query and explain your reasoning before executing it\n- Add `LIMIT 10` to your SQL when exploring unfamiliar tables or testing complex queries\n- Read the `assets\u002F` directory to understand available tables and their schemas before querying\n- This is a **read-only** environment - never run INSERT, UPDATE, DELETE, or DROP statements\n\n\u003C!-- Customize this list to match the sources you actually connected in Step 1.\n     The example below includes Shopify, Stripe, Klaviyo, Facebook Ads, and GA4.\n     Remove any you don't use and add any additional sources (e.g., TikTok Ads, Pinterest, Zendesk). -->\n## Project overview\nThis is an ecommerce analytics pipeline ingesting data from Shopify (orders,\ncustomers, products, inventory), Stripe (payments, refunds, payouts),\nKlaviyo (email campaigns, flows), Facebook Ads (campaigns, ad insights),\nand GA4 (sessions, events) into your data warehouse.\n\nThe pipeline has three layers:\n- **raw.*** - ingested data from SaaS sources (do not query directly for reporting)\n- **staging.*** - cleaned, deduplicated, joined tables\n- **reports.*** - aggregated business metrics and KPIs\n\n## Domain glossary\n- **AOV** - Average Order Value: net revenue divided by number of paid orders\n- **GMV** - Gross Merchandise Value: total order value before returns and discounts\n- **NMV** - Net Merchandise Value: GMV minus returns, cancellations, and discounts\n- **ROAS** - Return on Ad Spend: attributed revenue divided by ad spend\n- **CAC** - Customer Acquisition Cost: total marketing spend divided by new customers\n- **LTV** - Lifetime Value: total revenue from a customer across all orders\n- **Conversion Rate** - percentage of website sessions resulting in a completed purchase\n- **Cart Abandonment** - percentage of sessions with add-to-cart but no purchase\n- **Repeat Purchase Rate** - percentage of customers with more than one order\n- **Churn** - customers with no order in the past 90 days\n- **SKU** - Stock Keeping Unit: unique identifier for a product variant\n- **Basket Size** - number of items in a single order\n\n## Data caveats\n- All timestamps are in **UTC**\n- Stripe amounts are in **cents** - divide by 100 for dollar values\n- `customer_email` is `NULL` for guest checkouts (~15-20% of orders)\n- Refund window is **30 days** - recent revenue figures may be revised downward\n- Inventory data syncs every **4 hours** - not real-time\n- Shopify `order_total` includes tax and shipping; use `subtotal` for product revenue only\n- Facebook Ads data has a **24-48 hour attribution delay**\n- Klaviyo campaigns have no direct spend - they appear with $0 spend in marketing reports\n\n## Query guidelines\n- For revenue, always use **NMV** (net of returns) unless explicitly asked for GMV\n- Exclude test orders: `WHERE customer_email NOT LIKE '%@test.%'`\n- Use a **12-month lookback window** for LTV calculations by default\n- For marketing attribution, use `reports.rpt_marketing_roi` - do not attempt to join raw ad data with orders directly\n- For daily KPIs, use `reports.rpt_daily_kpis` as the single source of truth\n- Prefer `staging.*` tables over `raw.*` for any analysis\n",[29375],{"type":39,"tag":70,"props":29376,"children":29377},{"__ignoreMap":7},[29378,29385,29392,29399,29407,29414,29421,29428,29435,29442,29449,29456,29463,29470,29477,29484,29491,29498,29505,29512,29519,29526,29533,29540,29547,29554,29561,29568,29575,29582,29589,29596,29603,29610,29617,29624,29631,29638,29645,29652,29659,29666,29673,29680,29687,29694,29701,29708,29715,29722,29729,29736,29743,29750],{"type":39,"tag":1072,"props":29379,"children":29380},{"class":1074,"line":868},[29381],{"type":39,"tag":1072,"props":29382,"children":29383},{},[29384],{"type":45,"value":28560},{"type":39,"tag":1072,"props":29386,"children":29387},{"class":1074,"line":476},[29388],{"type":39,"tag":1072,"props":29389,"children":29390},{"emptyLinePlaceholder":19},[29391],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29393,"children":29394},{"class":1074,"line":483},[29395],{"type":39,"tag":1072,"props":29396,"children":29397},{},[29398],{"type":45,"value":28575},{"type":39,"tag":1072,"props":29400,"children":29401},{"class":1074,"line":1626},[29402],{"type":39,"tag":1072,"props":29403,"children":29404},{},[29405],{"type":45,"value":29406},"- Use `bruin query --connection snowflake-default --query \"\u003CSQL>\"` for all data access\n",{"type":39,"tag":1072,"props":29408,"children":29409},{"class":1074,"line":11},[29410],{"type":39,"tag":1072,"props":29411,"children":29412},{},[29413],{"type":45,"value":28591},{"type":39,"tag":1072,"props":29415,"children":29416},{"class":1074,"line":20},[29417],{"type":39,"tag":1072,"props":29418,"children":29419},{},[29420],{"type":45,"value":28599},{"type":39,"tag":1072,"props":29422,"children":29423},{"class":1074,"line":1679},[29424],{"type":39,"tag":1072,"props":29425,"children":29426},{},[29427],{"type":45,"value":28607},{"type":39,"tag":1072,"props":29429,"children":29430},{"class":1074,"line":860},[29431],{"type":39,"tag":1072,"props":29432,"children":29433},{},[29434],{"type":45,"value":28615},{"type":39,"tag":1072,"props":29436,"children":29437},{"class":1074,"line":2907},[29438],{"type":39,"tag":1072,"props":29439,"children":29440},{"emptyLinePlaceholder":19},[29441],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29443,"children":29444},{"class":1074,"line":7515},[29445],{"type":39,"tag":1072,"props":29446,"children":29447},{},[29448],{"type":45,"value":28630},{"type":39,"tag":1072,"props":29450,"children":29451},{"class":1074,"line":7524},[29452],{"type":39,"tag":1072,"props":29453,"children":29454},{},[29455],{"type":45,"value":28638},{"type":39,"tag":1072,"props":29457,"children":29458},{"class":1074,"line":7533},[29459],{"type":39,"tag":1072,"props":29460,"children":29461},{},[29462],{"type":45,"value":28646},{"type":39,"tag":1072,"props":29464,"children":29465},{"class":1074,"line":7542},[29466],{"type":39,"tag":1072,"props":29467,"children":29468},{},[29469],{"type":45,"value":28654},{"type":39,"tag":1072,"props":29471,"children":29472},{"class":1074,"line":7551},[29473],{"type":39,"tag":1072,"props":29474,"children":29475},{},[29476],{"type":45,"value":28662},{"type":39,"tag":1072,"props":29478,"children":29479},{"class":1074,"line":2380},[29480],{"type":39,"tag":1072,"props":29481,"children":29482},{},[29483],{"type":45,"value":28670},{"type":39,"tag":1072,"props":29485,"children":29486},{"class":1074,"line":7568},[29487],{"type":39,"tag":1072,"props":29488,"children":29489},{},[29490],{"type":45,"value":28678},{"type":39,"tag":1072,"props":29492,"children":29493},{"class":1074,"line":7577},[29494],{"type":39,"tag":1072,"props":29495,"children":29496},{},[29497],{"type":45,"value":28686},{"type":39,"tag":1072,"props":29499,"children":29500},{"class":1074,"line":7585},[29501],{"type":39,"tag":1072,"props":29502,"children":29503},{"emptyLinePlaceholder":19},[29504],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29506,"children":29507},{"class":1074,"line":7593},[29508],{"type":39,"tag":1072,"props":29509,"children":29510},{},[29511],{"type":45,"value":28701},{"type":39,"tag":1072,"props":29513,"children":29514},{"class":1074,"line":7602},[29515],{"type":39,"tag":1072,"props":29516,"children":29517},{},[29518],{"type":45,"value":28709},{"type":39,"tag":1072,"props":29520,"children":29521},{"class":1074,"line":7611},[29522],{"type":39,"tag":1072,"props":29523,"children":29524},{},[29525],{"type":45,"value":28717},{"type":39,"tag":1072,"props":29527,"children":29528},{"class":1074,"line":7620},[29529],{"type":39,"tag":1072,"props":29530,"children":29531},{},[29532],{"type":45,"value":28725},{"type":39,"tag":1072,"props":29534,"children":29535},{"class":1074,"line":7629},[29536],{"type":39,"tag":1072,"props":29537,"children":29538},{"emptyLinePlaceholder":19},[29539],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29541,"children":29542},{"class":1074,"line":7638},[29543],{"type":39,"tag":1072,"props":29544,"children":29545},{},[29546],{"type":45,"value":28740},{"type":39,"tag":1072,"props":29548,"children":29549},{"class":1074,"line":7647},[29550],{"type":39,"tag":1072,"props":29551,"children":29552},{},[29553],{"type":45,"value":28748},{"type":39,"tag":1072,"props":29555,"children":29556},{"class":1074,"line":7656},[29557],{"type":39,"tag":1072,"props":29558,"children":29559},{},[29560],{"type":45,"value":28756},{"type":39,"tag":1072,"props":29562,"children":29563},{"class":1074,"line":7684},[29564],{"type":39,"tag":1072,"props":29565,"children":29566},{},[29567],{"type":45,"value":28764},{"type":39,"tag":1072,"props":29569,"children":29570},{"class":1074,"line":7706},[29571],{"type":39,"tag":1072,"props":29572,"children":29573},{},[29574],{"type":45,"value":28772},{"type":39,"tag":1072,"props":29576,"children":29577},{"class":1074,"line":7732},[29578],{"type":39,"tag":1072,"props":29579,"children":29580},{},[29581],{"type":45,"value":28780},{"type":39,"tag":1072,"props":29583,"children":29584},{"class":1074,"line":7758},[29585],{"type":39,"tag":1072,"props":29586,"children":29587},{},[29588],{"type":45,"value":28788},{"type":39,"tag":1072,"props":29590,"children":29591},{"class":1074,"line":7783},[29592],{"type":39,"tag":1072,"props":29593,"children":29594},{},[29595],{"type":45,"value":28796},{"type":39,"tag":1072,"props":29597,"children":29598},{"class":1074,"line":7804},[29599],{"type":39,"tag":1072,"props":29600,"children":29601},{},[29602],{"type":45,"value":28804},{"type":39,"tag":1072,"props":29604,"children":29605},{"class":1074,"line":7874},[29606],{"type":39,"tag":1072,"props":29607,"children":29608},{},[29609],{"type":45,"value":28812},{"type":39,"tag":1072,"props":29611,"children":29612},{"class":1074,"line":7936},[29613],{"type":39,"tag":1072,"props":29614,"children":29615},{},[29616],{"type":45,"value":28820},{"type":39,"tag":1072,"props":29618,"children":29619},{"class":1074,"line":7998},[29620],{"type":39,"tag":1072,"props":29621,"children":29622},{},[29623],{"type":45,"value":28828},{"type":39,"tag":1072,"props":29625,"children":29626},{"class":1074,"line":8060},[29627],{"type":39,"tag":1072,"props":29628,"children":29629},{},[29630],{"type":45,"value":28836},{"type":39,"tag":1072,"props":29632,"children":29633},{"class":1074,"line":8081},[29634],{"type":39,"tag":1072,"props":29635,"children":29636},{"emptyLinePlaceholder":19},[29637],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29639,"children":29640},{"class":1074,"line":8102},[29641],{"type":39,"tag":1072,"props":29642,"children":29643},{},[29644],{"type":45,"value":28851},{"type":39,"tag":1072,"props":29646,"children":29647},{"class":1074,"line":8123},[29648],{"type":39,"tag":1072,"props":29649,"children":29650},{},[29651],{"type":45,"value":28859},{"type":39,"tag":1072,"props":29653,"children":29654},{"class":1074,"line":8169},[29655],{"type":39,"tag":1072,"props":29656,"children":29657},{},[29658],{"type":45,"value":28867},{"type":39,"tag":1072,"props":29660,"children":29661},{"class":1074,"line":8195},[29662],{"type":39,"tag":1072,"props":29663,"children":29664},{},[29665],{"type":45,"value":28875},{"type":39,"tag":1072,"props":29667,"children":29668},{"class":1074,"line":8221},[29669],{"type":39,"tag":1072,"props":29670,"children":29671},{},[29672],{"type":45,"value":28883},{"type":39,"tag":1072,"props":29674,"children":29675},{"class":1074,"line":8249},[29676],{"type":39,"tag":1072,"props":29677,"children":29678},{},[29679],{"type":45,"value":28891},{"type":39,"tag":1072,"props":29681,"children":29682},{"class":1074,"line":8275},[29683],{"type":39,"tag":1072,"props":29684,"children":29685},{},[29686],{"type":45,"value":28899},{"type":39,"tag":1072,"props":29688,"children":29689},{"class":1074,"line":8316},[29690],{"type":39,"tag":1072,"props":29691,"children":29692},{},[29693],{"type":45,"value":28907},{"type":39,"tag":1072,"props":29695,"children":29696},{"class":1074,"line":9194},[29697],{"type":39,"tag":1072,"props":29698,"children":29699},{},[29700],{"type":45,"value":28915},{"type":39,"tag":1072,"props":29702,"children":29703},{"class":1074,"line":9253},[29704],{"type":39,"tag":1072,"props":29705,"children":29706},{"emptyLinePlaceholder":19},[29707],{"type":45,"value":7644},{"type":39,"tag":1072,"props":29709,"children":29710},{"class":1074,"line":20944},[29711],{"type":39,"tag":1072,"props":29712,"children":29713},{},[29714],{"type":45,"value":28930},{"type":39,"tag":1072,"props":29716,"children":29717},{"class":1074,"line":20952},[29718],{"type":39,"tag":1072,"props":29719,"children":29720},{},[29721],{"type":45,"value":28938},{"type":39,"tag":1072,"props":29723,"children":29724},{"class":1074,"line":20960},[29725],{"type":39,"tag":1072,"props":29726,"children":29727},{},[29728],{"type":45,"value":28946},{"type":39,"tag":1072,"props":29730,"children":29731},{"class":1074,"line":20986},[29732],{"type":39,"tag":1072,"props":29733,"children":29734},{},[29735],{"type":45,"value":28954},{"type":39,"tag":1072,"props":29737,"children":29738},{"class":1074,"line":21006},[29739],{"type":39,"tag":1072,"props":29740,"children":29741},{},[29742],{"type":45,"value":28962},{"type":39,"tag":1072,"props":29744,"children":29745},{"class":1074,"line":21027},[29746],{"type":39,"tag":1072,"props":29747,"children":29748},{},[29749],{"type":45,"value":28970},{"type":39,"tag":1072,"props":29751,"children":29752},{"class":1074,"line":21048},[29753],{"type":39,"tag":1072,"props":29754,"children":29755},{},[29756],{"type":45,"value":28978},{"type":39,"tag":85,"props":29758,"children":29760},{"id":29759},"_3-ask-claude-code-real-business-questions",[29761],{"type":45,"value":29762},"3) Ask Claude Code real business questions",{"type":39,"tag":48,"props":29764,"children":29765},{},[29766,29768,29773],{"type":45,"value":29767},"With the Bruin MCP connected and ",{"type":39,"tag":70,"props":29769,"children":29771},{"className":29770},[],[29772],{"type":45,"value":75},{"type":45,"value":29774}," in place, Claude Code is now your ecommerce data analyst. Try these:",{"type":39,"tag":115,"props":29776,"children":29777},{},[29778],{"type":39,"tag":48,"props":29779,"children":29780},{},[29781],{"type":45,"value":29782},"What was our revenue last week compared to the week before? Break it down by day.",{"type":39,"tag":115,"props":29784,"children":29785},{},[29786],{"type":39,"tag":48,"props":29787,"children":29788},{},[29789],{"type":45,"value":29790},"Which marketing channel had the best ROAS in the past 30 days?",{"type":39,"tag":115,"props":29792,"children":29793},{},[29794],{"type":39,"tag":48,"props":29795,"children":29796},{},[29797],{"type":45,"value":29798},"Show me the customer cohort retention curve for customers acquired in January.",{"type":39,"tag":115,"props":29800,"children":29801},{},[29802],{"type":39,"tag":48,"props":29803,"children":29804},{},[29805],{"type":45,"value":29806},"What are our top 10 products by revenue this month, and what's their cancellation rate?",{"type":39,"tag":115,"props":29808,"children":29809},{},[29810],{"type":39,"tag":48,"props":29811,"children":29812},{},[29813,29818,29820,29826,29828,29833,29835,29840],{"type":39,"tag":97,"props":29814,"children":29815},{},[29816],{"type":45,"value":29817},"Note:",{"type":45,"value":29819}," The ",{"type":39,"tag":70,"props":29821,"children":29823},{"className":29822},[],[29824],{"type":45,"value":29825},"rpt_product_performance",{"type":45,"value":29827}," report currently shows catalog data from ",{"type":39,"tag":70,"props":29829,"children":29831},{"className":29830},[],[29832],{"type":45,"value":20000},{"type":45,"value":29834}," only. To get revenue-per-product metrics, expand the pipeline with a ",{"type":39,"tag":70,"props":29836,"children":29838},{"className":29837},[],[29839],{"type":45,"value":7288},{"type":45,"value":29841}," asset that flattens Shopify's nested line item JSON, then ask Claude Code to rebuild this report with order-level data.",{"type":39,"tag":115,"props":29843,"children":29844},{},[29845],{"type":39,"tag":48,"props":29846,"children":29847},{},[29848],{"type":45,"value":29849},"What's our conversion rate trend over the past 3 months?",{"type":39,"tag":48,"props":29851,"children":29852},{},[29853,29855,29860],{"type":45,"value":29854},"Claude Code uses the Bruin MCP to query your warehouse directly, reading the ",{"type":39,"tag":70,"props":29856,"children":29858},{"className":29857},[],[29859],{"type":45,"value":75},{"type":45,"value":29861}," for context on your domain terms and data quirks before writing SQL.",{"type":39,"tag":85,"props":29863,"children":29865},{"id":29864},"_4-iterate-on-agentsmd",[29866],{"type":45,"value":29867},"4) Iterate on AGENTS.md",{"type":39,"tag":48,"props":29869,"children":29870},{},[29871,29873,29878],{"type":45,"value":29872},"When the agent gets something wrong - wrong column, wrong metric definition, expensive query - add a correction to ",{"type":39,"tag":70,"props":29874,"children":29876},{"className":29875},[],[29877],{"type":45,"value":75},{"type":45,"value":29879},". For example:",{"type":39,"tag":1062,"props":29881,"children":29883},{"className":28547,"code":29882,"language":491,"meta":7,"style":7},"## Known issues\n- The `stg_orders.order_total` includes tax. For product-only revenue, use `subtotal` instead.\n- When computing repeat purchase rate, count by `customer_email`, not by `order_id`.\n",[29884],{"type":39,"tag":70,"props":29885,"children":29886},{"__ignoreMap":7},[29887,29895,29903],{"type":39,"tag":1072,"props":29888,"children":29889},{"class":1074,"line":868},[29890],{"type":39,"tag":1072,"props":29891,"children":29892},{},[29893],{"type":45,"value":29894},"## Known issues\n",{"type":39,"tag":1072,"props":29896,"children":29897},{"class":1074,"line":476},[29898],{"type":39,"tag":1072,"props":29899,"children":29900},{},[29901],{"type":45,"value":29902},"- The `stg_orders.order_total` includes tax. For product-only revenue, use `subtotal` instead.\n",{"type":39,"tag":1072,"props":29904,"children":29905},{"class":1074,"line":483},[29906],{"type":39,"tag":1072,"props":29907,"children":29908},{},[29909],{"type":45,"value":29910},"- When computing repeat purchase rate, count by `customer_email`, not by `order_id`.\n",{"type":39,"tag":48,"props":29912,"children":29913},{},[29914,29916,29921],{"type":45,"value":29915},"The more you use it, the better your ",{"type":39,"tag":70,"props":29917,"children":29919},{"className":29918},[],[29920],{"type":45,"value":75},{"type":45,"value":29922}," gets. When the agent makes a mistake, that's a sign something is missing from the context file.",{"type":39,"tag":85,"props":29924,"children":29926},{"id":29925},"_5-deploy-to-bruin-cloud",[29927],{"type":45,"value":29928},"5) Deploy to Bruin Cloud",{"type":39,"tag":48,"props":29930,"children":29931},{},[29932],{"type":45,"value":29933},"Now let's make this available to the whole team - in Slack or Teams, not just locally.",{"type":39,"tag":48,"props":29935,"children":29936},{},[29937],{"type":39,"tag":97,"props":29938,"children":29939},{},[29940],{"type":45,"value":29941},"Push your project to GitHub:",{"type":39,"tag":115,"props":29943,"children":29944},{},[29945],{"type":39,"tag":48,"props":29946,"children":29947},{},[29948,29952,29953,29958,29960,29965,29967,29972],{"type":39,"tag":97,"props":29949,"children":29950},{},[29951],{"type":45,"value":29817},{"type":45,"value":1335},{"type":39,"tag":70,"props":29954,"children":29956},{"className":29955},[],[29957],{"type":45,"value":1170},{"type":45,"value":29959}," contains your connection credentials. ",{"type":39,"tag":70,"props":29961,"children":29963},{"className":29962},[],[29964],{"type":45,"value":1058},{"type":45,"value":29966}," adds it to ",{"type":39,"tag":70,"props":29968,"children":29970},{"className":29969},[],[29971],{"type":45,"value":1219},{"type":45,"value":29973}," by default - verify it's there before pushing.",{"type":39,"tag":1062,"props":29975,"children":29977},{"className":1064,"code":29976,"language":1066,"meta":7,"style":7},"git add -A -- ':!.bruin.yml'\ngit commit -m \"ecommerce analytics pipeline\"\ngit remote add origin https:\u002F\u002Fgithub.com\u002Fyour-org\u002Fecommerce-analytics.git\ngit push -u origin main\n",[29978],{"type":39,"tag":70,"props":29979,"children":29980},{"__ignoreMap":7},[29981,30006,30028,30054],{"type":39,"tag":1072,"props":29982,"children":29983},{"class":1074,"line":868},[29984,29988,29992,29997,30001],{"type":39,"tag":1072,"props":29985,"children":29986},{"style":1078},[29987],{"type":45,"value":1112},{"type":39,"tag":1072,"props":29989,"children":29990},{"style":1084},[29991],{"type":45,"value":2224},{"type":39,"tag":1072,"props":29993,"children":29994},{"style":1096},[29995],{"type":45,"value":29996}," -A",{"type":39,"tag":1072,"props":29998,"children":29999},{"style":1096},[30000],{"type":45,"value":2234},{"type":39,"tag":1072,"props":30002,"children":30003},{"style":1084},[30004],{"type":45,"value":30005}," ':!.bruin.yml'\n",{"type":39,"tag":1072,"props":30007,"children":30008},{"class":1074,"line":476},[30009,30013,30018,30023],{"type":39,"tag":1072,"props":30010,"children":30011},{"style":1078},[30012],{"type":45,"value":1112},{"type":39,"tag":1072,"props":30014,"children":30015},{"style":1084},[30016],{"type":45,"value":30017}," commit",{"type":39,"tag":1072,"props":30019,"children":30020},{"style":1096},[30021],{"type":45,"value":30022}," -m",{"type":39,"tag":1072,"props":30024,"children":30025},{"style":1084},[30026],{"type":45,"value":30027}," \"ecommerce analytics pipeline\"\n",{"type":39,"tag":1072,"props":30029,"children":30030},{"class":1074,"line":483},[30031,30035,30040,30044,30049],{"type":39,"tag":1072,"props":30032,"children":30033},{"style":1078},[30034],{"type":45,"value":1112},{"type":39,"tag":1072,"props":30036,"children":30037},{"style":1084},[30038],{"type":45,"value":30039}," remote",{"type":39,"tag":1072,"props":30041,"children":30042},{"style":1084},[30043],{"type":45,"value":2224},{"type":39,"tag":1072,"props":30045,"children":30046},{"style":1084},[30047],{"type":45,"value":30048}," origin",{"type":39,"tag":1072,"props":30050,"children":30051},{"style":1084},[30052],{"type":45,"value":30053}," https:\u002F\u002Fgithub.com\u002Fyour-org\u002Fecommerce-analytics.git\n",{"type":39,"tag":1072,"props":30055,"children":30056},{"class":1074,"line":1626},[30057,30061,30066,30071,30075],{"type":39,"tag":1072,"props":30058,"children":30059},{"style":1078},[30060],{"type":45,"value":1112},{"type":39,"tag":1072,"props":30062,"children":30063},{"style":1084},[30064],{"type":45,"value":30065}," push",{"type":39,"tag":1072,"props":30067,"children":30068},{"style":1096},[30069],{"type":45,"value":30070}," -u",{"type":39,"tag":1072,"props":30072,"children":30073},{"style":1084},[30074],{"type":45,"value":30048},{"type":39,"tag":1072,"props":30076,"children":30077},{"style":1084},[30078],{"type":45,"value":30079}," main\n",{"type":39,"tag":48,"props":30081,"children":30082},{},[30083],{"type":39,"tag":97,"props":30084,"children":30085},{},[30086],{"type":45,"value":30087},"Add the repo to Bruin Cloud:",{"type":39,"tag":295,"props":30089,"children":30090},{},[30091,30108,30113,30126,30131],{"type":39,"tag":245,"props":30092,"children":30093},{},[30094,30096,30101,30103],{"type":45,"value":30095},"Go to ",{"type":39,"tag":467,"props":30097,"children":30099},{"href":1224,"rel":30098},[921],[30100],{"type":45,"value":14},{"type":45,"value":30102},", open ",{"type":39,"tag":97,"props":30104,"children":30105},{},[30106],{"type":45,"value":30107},"Team Settings > Projects",{"type":39,"tag":245,"props":30109,"children":30110},{},[30111],{"type":45,"value":30112},"Add your GitHub repository",{"type":39,"tag":245,"props":30114,"children":30115},{},[30116,30118,30124],{"type":45,"value":30117},"Enable the ",{"type":39,"tag":70,"props":30119,"children":30121},{"className":30120},[],[30122],{"type":45,"value":30123},"ecommerce",{"type":45,"value":30125}," pipeline",{"type":39,"tag":245,"props":30127,"children":30128},{},[30129],{"type":45,"value":30130},"Configure your connections (warehouse, Shopify, Stripe, etc.) in the Cloud environment",{"type":39,"tag":245,"props":30132,"children":30133},{},[30134],{"type":45,"value":30135},"Run the pipeline to confirm it works",{"type":39,"tag":48,"props":30137,"children":30138},{},[30139],{"type":39,"tag":97,"props":30140,"children":30141},{},[30142],{"type":45,"value":30143},"Create the Slack\u002FTeams AI agent:",{"type":39,"tag":295,"props":30145,"children":30146},{},[30147,30156,30167,30172,30177],{"type":39,"tag":245,"props":30148,"children":30149},{},[30150,30151],{"type":45,"value":30095},{"type":39,"tag":97,"props":30152,"children":30153},{},[30154],{"type":45,"value":30155},"Agents > Create Agent",{"type":39,"tag":245,"props":30157,"children":30158},{},[30159,30161,30166],{"type":45,"value":30160},"Select your repo and the ",{"type":39,"tag":70,"props":30162,"children":30164},{"className":30163},[],[30165],{"type":45,"value":30123},{"type":45,"value":30125},{"type":39,"tag":245,"props":30168,"children":30169},{},[30170],{"type":45,"value":30171},"Add your Slack (or Teams) credentials",{"type":39,"tag":245,"props":30173,"children":30174},{},[30175],{"type":45,"value":30176},"Name the agent, e.g. \"Ecommerce Analyst\"",{"type":39,"tag":245,"props":30178,"children":30179},{},[30180],{"type":45,"value":30181},"Select the target channel where your team asks data questions",{"type":39,"tag":48,"props":30183,"children":30184},{},[30185],{"type":39,"tag":97,"props":30186,"children":30187},{},[30188],{"type":45,"value":30189},"Test in Slack:",{"type":39,"tag":48,"props":30191,"children":30192},{},[30193],{"type":45,"value":30194},"Mention the agent in your channel:",{"type":39,"tag":115,"props":30196,"children":30197},{},[30198],{"type":39,"tag":48,"props":30199,"children":30200},{},[30201],{"type":45,"value":30202},"@Ecommerce Analyst What was our revenue yesterday?",{"type":39,"tag":48,"props":30204,"children":30205},{},[30206,30208,30213],{"type":45,"value":30207},"The agent queries your warehouse using the same ",{"type":39,"tag":70,"props":30209,"children":30211},{"className":30210},[],[30212],{"type":45,"value":75},{"type":45,"value":30214}," context and responds with an answer. Anyone on the team can ask questions without writing SQL.",{"type":39,"tag":40,"props":30216,"children":30217},{"id":285},[30218],{"type":45,"value":288},{"type":39,"tag":241,"props":30220,"children":30221},{},[30222,30235,30248,30258],{"type":39,"tag":245,"props":30223,"children":30224},{},[30225,30233],{"type":39,"tag":97,"props":30226,"children":30227},{},[30228],{"type":39,"tag":70,"props":30229,"children":30231},{"className":30230},[],[30232],{"type":45,"value":28383},{"type":45,"value":30234}," auto-generated metadata for all your pipeline assets",{"type":39,"tag":245,"props":30236,"children":30237},{},[30238,30246],{"type":39,"tag":97,"props":30239,"children":30240},{},[30241],{"type":39,"tag":70,"props":30242,"children":30244},{"className":30243},[],[30245],{"type":45,"value":75},{"type":45,"value":30247}," gives the AI analyst ecommerce-specific domain knowledge",{"type":39,"tag":245,"props":30249,"children":30250},{},[30251,30256],{"type":39,"tag":97,"props":30252,"children":30253},{},[30254],{"type":45,"value":30255},"Local AI analyst",{"type":45,"value":30257}," with Claude Code answering business questions through Bruin MCP",{"type":39,"tag":245,"props":30259,"children":30260},{},[30261,30266],{"type":39,"tag":97,"props":30262,"children":30263},{},[30264],{"type":45,"value":30265},"Cloud AI analyst",{"type":45,"value":30267}," runs on Bruin Cloud and responds to questions in Slack or Teams",{"type":39,"tag":48,"props":30269,"children":30270},{},[30271],{"type":45,"value":30272},"Next up, you'll build interactive dashboards using the same AI agent in Bruin Cloud.",{"type":39,"tag":2354,"props":30274,"children":30275},{},[30276],{"type":45,"value":2358},{"title":7,"searchDepth":476,"depth":476,"links":30278},[30279,30280,30281,30288],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":30282},[30283,30284,30285,30286,30287],{"id":28433,"depth":483,"text":28436},{"id":28492,"depth":483,"text":28495},{"id":29759,"depth":483,"text":29762},{"id":29864,"depth":483,"text":29867},{"id":29925,"depth":483,"text":29928},{"id":285,"depth":476,"text":288},"content:tutorials:ecommerce-pipeline:ai-analyst.md","tutorials\u002Fecommerce-pipeline\u002Fai-analyst.md","tutorials\u002Fecommerce-pipeline\u002Fai-analyst",{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"readingTime":11,"category":12,"tags":30293,"difficulty":18,"module":5,"subSteps":19,"step":20,"journeys":30294,"learnMore":30295,"author":30298,"body":30299,"_type":491,"_id":492,"_source":493,"_file":494,"_stem":495,"_extension":496},[14,15,16,17],[22,23],[30296,30297],{"label":26,"url":27},{"label":29,"url":30},{"name":32,"role":33,"image":34},{"type":36,"children":30300,"toc":30636},[30301,30305,30309,30313,30317,30327,30331,30335,30344,30348,30352,30359,30369,30373,30377,30384,30394,30398,30402,30409,30419,30423,30427,30434,30444,30448,30452,30480,30484,30488,30492,30527,30530,30534,30538,30589,30599,30606],{"type":39,"tag":40,"props":30302,"children":30303},{"id":42},[30304],{"type":45,"value":46},{"type":39,"tag":48,"props":30306,"children":30307},{},[30308],{"type":45,"value":52},{"type":39,"tag":40,"props":30310,"children":30311},{"id":55},[30312],{"type":45,"value":58},{"type":39,"tag":48,"props":30314,"children":30315},{},[30316],{"type":45,"value":63},{"type":39,"tag":48,"props":30318,"children":30319},{},[30320,30321,30326],{"type":45,"value":68},{"type":39,"tag":70,"props":30322,"children":30324},{"className":30323},[],[30325],{"type":45,"value":75},{"type":45,"value":77},{"type":39,"tag":40,"props":30328,"children":30329},{"id":80},[30330],{"type":45,"value":83},{"type":39,"tag":85,"props":30332,"children":30333},{"id":87},[30334],{"type":45,"value":90},{"type":39,"tag":48,"props":30336,"children":30337},{},[30338,30339,30343],{"type":45,"value":95},{"type":39,"tag":97,"props":30340,"children":30341},{},[30342],{"type":45,"value":16},{"type":45,"value":102},{"type":39,"tag":85,"props":30345,"children":30346},{"id":105},[30347],{"type":45,"value":108},{"type":39,"tag":48,"props":30349,"children":30350},{},[30351],{"type":45,"value":113},{"type":39,"tag":115,"props":30353,"children":30354},{},[30355],{"type":39,"tag":48,"props":30356,"children":30357},{},[30358],{"type":45,"value":122},{"type":39,"tag":48,"props":30360,"children":30361},{},[30362,30363,30368],{"type":45,"value":127},{"type":39,"tag":70,"props":30364,"children":30366},{"className":30365},[],[30367],{"type":45,"value":133},{"type":45,"value":135},{"type":39,"tag":85,"props":30370,"children":30371},{"id":138},[30372],{"type":45,"value":141},{"type":39,"tag":48,"props":30374,"children":30375},{},[30376],{"type":45,"value":113},{"type":39,"tag":115,"props":30378,"children":30379},{},[30380],{"type":39,"tag":48,"props":30381,"children":30382},{},[30383],{"type":45,"value":153},{"type":39,"tag":48,"props":30385,"children":30386},{},[30387,30388,30393],{"type":45,"value":158},{"type":39,"tag":70,"props":30389,"children":30391},{"className":30390},[],[30392],{"type":45,"value":164},{"type":45,"value":166},{"type":39,"tag":85,"props":30395,"children":30396},{"id":169},[30397],{"type":45,"value":172},{"type":39,"tag":48,"props":30399,"children":30400},{},[30401],{"type":45,"value":113},{"type":39,"tag":115,"props":30403,"children":30404},{},[30405],{"type":39,"tag":48,"props":30406,"children":30407},{},[30408],{"type":45,"value":184},{"type":39,"tag":48,"props":30410,"children":30411},{},[30412,30413,30418],{"type":45,"value":189},{"type":39,"tag":70,"props":30414,"children":30416},{"className":30415},[],[30417],{"type":45,"value":195},{"type":45,"value":197},{"type":39,"tag":85,"props":30420,"children":30421},{"id":200},[30422],{"type":45,"value":203},{"type":39,"tag":48,"props":30424,"children":30425},{},[30426],{"type":45,"value":113},{"type":39,"tag":115,"props":30428,"children":30429},{},[30430],{"type":39,"tag":48,"props":30431,"children":30432},{},[30433],{"type":45,"value":215},{"type":39,"tag":48,"props":30435,"children":30436},{},[30437,30438,30443],{"type":45,"value":220},{"type":39,"tag":70,"props":30439,"children":30441},{"className":30440},[],[30442],{"type":45,"value":226},{"type":45,"value":228},{"type":39,"tag":85,"props":30445,"children":30446},{"id":231},[30447],{"type":45,"value":234},{"type":39,"tag":48,"props":30449,"children":30450},{},[30451],{"type":45,"value":239},{"type":39,"tag":241,"props":30453,"children":30454},{},[30455,30463,30472],{"type":39,"tag":245,"props":30456,"children":30457},{},[30458,30459],{"type":45,"value":249},{"type":39,"tag":251,"props":30460,"children":30461},{},[30462],{"type":45,"value":255},{"type":39,"tag":245,"props":30464,"children":30465},{},[30466,30467,30471],{"type":45,"value":260},{"type":39,"tag":251,"props":30468,"children":30469},{},[30470],{"type":45,"value":265},{"type":45,"value":267},{"type":39,"tag":245,"props":30473,"children":30474},{},[30475,30476],{"type":45,"value":272},{"type":39,"tag":251,"props":30477,"children":30478},{},[30479],{"type":45,"value":277},{"type":39,"tag":48,"props":30481,"children":30482},{},[30483],{"type":45,"value":282},{"type":39,"tag":40,"props":30485,"children":30486},{"id":285},[30487],{"type":45,"value":288},{"type":39,"tag":48,"props":30489,"children":30490},{},[30491],{"type":45,"value":293},{"type":39,"tag":295,"props":30493,"children":30494},{},[30495,30503,30511,30519],{"type":39,"tag":245,"props":30496,"children":30497},{},[30498,30502],{"type":39,"tag":97,"props":30499,"children":30500},{},[30501],{"type":45,"value":305},{"type":45,"value":307},{"type":39,"tag":245,"props":30504,"children":30505},{},[30506,30510],{"type":39,"tag":97,"props":30507,"children":30508},{},[30509],{"type":45,"value":315},{"type":45,"value":317},{"type":39,"tag":245,"props":30512,"children":30513},{},[30514,30518],{"type":39,"tag":97,"props":30515,"children":30516},{},[30517],{"type":45,"value":325},{"type":45,"value":327},{"type":39,"tag":245,"props":30520,"children":30521},{},[30522,30526],{"type":39,"tag":97,"props":30523,"children":30524},{},[30525],{"type":45,"value":335},{"type":45,"value":337},{"type":39,"tag":339,"props":30528,"children":30529},{},[],{"type":39,"tag":40,"props":30531,"children":30532},{"id":344},[30533],{"type":45,"value":347},{"type":39,"tag":48,"props":30535,"children":30536},{},[30537],{"type":45,"value":352},{"type":39,"tag":241,"props":30539,"children":30540},{},[30541,30549,30557,30565,30573,30581],{"type":39,"tag":245,"props":30542,"children":30543},{},[30544,30548],{"type":39,"tag":97,"props":30545,"children":30546},{},[30547],{"type":45,"value":363},{"type":45,"value":365},{"type":39,"tag":245,"props":30550,"children":30551},{},[30552,30556],{"type":39,"tag":97,"props":30553,"children":30554},{},[30555],{"type":45,"value":373},{"type":45,"value":375},{"type":39,"tag":245,"props":30558,"children":30559},{},[30560,30564],{"type":39,"tag":97,"props":30561,"children":30562},{},[30563],{"type":45,"value":383},{"type":45,"value":385},{"type":39,"tag":245,"props":30566,"children":30567},{},[30568,30572],{"type":39,"tag":97,"props":30569,"children":30570},{},[30571],{"type":45,"value":393},{"type":45,"value":395},{"type":39,"tag":245,"props":30574,"children":30575},{},[30576,30580],{"type":39,"tag":97,"props":30577,"children":30578},{},[30579],{"type":45,"value":403},{"type":45,"value":405},{"type":39,"tag":245,"props":30582,"children":30583},{},[30584,30588],{"type":39,"tag":97,"props":30585,"children":30586},{},[30587],{"type":45,"value":413},{"type":45,"value":415},{"type":39,"tag":48,"props":30590,"children":30591},{},[30592,30593,30598],{"type":45,"value":420},{"type":39,"tag":70,"props":30594,"children":30596},{"className":30595},[],[30597],{"type":45,"value":75},{"type":45,"value":427},{"type":39,"tag":48,"props":30600,"children":30601},{},[30602],{"type":39,"tag":97,"props":30603,"children":30604},{},[30605],{"type":45,"value":435},{"type":39,"tag":241,"props":30607,"children":30608},{},[30609,30613,30623,30627],{"type":39,"tag":245,"props":30610,"children":30611},{},[30612],{"type":45,"value":443},{"type":39,"tag":245,"props":30614,"children":30615},{},[30616,30617,30622],{"type":45,"value":448},{"type":39,"tag":70,"props":30618,"children":30620},{"className":30619},[],[30621],{"type":45,"value":75},{"type":45,"value":455},{"type":39,"tag":245,"props":30624,"children":30625},{},[30626],{"type":45,"value":460},{"type":39,"tag":245,"props":30628,"children":30629},{},[30630,30631,30635],{"type":45,"value":465},{"type":39,"tag":467,"props":30632,"children":30633},{"href":469},[30634],{"type":45,"value":472},{"type":45,"value":474},{"title":7,"searchDepth":476,"depth":476,"links":30637},[30638,30639,30640,30648,30649],{"id":42,"depth":476,"text":46},{"id":55,"depth":476,"text":58},{"id":80,"depth":476,"text":83,"children":30641},[30642,30643,30644,30645,30646,30647],{"id":87,"depth":483,"text":90},{"id":105,"depth":483,"text":108},{"id":138,"depth":483,"text":141},{"id":169,"depth":483,"text":172},{"id":200,"depth":483,"text":203},{"id":231,"depth":483,"text":234},{"id":285,"depth":476,"text":288},{"id":344,"depth":476,"text":347},1776143482654]