{"avg":{"avg_bot_access":91.6,"avg_rendering":93,"avg_structure":35.3,"avg_schema":9.4,"avg_tech_stack":63.4,"avg_overall":56.8},"domain":{"domain":"engineering.classdojo.com","crawled_at":"2026-03-20T02:02:23.563288Z","gptbot_allowed":true,"claudebot_allowed":true,"ccbot_allowed":true,"google_extended_allowed":true,"googlebot_allowed":true,"raw_text_length":25335,"rendered_text_length":26668,"ghost_ratio":0.05000000074505806,"rendering_type":"SSR","word_count":3748,"li_count":54,"tr_count":0,"th_count":0,"structure_score":1.440000057220459,"has_org_schema":false,"has_product_schema":false,"schema_count":0,"tech_stack":"gatsby","server_header":"AmazonS3","cdn":"","http_status":200,"load_time_ms":559,"total_html_bytes":189584,"useful_text_bytes":25335,"token_bloat_ratio":7.5,"images_total":19,"images_with_alt":4,"multimodal_pct":21,"tdm_reservation":false,"has_noai_tag":false,"script_bytes":3372,"has_breadcrumb_schema":false,"has_faq_schema":false,"has_article_schema":false,"has_website_schema":false,"page_title":"ClassDojo Engineering Blog","meta_description":"Welcome to the ClassDojo Engineering Blog","logo_url":"https://engineering.classdojo.com/favicon.ico","crawl_blocked":false,"ai_readiness_score":67,"sub_bot_access":100,"sub_rendering":99,"sub_structure":22,"sub_schema":0,"sub_tech_stack":75,"extractability_score":45,"crawl_cost_score":30,"crawl_cost_label":"Low","blocklist_risk":0,"blocklist_risk_label":"None","acri_score":40,"acri_extractability":75,"acri_semantic_structure":32,"acri_content_integrity":60,"acri_retrieval_robustness":12,"acri_grade":"D","h1_text":"ClassDojo Engineering","h2_texts":"Background | Challenge: Scaling metrics generation and visualization | Step 1: Understand the life of a ClassDojo metric | Identifying pain points by auditing the metrics journey | Step 2: Designing for the future | Setting up the macro parameters | Calling the macro on an existing fct_ table | Extending this macro after we launched to support DS self-serve | Key takeaways | Why do we run our tests this way?","category":"developer","title_length":26,"meta_desc_length":41,"has_canonical":true,"canonical_url":"https://engineering.classdojo.com/","canonical_mismatch":false,"has_meta_viewport":true,"h1_count":4,"h2_count":11,"h2_before_h1":false,"has_hreflang":false,"has_noindex":false,"has_lang_attr":true,"lang_attr":"en-us","og_title":"ClassDojo Engineering Blog","og_description":"Welcome to the ClassDojo Engineering Blog","og_image":"https://engineering.classdojo.com/classdojo-engineering.png","twitter_card":"summary_large_image","ttfb_ms":559,"dom_node_count":563,"html_payload_kb":185.1,"has_hsts":true,"has_csp":false,"cache_control":"max-age=60","sitemap_declared":true,"sitemap_url":"https://www.classdojo.com/sitemap.xml","internal_links":14,"external_links":44,"tracker_scripts":0,"tracker_token_pct":0,"global_score":61,"seo_pillar":41,"geo_pillar":67,"perf_pillar":68,"arch_pillar":70,"data_tier":0,"ai_trust_score":0,"ai_trust_rank":0,"ai_trust_percentile":0,"inbound_ai_links":0,"outbound_ai_links":0,"llm_analyzed":false},"percentile":59,"similar_domains":[{"domain":"chapterone.kr","acri_score":65,"ai_readiness_score":76,"tech_stack":"proprietary","category":"developer","token_bloat_ratio":8,"schema_count":0,"distance":11.9,"page_title":"챕터원 [ CHAPTER1 ] - 트렌디한 라이프리빙샵","h1_text":""},{"domain":"fashionforyes.com","acri_score":65,"ai_readiness_score":78,"tech_stack":"shopify","category":"developer","token_bloat_ratio":7.599999904632568,"schema_count":1,"distance":12.27999997138977,"page_title":"首頁 | Fashion For Yes | 超越舒服的無感體驗 讓妳可以穿著24小時","h1_text":""},{"domain":"ceramicpro.com","acri_score":65,"ai_readiness_score":81,"tech_stack":"wordpress","category":"developer","token_bloat_ratio":7.400000095367432,"schema_count":1,"distance":12.27999997138977,"page_title":"Ceramic Pro - The Global Leader in Nanoceramic Surface Protection","h1_text":"Automotive Protection"},{"domain":"italiano-bello.com","acri_score":65,"ai_readiness_score":80,"tech_stack":"wordpress","category":"developer","token_bloat_ratio":7.800000190734863,"schema_count":1,"distance":12.34000005722046,"page_title":"Italiano Bello - Imparare l'italiano è bello!","h1_text":"Imparare l'italiano è bello"},{"domain":"tech.coconala.com","acri_score":65,"ai_readiness_score":75,"tech_stack":"nextjs","category":"developer","token_bloat_ratio":7.199999809265137,"schema_count":1,"distance":12.34000005722046,"page_title":"【公式】ココナラテック｜フリーランスITエンジニア向け案件・求人サイト","h1_text":"簡単60秒無料面談のお申し込み"}]}
