{"id":8856,"date":"2026-11-05T01:40:32","date_gmt":"2026-11-04T18:40:32","guid":{"rendered":"https:\/\/adtek.agency\/?page_id=8856"},"modified":"2026-11-05T18:04:02","modified_gmt":"2026-11-05T11:04:02","slug":"ai-search-checker","status":"publish","type":"page","link":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/","title":{"rendered":"AI Search Checker"},"content":{"rendered":"<section class=\"sol-sec sol-band sol-hero\">\n<div class=\"container\">\n<div class=\"sol-hero-in\"><span class=\"sol-eyebrow\">Is your website ready for AI Search?<\/span><\/p>\n<h1>Free AIO (AI Search) Checker<\/h1>\n<p>Enter a website to see whether ChatGPT, Gemini, Perplexity and Google AI Overviews can read and cite your pages, with the fixes to make.<\/p>\n<div class=\"adtek-aio\" id=\"adtek-aio\">\n\t<form class=\"aio-form\" novalidate>\n\t\t<label class=\"aio-sr\" for=\"aio-url\">Your website<\/label>\n\t\t<input id=\"aio-url\" name=\"url\" type=\"text\" inputmode=\"url\" autocomplete=\"url\" placeholder=\"e.g. yourcompany.com\" required>\n\t\t<button type=\"submit\">Check for free<\/button>\n\t<\/form>\n\t<p class=\"aio-note\">Reads public signals of your homepage and up to 5 sample pages from your sitemap (robots.txt, HTML, structured data). Takes 20 to 60 seconds.<\/p>\n\t<div class=\"aio-out\" aria-live=\"polite\"><\/div>\n\t\t<div class=\"aio-show\">\n\t\t<h2 class=\"aio-show-h\">AIO scores of major brands in Vietnam<\/h2>\n\t\t<div class=\"aio-cards\">\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"0\">\n\t\t\t\t<span class=\"aio-card-n\">Th\u1ebf Gi\u1edbi Di \u0110\u1ed9ng<\/span>\n\t\t\t\t<span class=\"aio-card-h\">thegioididong.com<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>88<\/b>\/100 <em class=\"aio-card-g g-A\">A<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:88%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"1\">\n\t\t\t\t<span class=\"aio-card-n\">Vinamilk<\/span>\n\t\t\t\t<span class=\"aio-card-h\">vinamilk.com.vn<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>82<\/b>\/100 <em class=\"aio-card-g g-B\">B<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:82%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"2\">\n\t\t\t\t<span class=\"aio-card-n\">Samsung<\/span>\n\t\t\t\t<span class=\"aio-card-h\">samsung.com<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>81<\/b>\/100 <em class=\"aio-card-g g-B\">B<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:81%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"3\">\n\t\t\t\t<span class=\"aio-card-n\">Masan Consumer<\/span>\n\t\t\t\t<span class=\"aio-card-h\">masanconsumer.com<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>76<\/b>\/100 <em class=\"aio-card-g g-B\">B<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:76%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"4\">\n\t\t\t\t<span class=\"aio-card-n\">Pharmacity<\/span>\n\t\t\t\t<span class=\"aio-card-h\">pharmacity.vn<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>72<\/b>\/100 <em class=\"aio-card-g g-B\">B<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:72%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"5\">\n\t\t\t\t<span class=\"aio-card-n\">Techcombank<\/span>\n\t\t\t\t<span class=\"aio-card-h\">techcombank.com<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>72<\/b>\/100 <em class=\"aio-card-g g-B\">B<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:72%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"6\">\n\t\t\t\t<span class=\"aio-card-n\">Vietnam Airlines<\/span>\n\t\t\t\t<span class=\"aio-card-h\">vietnamairlines.com<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>55<\/b>\/100 <em class=\"aio-card-g g-C\">C<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:55%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"7\">\n\t\t\t\t<span class=\"aio-card-n\">Vietcombank<\/span>\n\t\t\t\t<span class=\"aio-card-h\">vietcombank.com.vn<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>45<\/b>\/100 <em class=\"aio-card-g g-D\">D<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:45%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t\t<button type=\"button\" class=\"aio-card\" data-i=\"8\">\n\t\t\t\t<span class=\"aio-card-n\">Shopee<\/span>\n\t\t\t\t<span class=\"aio-card-h\">shopee.vn<\/span>\n\t\t\t\t<span class=\"aio-card-s\"><b>32<\/b>\/100 <em class=\"aio-card-g g-F\">F<\/em><\/span>\n\t\t\t\t<span class=\"aio-card-bar\"><i style=\"width:32%\"><\/i><\/span>\n\t\t\t<\/button>\n\t\t\t\t\t<\/div>\n\t\t<p class=\"aio-show-note\">Measured on 5 Nov 2026 from public signals of each homepage. The score reflects technical readiness for AI Search, not an assessment of the company. Click a card to see the breakdown.<\/p>\n\t<\/div>\n\t<\/div>\n<style>\n.adtek-aio{--n:#030D42;--o:#F27407;--m:#6B7290;--b:#E3E7F0;color:var(--n);font-size:1.6rem}\n.adtek-aio .aio-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}\n.adtek-aio .aio-form{display:flex;gap:1rem;max-width:64rem}\n.adtek-aio input{flex:1;min-width:0;height:5.6rem;padding:0 1.8rem;border:.1rem solid var(--b);border-radius:1.2rem;font-size:1.6rem;color:var(--n);background:#fff}\n.adtek-aio input:focus{outline:none;border-color:var(--o)}\n.adtek-aio button{height:5.6rem;padding:0 2.8rem;border:0;border-radius:1.2rem;background:var(--o);color:#fff;font-size:1.6rem;font-weight:700;cursor:pointer;white-space:nowrap}\n.adtek-aio button[disabled]{opacity:.6;cursor:wait}\n.adtek-aio .aio-note{margin:1.2rem 0 0;font-size:1.4rem;opacity:.8}\n.adtek-aio .aio-show{margin-top:4rem;max-width:64rem}\nhtml body .adtek-aio .aio-show-h{margin:0 0 1.6rem;font-size:2rem;font-weight:700;line-height:1.3;color:#fff}\n.adtek-aio .aio-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}\n.adtek-aio .aio-card{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;height:auto;min-width:0;padding:1.4rem 1.6rem;border:.1rem solid rgba(255,255,255,.18);border-radius:1.2rem;background:rgba(255,255,255,.06);color:#fff;font-weight:400;text-align:left;white-space:normal;cursor:pointer;transition:border-color .2s,background .2s}\n.adtek-aio .aio-card:hover,.adtek-aio .aio-card:focus-visible,.adtek-aio .aio-card.on{border-color:var(--o);background:rgba(255,255,255,.1);outline:none}\nhtml body .adtek-aio .aio-card span{color:#fff}\nhtml body .adtek-aio .aio-card .aio-card-n{font-size:1.5rem;font-weight:700;line-height:1.3}\nhtml body .adtek-aio .aio-card .aio-card-h{font-size:1.2rem;opacity:.65;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\nhtml body .adtek-aio .aio-card .aio-card-s{display:flex;align-items:center;gap:.6rem;margin-top:.4rem;font-size:1.3rem;opacity:.9}\n.adtek-aio .aio-card-s b{font-size:2.4rem;line-height:1;font-weight:800}\n.adtek-aio .aio-card-g{padding:.1rem .7rem;border-radius:.6rem;font-style:normal;font-size:1.2rem;font-weight:700}\n.adtek-aio .aio-card-g.g-A{background:#E6F6EE;color:#137A47}.adtek-aio .aio-card-g.g-B{background:#EEF6E0;color:#4D7C0F}.adtek-aio .aio-card-g.g-C{background:#FEF6E0;color:#A16207}.adtek-aio .aio-card-g.g-D{background:#FFEDE5;color:#C2410C}.adtek-aio .aio-card-g.g-F{background:#FDECEC;color:#B42318}\n\/* 1.4.2: v\u00f2ng tr\u00f2n x\u1ebfp lo\u1ea1i \u0111\u1ed5i m\u00e0u theo h\u1ea1ng A (xanh l\u00e1) \u0111\u1ebfn F (\u0111\u1ecf); ch\u1eef tr\u1eafng t\u01b0\u01a1ng ph\u1ea3n t\u1eeb 4.9:1 tr\u1edf l\u00ean (WCAG AA), v\u00f2ng tr\u00f2n n\u1ed5i r\u00f5 tr\u00ean h\u1ed9p tr\u1eafng. *\/\nhtml body .adtek-aio .aio-out .aio-grade.g-A{background:#137A47}html body .adtek-aio .aio-out .aio-grade.g-B{background:#4D7C0F}html body .adtek-aio .aio-out .aio-grade.g-C{background:#A16207}html body .adtek-aio .aio-out .aio-grade.g-D{background:#C2410C}html body .adtek-aio .aio-out .aio-grade.g-F{background:#B42318}\n.adtek-aio .aio-card-bar{display:block;width:100%;height:.5rem;margin-top:.4rem;border-radius:.3rem;background:rgba(255,255,255,.15);overflow:hidden}\n.adtek-aio .aio-card-bar i{display:block;height:100%;background:var(--o)}\nhtml body .adtek-aio .aio-show-note{margin:1.2rem 0 0;font-size:1.3rem;line-height:1.5;opacity:.7;color:#fff}\n.adtek-aio .aio-pages{display:grid;grid-template-columns:minmax(0,1fr);gap:.6rem}\n.adtek-aio .aio-page{display:flex;min-width:0;align-items:center;gap:1.2rem;padding:1rem 1.4rem;border:.1rem solid var(--b);border-radius:1rem}\nhtml body .adtek-aio .aio-out .aio-kind{flex:0 0 9rem;font-size:1.3rem;font-weight:600;color:var(--m)}\nhtml body .adtek-aio .aio-out a.aio-path{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--n);font-size:1.4rem;text-decoration:none}\n.adtek-aio .aio-page .aio-card-g{flex:0 0 auto;min-width:3.6rem;text-align:center}\n.adtek-aio .aio-snap{margin-top:2.4rem;padding:2rem 2.4rem;border-radius:1.6rem;background:#F4F6FA}\n.adtek-aio .aio-snap button{height:4.8rem;margin-top:1.2rem}\n.adtek-aio .aio-out:not(:empty){margin-top:3.2rem;padding:3.2rem;border:.1rem solid var(--b);border-radius:2rem;background:#fff;color:var(--n);text-align:left}\n.adtek-aio .aio-msg{margin:0;color:var(--n)}\n.adtek-aio .aio-top{display:flex;align-items:center;gap:2.4rem;flex-wrap:wrap}\n.adtek-aio .aio-score{display:flex;align-items:baseline;gap:.6rem}\n.adtek-aio .aio-score b{font-size:6rem;line-height:1;font-weight:800}\n.adtek-aio .aio-score span{font-size:1.6rem;color:var(--m)}\n.adtek-aio .aio-grade{display:inline-flex;align-items:center;justify-content:center;width:4.8rem;height:4.8rem;border-radius:50%;background:var(--n);color:#fff;font-size:2.2rem;font-weight:800}\n.adtek-aio .aio-host{font-weight:700;font-size:1.8rem}.adtek-aio .aio-sub{color:var(--m);font-size:1.4rem}\n.adtek-aio .aio-speedhelp{margin:12px 0 0;padding:14px 16px;background:#F5F7FB;border-radius:10px;font-size:1.4rem;line-height:1.55}.adtek-aio .aio-speedbox .aio-plat .aio-sub{display:block}.adtek-aio .aio-speedbox .aio-plat .aio-badge{display:inline-block;margin-top:8px}.adtek-aio .aio-speedhelp p{margin:0 0 8px}.adtek-aio .aio-speedhelp p:last-child{margin:0}.adtek-aio .aio-speedhelp p.aio-sub{margin-top:10px;font-size:1.3rem}\n.adtek-aio h3{margin:3.2rem 0 1.6rem;font-size:2rem;font-weight:700;color:var(--n)}\n.adtek-aio .aio-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 3.2rem}\n.adtek-aio .aio-bar{height:.8rem;margin-top:.6rem;border-radius:.4rem;background:#EEF1F7;overflow:hidden}\n.adtek-aio .aio-bar i{display:block;height:100%;background:var(--o)}\n.adtek-aio .aio-row{display:flex;justify-content:space-between;gap:1rem;font-size:1.5rem}\n.adtek-aio .aio-plats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}\n.adtek-aio .aio-plat{padding:1.4rem 1.6rem;border:.1rem solid var(--b);border-radius:1.2rem}\n.adtek-aio .aio-plat b{display:block;font-size:1.5rem}\n.adtek-aio .aio-badge{display:inline-block;margin-top:.6rem;padding:.2rem .8rem;border-radius:.6rem;font-size:1.25rem;font-weight:600}\n.adtek-aio .ready{background:#E6F6EE;color:#137A47}.adtek-aio .basic{background:#FFF3E6;color:#A65200}.adtek-aio .blocked{background:#FDECEC;color:#B42318}\n.adtek-aio .aio-list{margin:0;padding:0;list-style:none}\n.adtek-aio .aio-list li{position:relative;margin:0;padding:1rem 0 1rem 3rem;border-bottom:.1rem solid var(--b);font-size:1.5rem}\n.adtek-aio .aio-list li::before{position:absolute;left:0;top:1rem;width:2rem;text-align:center;font-weight:700}\n.adtek-aio .aio-list li.pass::before{content:\"\\2713\";color:#137A47}.adtek-aio .aio-list li.partial::before{content:\"\\25D0\";color:#A65200}.adtek-aio .aio-list li.fail::before{content:\"\\2717\";color:#B42318}\n.adtek-aio .aio-fix{display:block;margin-top:.4rem;color:var(--m);font-size:1.4rem}\nhtml body .adtek-aio .aio-out a.aio-guide{margin-left:1rem;color:var(--o);font-size:1.35rem;font-weight:600;text-decoration:underline;white-space:nowrap}\n.adtek-aio .aio-more{display:flex;flex-direction:column;align-items:center;gap:.4rem;width:100%;height:auto;margin:2.4rem 0 0;padding:1.6rem 2rem;border:.1rem dashed var(--o);border-radius:1.2rem;background:#FFF7EF;color:var(--n);font-size:1.5rem;font-weight:600;line-height:1.5;text-align:center;white-space:normal;cursor:pointer}\nhtml body .adtek-aio .aio-out .aio-more span{color:var(--n)}\n.adtek-aio .aio-arrow{color:var(--o);animation:aio-bob 1.4s ease-in-out infinite}\n@keyframes aio-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(.6rem)}}\n@media (prefers-reduced-motion:reduce){.adtek-aio .aio-arrow{animation:none}}\n.adtek-aio .aio-gate{margin-top:1.6rem;padding:2.4rem;border-radius:1.6rem;background:#F4F6FA}\n.adtek-aio .aio-gate form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.6rem}\n.adtek-aio .aio-gate input{height:4.8rem}.adtek-aio .aio-gate button{grid-column:1\/-1;height:5.2rem}\n.adtek-aio select{width:100%;min-width:0;height:4.8rem;padding:0 4rem 0 1.8rem;border:.1rem solid var(--b);border-radius:1.2rem;font-size:1.6rem;color:var(--n);background:#fff url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23030D42' stroke-width='1.6'\/%3E%3C\/svg%3E\") no-repeat right 1.6rem center;-webkit-appearance:none;appearance:none;cursor:pointer}\n.adtek-aio select:focus{outline:none;border-color:var(--o)}\n.adtek-aio .aio-field{display:flex;flex-direction:column;gap:.6rem;min-width:0;margin:0}\nhtml body .adtek-aio .aio-out .aio-lbl{font-size:1.4rem;font-weight:600;color:var(--n)}\n.adtek-aio .aio-field input,.adtek-aio .aio-field select{flex:0 0 auto;width:100%;box-sizing:border-box}\n.adtek-aio .aio-hp{position:absolute;left:-9999px}\n.adtek-aio .aio-consent{grid-column:1\/-1;display:flex;align-items:flex-start;gap:.8rem;font-size:1.35rem;line-height:1.45}\n.adtek-aio .aio-consent input{flex:0 0 auto;width:1.8rem;height:1.8rem;margin:.2rem 0 0}\nhtml body .adtek-aio .aio-out .aio-consent a{color:var(--o);text-decoration:underline}\n.adtek-aio .aio-eng{padding:1.6rem;border:.1rem solid var(--b);border-radius:1.2rem;margin-bottom:1.2rem}\n.adtek-aio .aio-cta{display:inline-block;margin-top:2.4rem;padding:1.4rem 2.8rem;border-radius:1.2rem;background:var(--n);color:#fff!important;font-weight:700}\n\/* C\u00f4ng c\u1ee5 n\u1eb1m trong d\u1ea3i navy c\u1ee7a hero: theme t\u00f4 ch\u1eef tr\u1eafng cho p, li v\u00e0 v\u1ebd ch\u1ea5m cam \u0111\u1ea7u d\u00f2ng; \u00e9p l\u1ea1i trong khung k\u1ebft qu\u1ea3 (html body \u0111\u1ec3 th\u1eafng .sol-detail .sol-band ...). *\/\nhtml body .adtek-aio .aio-out,html body .adtek-aio .aio-out p,html body .adtek-aio .aio-out li,html body .adtek-aio .aio-out span,html body .adtek-aio .aio-out b,html body .adtek-aio .aio-out div{color:var(--n)}\nhtml body .adtek-aio .aio-out .aio-sub,html body .adtek-aio .aio-out .aio-fix{color:var(--m)}\nhtml body .adtek-aio .aio-out .ready{color:#137A47}html body .adtek-aio .aio-out .basic{color:#A65200}html body .adtek-aio .aio-out .blocked{color:#B42318}html body .adtek-aio .aio-out .aio-grade{color:#fff}\nhtml body .adtek-aio .aio-list li{color:var(--n);list-style:none}\nhtml body .adtek-aio .aio-list li::before{width:2rem;height:auto;border-radius:0;background:none;transform:none}\n@media (max-width:767px){.adtek-aio .aio-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.adtek-aio .aio-form{flex-direction:column}.adtek-aio .aio-form input{flex:0 0 auto;width:100%}.adtek-aio .aio-out:not(:empty){padding:2rem 1.6rem}.adtek-aio .aio-groups,.adtek-aio .aio-gate form{grid-template-columns:minmax(0,1fr)}.adtek-aio .aio-plats{grid-template-columns:repeat(2,minmax(0,1fr))}.adtek-aio .aio-score b{font-size:4.8rem}}\n\/* 1.7.0: chia s\u1ebb k\u1ebft qu\u1ea3 (E), so s\u00e1nh \u0111\u1ed1i th\u1ee7 (F), d\u00f2ng k\u1ebft qu\u1ea3 \u0111\u01b0\u1ee3c chia s\u1ebb tr\u00ean n\u1ec1n navy. *\/\n.adtek-aio .aio-share{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;margin-top:1.6rem}\n.adtek-aio .aio-share-btn{display:inline-flex;align-items:center;gap:.8rem;height:4.4rem;padding:0 2rem;border:.15rem solid var(--o);background:#fff;color:var(--o);font-size:1.5rem}.adtek-aio .aio-share-btn svg{flex:0 0 auto}html body .adtek-aio .aio-out .aio-share-btn span{color:var(--o)}\n.adtek-aio .aio-share-row{display:flex;flex-wrap:wrap;gap:.8rem}\n.adtek-aio .aio-share-opt{height:4rem;padding:0 1.6rem;background:var(--n);font-size:1.4rem}\n.adtek-aio input.aio-share-link{box-sizing:border-box;width:100%;max-width:52rem;height:4.4rem;font-size:1.35rem;color:var(--m)}\n.adtek-aio .aio-cmp{margin-top:3.2rem;padding:2.4rem;border-radius:1.6rem;background:#F4F6FA}\n.adtek-aio .aio-cmp h3{margin-top:0;margin-bottom:.6rem}\n.adtek-aio .aio-cmp-form{display:flex;gap:1rem;margin-top:1.4rem}\n.adtek-aio .aio-cmp-form input,.adtek-aio .aio-cmp-form button{box-sizing:border-box;height:4.8rem}\n.adtek-aio .aio-cmp-out:not(:empty){margin-top:1.6rem}\n.adtek-aio .aio-cmp-t{margin-bottom:1.6rem;border:.1rem solid var(--b);border-radius:1.2rem;background:#fff;overflow:hidden}\n.adtek-aio .aio-cmp-r{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:center;padding:1rem 1.4rem;border-top:.1rem solid var(--b);font-size:1.45rem}\n.adtek-aio .aio-cmp-r:first-child{border-top:0}\n.adtek-aio .aio-cmp-r b{font-weight:600;text-align:center}\nhtml body .adtek-aio .aio-out .aio-cmp-r b.win{color:#137A47;font-weight:800}\nhtml body .adtek-aio .aio-out .aio-cmp-hd span{font-size:1.3rem;font-weight:700;color:var(--m);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.adtek-aio .aio-cmp-total{background:#FFF7EF}\n.adtek-aio .aio-cmp-lost .aio-more{margin-top:1.2rem}\n.adtek-aio .aio-waf-how{margin:1.2rem 0 0;line-height:1.55}\n.adtek-aio .aio-shared{display:flex;align-items:center;gap:1.2rem;max-width:64rem;margin:0 0 1.6rem;padding:1.4rem 1.8rem;border:.1rem solid rgba(255,255,255,.25);border-radius:1.2rem;background:rgba(255,255,255,.08)}\nhtml body .adtek-aio .aio-shared .aio-shared-t{color:#fff;font-size:1.5rem;line-height:1.5}\n.adtek-aio .aio-shared .aio-card-g{flex:0 0 auto;font-size:1.4rem;padding:.4rem .9rem}\n@media (max-width:767px){.adtek-aio .aio-cmp{padding:1.8rem 1.4rem}.adtek-aio .aio-cmp-form{flex-direction:column}.adtek-aio .aio-cmp-form input{flex:0 0 auto;width:100%}.adtek-aio .aio-cmp-r{gap:.6rem;padding:.9rem 1rem;font-size:1.35rem}.adtek-aio .aio-shared{align-items:flex-start}}\n<\/style>\n<script>\n(function (c) {\n\tvar en = c.lang === 'en', root = document.getElementById('adtek-aio'), out = root.querySelector('.aio-out'), form = root.querySelector('.aio-form');\n\tvar T = en ? {\n\t\tsoon: 'The checker is being finalised. Please come back soon or contact Adtek for a manual review.', wait: 'Checking your homepage and sample pages\u2026 this takes 20 to 60 seconds.',\n\t\tbad: 'Please enter a valid website, e.g. yourcompany.com.', blocked: 'This website refused our checker (error {s}). Firewalls that block unknown bots often block AI crawlers too: check bot blocking in Cloudflare or your security plugin.',\n\t\tfailed: 'Could not load the website (error {s}). Check the address and try again.', failed0: 'Could not load the website. Check the address and try again.',\n\t\tnoReach: 'The website did not respond within 15 seconds from a server outside Vietnam. If it blocks international traffic, AI crawlers (mostly based in the US) cannot read it either, so AI is unlikely to cite it. If the site opens normally inside Vietnam, Adtek can check it in more depth.', noReachCta: 'Ask Adtek to check',\n\t\tblockedWaf: 'This website refused our checker (error {s}). Its {w} firewall blocks unknown bots, so the website could not be read. Firewalls like this often block AI crawlers too, such as OAI-SearchBot (ChatGPT), PerplexityBot and Claude-SearchBot, which makes it hard for AI to cite the site.',\n\t\twafHow: { cloudflare: 'Where to check: in Cloudflare open Security, then Bots: review Bot Fight Mode, AI bot blocking (AI Crawl Control) and any WAF custom rules that block by User-Agent or country. AI search crawlers are on Cloudflare\\'s verified bots list and can be allowed.', akamai: 'Where to check: in Akamai review Bot Manager and the security rules that block by User-Agent or country; allow the AI search crawlers you want to be cited by.', sucuri: 'Where to check: in Sucuri open Firewall settings and review bot blocking and the allowlist.', imperva: 'Where to check: in Imperva review Bot Protection and the security rules; allow the AI search crawlers you want to be cited by.', aws: 'Where to check: in AWS WAF review the Bot Control rule group and rules that block by User-Agent.', azure: 'Where to check: in Azure Front Door or Application Gateway WAF review the bot protection rules.' },\n\t\twafNames: { cloudflare: 'Cloudflare', akamai: 'Akamai', sucuri: 'Sucuri', imperva: 'Imperva', aws: 'AWS', azure: 'Azure' },\n\t\tnoDns: 'This domain could not be found. Please check the spelling of the address.', noSsl: 'The website\\'s SSL certificate has an error, so the checker could not load it. AI crawlers usually skip sites with SSL errors too.', rate: 'Too many checks from your network. Please try again later.', err: 'Something went wrong. Please try again.',\n\t\tgroups: 'Score by group', plats: 'Readiness by AI platform', ready: 'Ready', basic: 'Basic', blockedS: 'Blocked',\n\t\tissues: '{n} items need fixing', gateH: 'Unlock the full report and an AI mention check', gateP: 'See how to fix each item, and whether ChatGPT and Gemini mention your brand when asked about your industry.',\n\t\temail: 'Work email *', phone: 'Phone *', company: 'Company name *', industry: 'Industry *', city: 'City', unlock: 'Show the full report',\n\t\tphEmail: 'you@company.com', phPhone: '+84 909 123 456', phCompany: 'ABC Co., Ltd', phIndustry: 'e.g. dental clinic',\n\t\tcityAll: 'Nationwide', cityOut: 'Outside Vietnam', grpCity: 'Centrally run cities', grpProv: 'Provinces', country: 'Vietnam',\n\t\tdetail: 'Full report', ai: 'Do AI assistants mention you?', aiWait: 'Asking ChatGPT and Gemini 8 questions, twice each\u2026 about 1 to 2 minutes.', aiNone: 'The AI mention check is not configured yet. Adtek will send you the result by email.',\n\t\tconsent: 'I agree that Adtek processes this information to send the report and contact me, under the', policy: 'Privacy Policy',\n\t\tmentioned: 'Mentioned', cited: 'Linked', of: 'of', others: 'Sites the AI cited instead', cta: 'Get help optimizing for AI Search', notConf: 'not configured', unavail: 'unavailable right now',\n\t\tcms: 'Platform', grade: 'Grade',\n\t\tsnap: 'Saved result measured on {d}. Step-by-step fixes and the AI mention check open for your own website.', snapBtn: 'Check your website', guide: 'How to fix', pagesH: '{n} pages checked', speedH: 'Mobile speed (real Chrome users)', speedWait: 'Fetching speed data from Google\u2026', lcp: 'Main content loads', inp: 'Response to taps', cls: 'Layout stability', fast: 'Good', avg: 'Needs work', slow: 'Poor',\n\t\tshareBtn: 'Share this result', shareWait: 'Creating share link\u2026', shareH: 'Share link ready:', shareMore: 'More apps (Zalo, Messenger\u2026)', copy: 'Copy link', copied: 'Link copied', shareTitle: '{h} scores {s}\/100 for AIO',\n\t\tsharedTxt: '{h} scores {s}\/100 for AIO (grade {g}), measured on {d}. What does your website score?',\n\t\tcmpH: 'Compare with a competitor', cmpP: 'Enter a competitor website to see both scores side by side.', cmpPh: 'e.g. competitor.com', cmpBtn: 'Compare', cmpWait: 'Checking the competitor website\u2026 about 20 to 40 seconds.', cmpSelf: 'Please enter a website other than yours.', cmpTotal: 'Total score', cmpPlats: 'AI platforms ready',\n\t\tcmpWin: 'The competitor beats you on {n} items', cmpNone: 'The competitor does not beat you on any item.', cmpYouWin: 'You beat the competitor on {n} items.', cmpLead: 'Leave your details in the form below to see these {n} items and how to fix them', cmpLost: 'Items the competitor passes and you do not:',\n\t\tspeedHelp: [['LCP (short for Largest Contentful Paint)', 'Time until the largest element on screen, usually the main image or text block, appears. Good: under 2.5 s. Poor: over 4 s.'], ['INP (short for Interaction to Next Paint)', 'Delay between a tap, click or key press and the page visibly responding. Good: under 200 ms. Poor: over 500 ms.'], ['CLS (short for Cumulative Layout Shift)', 'How much content jumps around while the page loads, for example a button moving just as you tap it. Good: under 0.1. Poor: over 0.25.']], speedP75: 'Each figure is the value that 75% of visits meet or beat. These are Google\\'s Core Web Vitals.',\n\t\tspeedNone: 'Not enough Chrome user data for this website yet, so Google has no speed figures.', speedPage: 'Data for this page over the last 28 days. Shown for reference, not part of the 100-point score.', speedOrigin: 'Data for the whole domain over the last 28 days (not enough data for this page alone). Shown for reference, not part of the 100-point score.', pageFail: '{f} of {t} pages fail', failOn: 'Pages that fail: ', times: 'times',\n\t\tkinds: { home: 'Homepage', product: 'Product', service: 'Service', blog: 'Article', about: 'About', other: 'Page' },\n\t\tmore: 'There is more: a detailed report with how to fix each of the {n} items, plus whether ChatGPT and Gemini mention your brand. Leave your email below to unlock it.'\n\t} : {\n\t\tsoon: 'C\u00f4ng c\u1ee5 \u0111ang \u0111\u01b0\u1ee3c ho\u00e0n thi\u1ec7n. Anh ch\u1ecb quay l\u1ea1i sau ho\u1eb7c li\u00ean h\u1ec7 Adtek \u0111\u1ec3 \u0111\u01b0\u1ee3c ki\u1ec3m tra th\u1ee7 c\u00f4ng.', wait: '\u0110ang ki\u1ec3m tra trang ch\u1ee7 v\u00e0 c\u00e1c trang m\u1eabu\u2026 m\u1ea5t kho\u1ea3ng 20 \u0111\u1ebfn 60 gi\u00e2y.',\n\t\tbad: 'Nh\u1eadp website h\u1ee3p l\u1ec7, v\u00ed d\u1ee5 tencongty.vn.', blocked: 'Website \u0111ang ch\u1eb7n c\u00f4ng c\u1ee5 ki\u1ec3m tra (l\u1ed7i {s}). T\u01b0\u1eddng l\u1eeda ch\u1eb7n bot l\u1ea1 th\u01b0\u1eddng ch\u1eb7n c\u1ea3 bot AI: ki\u1ec3m tra m\u1ee5c ch\u1eb7n bot trong Cloudflare ho\u1eb7c plugin b\u1ea3o m\u1eadt.',\n\t\tfailed: 'Kh\u00f4ng t\u1ea3i \u0111\u01b0\u1ee3c website (l\u1ed7i {s}). Ki\u1ec3m tra l\u1ea1i \u0111\u1ecba ch\u1ec9 r\u1ed3i th\u1eed l\u1ea1i.', failed0: 'Kh\u00f4ng t\u1ea3i \u0111\u01b0\u1ee3c website. Ki\u1ec3m tra l\u1ea1i \u0111\u1ecba ch\u1ec9 r\u1ed3i th\u1eed l\u1ea1i.',\n\t\tnoReach: 'Website kh\u00f4ng ph\u1ea3n h\u1ed3i trong 15 gi\u00e2y khi truy c\u1eadp t\u1eeb m\u00e1y ch\u1ee7 ngo\u00e0i Vi\u1ec7t Nam. N\u1ebfu website ch\u1eb7n truy c\u1eadp qu\u1ed1c t\u1ebf th\u00ec bot AI (ph\u1ea7n l\u1edbn \u0111\u1eb7t t\u1ea1i M\u1ef9) c\u0169ng kh\u00f4ng \u0111\u1ecdc \u0111\u01b0\u1ee3c, n\u00ean AI kh\u00f3 d\u1eabn ngu\u1ed3n website c\u1ee7a anh ch\u1ecb. N\u1ebfu website v\u1eabn m\u1edf b\u00ecnh th\u01b0\u1eddng trong n\u01b0\u1edbc, Adtek c\u00f3 th\u1ec3 ki\u1ec3m tra k\u1ef9 h\u01a1n.', noReachCta: 'Nh\u1edd Adtek ki\u1ec3m tra',\n\t\tblockedWaf: 'Website \u0111ang ch\u1eb7n c\u00f4ng c\u1ee5 ki\u1ec3m tra (l\u1ed7i {s}). T\u01b0\u1eddng l\u1eeda {w} ch\u1eb7n bot l\u1ea1 n\u00ean c\u00f4ng c\u1ee5 kh\u00f4ng \u0111\u1ecdc \u0111\u01b0\u1ee3c website. T\u01b0\u1eddng l\u1eeda ki\u1ec3u n\u00e0y th\u01b0\u1eddng ch\u1eb7n lu\u00f4n bot AI nh\u01b0 OAI-SearchBot (ChatGPT), PerplexityBot, Claude-SearchBot, khi\u1ebfn AI kh\u00f3 d\u1eabn ngu\u1ed3n website.',\n\t\twafHow: { cloudflare: 'Ch\u1ed7 c\u1ea7n ki\u1ec3m tra: trong Cloudflare v\u00e0o Security, m\u1ee5c Bots: xem Bot Fight Mode, ch\u1ebf \u0111\u1ed9 ch\u1eb7n bot AI (AI Crawl Control) v\u00e0 c\u00e1c quy t\u1eafc WAF ch\u1eb7n theo User-Agent ho\u1eb7c qu\u1ed1c gia. Bot t\u00ecm ki\u1ebfm c\u1ee7a AI n\u1eb1m trong danh s\u00e1ch Verified Bots c\u1ee7a Cloudflare v\u00e0 c\u00f3 th\u1ec3 cho ph\u00e9p ri\u00eang.', akamai: 'Ch\u1ed7 c\u1ea7n ki\u1ec3m tra: trong Akamai xem Bot Manager v\u00e0 c\u00e1c quy t\u1eafc b\u1ea3o m\u1eadt ch\u1eb7n theo User-Agent ho\u1eb7c qu\u1ed1c gia; cho ph\u00e9p c\u00e1c bot t\u00ecm ki\u1ebfm c\u1ee7a AI m\u00e0 doanh nghi\u1ec7p mu\u1ed1n \u0111\u01b0\u1ee3c d\u1eabn ngu\u1ed3n.', sucuri: 'Ch\u1ed7 c\u1ea7n ki\u1ec3m tra: trong Sucuri v\u00e0o Firewall, xem m\u1ee5c ch\u1eb7n bot v\u00e0 danh s\u00e1ch cho ph\u00e9p.', imperva: 'Ch\u1ed7 c\u1ea7n ki\u1ec3m tra: trong Imperva xem Bot Protection v\u00e0 c\u00e1c quy t\u1eafc b\u1ea3o m\u1eadt; cho ph\u00e9p c\u00e1c bot t\u00ecm ki\u1ebfm c\u1ee7a AI m\u00e0 doanh nghi\u1ec7p mu\u1ed1n \u0111\u01b0\u1ee3c d\u1eabn ngu\u1ed3n.', aws: 'Ch\u1ed7 c\u1ea7n ki\u1ec3m tra: trong AWS WAF xem nh\u00f3m quy t\u1eafc Bot Control v\u00e0 c\u00e1c quy t\u1eafc ch\u1eb7n theo User-Agent.', azure: 'Ch\u1ed7 c\u1ea7n ki\u1ec3m tra: trong WAF c\u1ee7a Azure Front Door ho\u1eb7c Application Gateway, xem c\u00e1c quy t\u1eafc ch\u1ed1ng bot.' },\n\t\twafNames: { cloudflare: 'Cloudflare', akamai: 'Akamai', sucuri: 'Sucuri', imperva: 'Imperva', aws: 'AWS', azure: 'Azure' },\n\t\tnoDns: 'Kh\u00f4ng t\u00ecm th\u1ea5y t\u00ean mi\u1ec1n n\u00e0y. Ki\u1ec3m tra l\u1ea1i ch\u00ednh t\u1ea3 \u0111\u1ecba ch\u1ec9 website.', noSsl: 'Ch\u1ee9ng ch\u1ec9 b\u1ea3o m\u1eadt (SSL) c\u1ee7a website b\u1ecb l\u1ed7i n\u00ean c\u00f4ng c\u1ee5 kh\u00f4ng t\u1ea3i \u0111\u01b0\u1ee3c. Bot AI th\u01b0\u1eddng c\u0169ng b\u1ecf qua website c\u00f3 SSL l\u1ed7i.', rate: 'M\u1ea1ng c\u1ee7a anh ch\u1ecb \u0111\u00e3 ki\u1ec3m tra qu\u00e1 nhi\u1ec1u l\u1ea7n. Vui l\u00f2ng th\u1eed l\u1ea1i sau.', err: 'C\u00f3 l\u1ed7i x\u1ea3y ra. Vui l\u00f2ng th\u1eed l\u1ea1i.',\n\t\tgroups: '\u0110i\u1ec3m theo nh\u00f3m', plats: 'M\u1ee9c s\u1eb5n s\u00e0ng theo n\u1ec1n t\u1ea3ng AI', ready: 'S\u1eb5n s\u00e0ng', basic: '\u0110\u1ea1t c\u01a1 b\u1ea3n', blockedS: '\u0110ang b\u1ecb ch\u1eb7n',\n\t\tissues: 'C\u00f3 {n} m\u1ee5c c\u1ea7n s\u1eeda', gateH: 'M\u1edf b\u00e1o c\u00e1o chi ti\u1ebft v\u00e0 ki\u1ec3m tra AI c\u00f3 nh\u1eafc t\u1edbi th\u01b0\u01a1ng hi\u1ec7u', gateP: 'Xem c\u00e1ch s\u1eeda t\u1eebng m\u1ee5c, v\u00e0 ChatGPT, Gemini c\u00f3 nh\u1eafc t\u1edbi th\u01b0\u01a1ng hi\u1ec7u khi \u0111\u01b0\u1ee3c h\u1ecfi v\u1ec1 ng\u00e0nh c\u1ee7a anh ch\u1ecb kh\u00f4ng.',\n\t\temail: 'Email c\u00f4ng vi\u1ec7c *', phone: 'S\u1ed1 \u0111i\u1ec7n tho\u1ea1i *', company: 'T\u00ean c\u00f4ng ty *', industry: 'Ng\u00e0nh *', city: 'Th\u00e0nh ph\u1ed1', unlock: 'Xem b\u00e1o c\u00e1o chi ti\u1ebft',\n\t\tphEmail: 'ten@congty.vn', phPhone: '0909 123 456', phCompany: 'C\u00f4ng ty TNHH ABC', phIndustry: 'vd: nha khoa',\n\t\tcityAll: 'To\u00e0n qu\u1ed1c', cityOut: 'N\u01b0\u1edbc ngo\u00e0i', grpCity: 'Th\u00e0nh ph\u1ed1 tr\u1ef1c thu\u1ed9c trung \u01b0\u01a1ng', grpProv: 'T\u1ec9nh', country: 'Vi\u1ec7t Nam',\n\t\tdetail: 'B\u00e1o c\u00e1o chi ti\u1ebft', ai: 'AI c\u00f3 nh\u1eafc t\u1edbi th\u01b0\u01a1ng hi\u1ec7u kh\u00f4ng?', aiWait: '\u0110ang h\u1ecfi ChatGPT v\u00e0 Gemini 8 c\u00e2u, m\u1ed7i c\u00e2u 2 l\u1ea7n\u2026 kho\u1ea3ng 1 \u0111\u1ebfn 2 ph\u00fat.', aiNone: 'Ph\u1ea7n ki\u1ec3m tra AI ch\u01b0a \u0111\u01b0\u1ee3c b\u1eadt. Adtek s\u1ebd g\u1eedi k\u1ebft qu\u1ea3 qua email cho anh ch\u1ecb.',\n\t\tconsent: 'T\u00f4i \u0111\u1ed3ng \u00fd \u0111\u1ec3 Adtek x\u1eed l\u00fd th\u00f4ng tin tr\u00ean nh\u1eb1m g\u1eedi b\u00e1o c\u00e1o v\u00e0 li\u00ean h\u1ec7 t\u01b0 v\u1ea5n, theo', policy: 'Ch\u00ednh s\u00e1ch b\u1ea3o m\u1eadt',\n\t\tmentioned: '\u0110\u01b0\u1ee3c nh\u1eafc', cited: '\u0110\u01b0\u1ee3c d\u1eabn link', of: '\/', others: 'Website AI d\u1eabn ngu\u1ed3n thay', cta: 'Nh\u1eadn t\u01b0 v\u1ea5n t\u1ed1i \u01b0u AI Search', notConf: 'ch\u01b0a b\u1eadt', unavail: 't\u1ea1m th\u1eddi kh\u00f4ng \u0111o \u0111\u01b0\u1ee3c',\n\t\tcms: 'N\u1ec1n t\u1ea3ng', grade: 'X\u1ebfp lo\u1ea1i',\n\t\tsnap: 'K\u1ebft qu\u1ea3 l\u01b0u s\u1eb5n, \u0111o ng\u00e0y {d}. H\u01b0\u1edbng d\u1eabn s\u1eeda t\u1eebng m\u1ee5c v\u00e0 ki\u1ec3m tra AI c\u00f3 nh\u1eafc th\u01b0\u01a1ng hi\u1ec7u m\u1edf cho website c\u1ee7a anh ch\u1ecb.', snapBtn: 'Ki\u1ec3m tra website c\u1ee7a anh ch\u1ecb', guide: 'Xem c\u00e1ch s\u1eeda', pagesH: '\u0110\u00e3 ch\u1ea5m {n} trang', speedH: 'T\u1ed1c \u0111\u1ed9 tr\u00ean \u0111i\u1ec7n tho\u1ea1i (ng\u01b0\u1eddi d\u00f9ng Chrome th\u1eadt)', speedWait: '\u0110ang l\u1ea5y s\u1ed1 li\u1ec7u t\u1ed1c \u0111\u1ed9 t\u1eeb Google\u2026', lcp: 'Hi\u1ec7n n\u1ed9i dung ch\u00ednh', inp: 'Ph\u1ea3n h\u1ed3i khi b\u1ea5m', cls: '\u0110\u1ed9 \u1ed5n \u0111\u1ecbnh b\u1ed1 c\u1ee5c', fast: 'T\u1ed1t', avg: 'C\u1ea7n c\u1ea3i thi\u1ec7n', slow: 'K\u00e9m',\n\t\tshareBtn: 'Chia s\u1ebb k\u1ebft qu\u1ea3', shareWait: '\u0110ang t\u1ea1o link chia s\u1ebb\u2026', shareH: 'Link chia s\u1ebb \u0111\u00e3 s\u1eb5n s\u00e0ng:', shareMore: '\u1ee8ng d\u1ee5ng kh\u00e1c (Zalo, Messenger\u2026)', copy: 'Sao ch\u00e9p link', copied: '\u0110\u00e3 sao ch\u00e9p link', shareTitle: '{h} \u0111\u1ea1t {s}\/100 \u0111i\u1ec3m AIO',\n\t\tsharedTxt: '{h} \u0111\u1ea1t {s}\/100 \u0111i\u1ec3m AIO (h\u1ea1ng {g}), \u0111o ng\u00e0y {d}. Website c\u1ee7a b\u1ea1n \u0111\u01b0\u1ee3c bao nhi\u00eau \u0111i\u1ec3m?',\n\t\tcmpH: 'So s\u00e1nh v\u1edbi \u0111\u1ed1i th\u1ee7', cmpP: 'Nh\u1eadp website \u0111\u1ed1i th\u1ee7 \u0111\u1ec3 xem \u0111i\u1ec3m hai b\u00ean c\u1ea1nh nhau.', cmpPh: 'V\u00ed d\u1ee5: doithu.vn', cmpBtn: 'So s\u00e1nh', cmpWait: '\u0110ang ch\u1ea5m website \u0111\u1ed1i th\u1ee7\u2026 kho\u1ea3ng 20 \u0111\u1ebfn 40 gi\u00e2y.', cmpSelf: 'H\u00e3y nh\u1eadp m\u1ed9t website kh\u00e1c website c\u1ee7a b\u1ea1n.', cmpTotal: '\u0110i\u1ec3m t\u1ed5ng', cmpPlats: 'N\u1ec1n t\u1ea3ng AI s\u1eb5n s\u00e0ng',\n\t\tcmpWin: '\u0110\u1ed1i th\u1ee7 h\u01a1n b\u1ea1n \u1edf {n} m\u1ee5c', cmpNone: '\u0110\u1ed1i th\u1ee7 kh\u00f4ng h\u01a1n b\u1ea1n \u1edf m\u1ee5c n\u00e0o.', cmpYouWin: 'B\u1ea1n h\u01a1n \u0111\u1ed1i th\u1ee7 \u1edf {n} m\u1ee5c.', cmpLead: '\u0110\u1ec3 l\u1ea1i th\u00f4ng tin \u1edf form b\u00ean d\u01b0\u1edbi \u0111\u1ec3 xem {n} m\u1ee5c n\u00e0y v\u00e0 c\u00e1ch s\u1eeda', cmpLost: 'C\u00e1c m\u1ee5c \u0111\u1ed1i th\u1ee7 \u0111\u1ea1t m\u00e0 b\u1ea1n ch\u01b0a \u0111\u1ea1t:',\n\t\tspeedHelp: [['LCP (vi\u1ebft t\u1eaft c\u1ee7a Largest Contentful Paint)', 'Th\u1eddi gian \u0111\u1ebfn khi ph\u1ea7n l\u1edbn nh\u1ea5t tr\u00ean m\u00e0n h\u00ecnh, th\u01b0\u1eddng l\u00e0 \u1ea3nh ch\u00ednh ho\u1eb7c kh\u1ed1i ch\u1eef ch\u00ednh, hi\u1ec7n ra. T\u1ed1t: d\u01b0\u1edbi 2,5 gi\u00e2y. K\u00e9m: tr\u00ean 4 gi\u00e2y.'], ['INP (vi\u1ebft t\u1eaft c\u1ee7a Interaction to Next Paint)', '\u0110\u1ed9 tr\u1ec5 t\u1eeb l\u00fac ng\u01b0\u1eddi d\u00f9ng ch\u1ea1m, b\u1ea5m ho\u1eb7c g\u00f5 ph\u00edm \u0111\u1ebfn khi trang ph\u1ea3n h\u1ed3i tr\u00ean m\u00e0n h\u00ecnh. T\u1ed1t: d\u01b0\u1edbi 200 ms. K\u00e9m: tr\u00ean 500 ms.'], ['CLS (vi\u1ebft t\u1eaft c\u1ee7a Cumulative Layout Shift)', 'M\u1ee9c n\u1ed9i dung b\u1ecb x\u00f4 l\u1ec7ch khi trang \u0111ang t\u1ea3i, v\u00ed d\u1ee5 v\u1eeba \u0111\u1ecbnh b\u1ea5m th\u00ec n\u00fat b\u1ecb \u0111\u1ea9y \u0111i ch\u1ed7 kh\u00e1c. T\u1ed1t: d\u01b0\u1edbi 0,1. K\u00e9m: tr\u00ean 0,25.']], speedP75: 'M\u1ed7i con s\u1ed1 l\u00e0 m\u1ee9c m\u00e0 75% l\u01b0\u1ee3t truy c\u1eadp \u0111\u1ea1t ho\u1eb7c t\u1ed1t h\u01a1n. \u0110\u00e2y l\u00e0 3 ch\u1ec9 s\u1ed1 Core Web Vitals c\u1ee7a Google.',\n\t\tspeedNone: 'Website ch\u01b0a \u0111\u1ee7 l\u01b0\u1ee3t truy c\u1eadp t\u1eeb Chrome n\u00ean Google ch\u01b0a c\u00f3 s\u1ed1 li\u1ec7u t\u1ed1c \u0111\u1ed9.', speedPage: 'S\u1ed1 li\u1ec7u c\u1ee7a trang n\u00e0y trong 28 ng\u00e0y qua. Ch\u1ec9 \u0111\u1ec3 tham kh\u1ea3o, ch\u01b0a t\u00ednh v\u00e0o \u0111i\u1ec3m 100.', speedOrigin: 'S\u1ed1 li\u1ec7u c\u1ee7a c\u1ea3 t\u00ean mi\u1ec1n trong 28 ng\u00e0y qua (ri\u00eang trang n\u00e0y ch\u01b0a \u0111\u1ee7 d\u1eef li\u1ec7u). Ch\u1ec9 \u0111\u1ec3 tham kh\u1ea3o, ch\u01b0a t\u00ednh v\u00e0o \u0111i\u1ec3m 100.', pageFail: 'ch\u01b0a \u0111\u1ea1t {f}\/{t} trang', failOn: 'Trang ch\u01b0a \u0111\u1ea1t: ', times: 'l\u1ea7n',\n\t\tkinds: { home: 'Trang ch\u1ee7', product: 'S\u1ea3n ph\u1ea9m', service: 'D\u1ecbch v\u1ee5', blog: 'B\u00e0i vi\u1ebft', about: 'Gi\u1edbi thi\u1ec7u', other: 'Trang' },\n\t\tmore: 'C\u00f2n b\u00e1o c\u00e1o chi ti\u1ebft: c\u00e1ch s\u1eeda t\u1eebng m\u1ee5c trong {n} m\u1ee5c tr\u00ean, v\u00e0 ChatGPT, Gemini c\u00f3 nh\u1eafc t\u1edbi th\u01b0\u01a1ng hi\u1ec7u kh\u00f4ng. \u0110\u1ec3 l\u1ea1i email b\u00ean d\u01b0\u1edbi \u0111\u1ec3 m\u1edf.'\n\t};\n\tfunction el(tag, cls, text) { var e = document.createElement(tag); if (cls) e.className = cls; if (text != null) e.textContent = text; return e; }\n\tfunction msg(t) { out.textContent = ''; out.appendChild(el('p', 'aio-msg', t)); }\n\tfunction post(url, data) {\n\t\treturn fetch(url, { method: 'POST', headers: { 'Content-Type': 'application\/json' }, body: JSON.stringify(data) }).then(function (r) { return r.json().then(function (j) { j._status = r.status; return j; }); });\n\t}\n\t\/\/ 1.4.3: site g\u1ee1 GTM t\u1eeb 21\/10 n\u00ean dataLayer.push kh\u00f4ng v\u00e0o GA4; g\u1eedi th\u00eam gtag t\u1edbi th\u1ebb Google c\u1ee7a Site Kit (c.ga) \u0111\u1ec3 GA4 nh\u1eadn aio_audit, aio_showcase, generate_lead.\n\tfunction track(ev, p) {\n\t\ttry { (window.dataLayer = window.dataLayer || []).push(Object.assign({ event: ev }, p || {})); } catch (e) {}\n\t\ttry { if (c.ga && typeof gtag === 'function') gtag('event', ev, Object.assign({ send_to: c.ga }, p || {})); } catch (e) {}\n\t}\n\tvar last = null;\n\t\/\/ Link \"Xem c\u00e1ch s\u1eeda\" sang b\u00e0i thu\u1eadt ng\u1eef ho\u1eb7c blog (m\u1edf tab m\u1edbi \u0111\u1ec3 kh\u00f4ng m\u1ea5t k\u1ebft qu\u1ea3).\n\tfunction guide(li, x) {\n\t\tvar k = x.key && x.key.indexOf('.') < 0 ? x.group + '.' + x.key : x.key; \/\/ k\u1ebft qu\u1ea3 tr\u1ef1c ti\u1ebfp: group + key; \u1ea3nh ch\u1ee5p b\u1ea3ng \u0111i\u1ec3m: key \u0111\u1ea7y \u0111\u1ee7\n\t\tvar u = k && x.status !== 'pass' && (c.guides || {})[k]; if (!u) return; \/\/ ch\u1ec9 hi\u1ec7n \u1edf m\u1ee5c ch\u01b0a \u0111\u1ea1t\n\t\tvar a = el('a', 'aio-guide', T.guide); a.href = u; a.target = '_blank'; a.rel = 'noopener';\n\t\ta.addEventListener('click', function () { track('aio_guide', { aio_check: k }); });\n\t\tli.appendChild(a);\n\t}\n\t\/\/ 34 \u0111\u01a1n v\u1ecb h\u00e0nh ch\u00ednh c\u1ea5p t\u1ec9nh t\u1eeb 01\/07\/2025: 6 th\u00e0nh ph\u1ed1 tr\u1ef1c thu\u1ed9c trung \u01b0\u01a1ng, r\u1ed3i 28 t\u1ec9nh theo ABC. B\u1ea3n EN vi\u1ebft kh\u00f4ng d\u1ea5u.\n\tvar CITIES = en ? [['Ho Chi Minh City', 'Hanoi', 'Da Nang', 'Hai Phong', 'Can Tho', 'Hue'],\n\t\t['An Giang', 'Bac Ninh', 'Ca Mau', 'Cao Bang', 'Dak Lak', 'Dien Bien', 'Dong Nai', 'Dong Thap', 'Gia Lai', 'Ha Tinh', 'Hung Yen', 'Khanh Hoa', 'Lai Chau', 'Lam Dong', 'Lang Son', 'Lao Cai', 'Nghe An', 'Ninh Binh', 'Phu Tho', 'Quang Ngai', 'Quang Ninh', 'Quang Tri', 'Son La', 'Tay Ninh', 'Thai Nguyen', 'Thanh Hoa', 'Tuyen Quang', 'Vinh Long']]\n\t\t: [['TP.HCM', 'H\u00e0 N\u1ed9i', '\u0110\u00e0 N\u1eb5ng', 'H\u1ea3i Ph\u00f2ng', 'C\u1ea7n Th\u01a1', 'Hu\u1ebf'],\n\t\t['An Giang', 'B\u1eafc Ninh', 'C\u00e0 Mau', 'Cao B\u1eb1ng', '\u0110\u1eafk L\u1eafk', '\u0110i\u1ec7n Bi\u00ean', '\u0110\u1ed3ng Nai', '\u0110\u1ed3ng Th\u00e1p', 'Gia Lai', 'H\u00e0 T\u0129nh', 'H\u01b0ng Y\u00ean', 'Kh\u00e1nh H\u00f2a', 'Lai Ch\u00e2u', 'L\u00e2m \u0110\u1ed3ng', 'L\u1ea1ng S\u01a1n', 'L\u00e0o Cai', 'Ngh\u1ec7 An', 'Ninh B\u00ecnh', 'Ph\u00fa Th\u1ecd', 'Qu\u1ea3ng Ng\u00e3i', 'Qu\u1ea3ng Ninh', 'Qu\u1ea3ng Tr\u1ecb', 'S\u01a1n La', 'T\u00e2y Ninh', 'Th\u00e1i Nguy\u00ean', 'Thanh H\u00f3a', 'Tuy\u00ean Quang', 'V\u0129nh Long']];\n\t\/\/ B\u1ecf ph\u1ea7n ph\u00e1p l\u00fd c\u1ee7a t\u00ean c\u00f4ng ty \u0111\u1ec3 AI nh\u1eadn ra t\u00ean th\u01b0\u01a1ng m\u1ea1i: \"C\u00f4ng ty TNHH Nha khoa ABC\" -> \"Nha khoa ABC\". Lead v\u1eabn l\u01b0u t\u00ean \u0111\u1ea7y \u0111\u1ee7.\n\tvar LEGAL = \/(^|[\\s,.;-])(c[o\u00f4]ng ty cp|cty cp|c[o\u00f4]ng ty|cty|ctcp|tnhh|tr[a\u00e1]ch nhi[e\u1ec7]m h[u\u1eef]u h[a\u1ea1]n|c[o\u1ed5] ph[a\u1ea7]n|mtv|m[o\u1ed9]t th[a\u00e0]nh vi[e\u00ea]n|t[a\u1ead]p [d\u0111]o[a\u00e0]n|joint stock company|company limited|jsc|co\\.,?|ltd\\.?|limited|llc|corp\\.?|corporation|inc\\.?|plc)(?=$|[\\s,.;-])\/gi;\n\tfunction tradeName(s) {\n\t\tvar t = s, prev;\n\t\tdo { prev = t; t = t.replace(LEGAL, '$1'); } while (t !== prev);\n\t\tt = t.replace(\/[\\s,.;-]+\/g, ' ').trim();\n\t\treturn t.length > 1 ? t : s.trim();\n\t}\n\t\/\/ 1.7.2: c\u00e2u b\u00e1o l\u1ed7i theo nguy\u00ean nh\u00e2n (reason do d\u1ecbch v\u1ee5 ph\u00e2n lo\u1ea1i); kh\u00f4ng c\u00f2n \"(l\u1ed7i )\" tr\u1ed1ng khi kh\u00f4ng c\u00f3 m\u00e3 HTTP.\n\tfunction errText(d) {\n\t\tif (d.error === 'blocked') return (T.wafNames[d.waf] ? T.blockedWaf.replace('{w}', T.wafNames[d.waf]) : T.blocked).replace('{s}', d.status || '');\n\t\tif (d.error === 'bad_url') return T.bad;\n\t\tif (d.reason === 'timeout' || d.reason === 'refused') return T.noReach;\n\t\tif (d.reason === 'dns') return T.noDns;\n\t\tif (d.reason === 'ssl') return T.noSsl;\n\t\treturn d.status ? T.failed.replace('{s}', d.status) : T.failed0;\n\t}\n\tfunction phoneOk(s) { return \/^(0\\d{9,10}|\\+84\\d{9,10}|\\+(?!84)\\d{8,14})$\/.test(s.replace(\/[\\s.\\-()]\/g, '')); }\n\n\t\/\/ 1.7.0 (anh Tin ch\u1ecdn c\u00e1ch E v\u00e0 F 05\/11\/2026). unlocked: \u0111\u00e3 \u0111\u1ec3 lead cho k\u1ebft qu\u1ea3 \u0111ang xem; onUnlock: ph\u1ea7n ch\u1edd m\u1edf kh\u00f3a (danh s\u00e1ch m\u1ee5c thua \u0111\u1ed1i th\u1ee7).\n\tvar unlocked = false, onUnlock = [];\n\n\t\/\/ E: n\u00fat chia s\u1ebb. D\u1ecbch v\u1ee5 l\u01b0u k\u1ebft qu\u1ea3 n\u00f3 \u0111\u00e3 ch\u1ea5m (kh\u00f4ng nh\u1eadn \u0111i\u1ec3m t\u1eeb tr\u00ecnh duy\u1ec7t) v\u00e0 tr\u1ea3 m\u00e3; link = trang n\u00e0y + ?r=<m\u00e3>.\n\tfunction shareBox(d) {\n\t\tvar w = el('div', 'aio-share'), b = el('button', 'aio-share-btn'), bl = el('span', '', T.shareBtn); b.type = 'button';\n\t\t\/\/ 1.7.1: icon chia s\u1ebb (3 n\u00fat n\u1ed1i nhau), v\u1ebd b\u1eb1ng SVG c\u1ed1 \u0111\u1ecbnh, m\u00e0u theo ch\u1eef c\u1ee7a n\u00fat.\n\t\tb.insertAdjacentHTML('afterbegin', '<svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"18\" cy=\"5\" r=\"3\"\/><circle cx=\"6\" cy=\"12\" r=\"3\"\/><circle cx=\"18\" cy=\"19\" r=\"3\"\/><path d=\"M8.6 13.5l6.8 4M15.4 6.5l-6.8 4\"\/><\/svg>');\n\t\tb.appendChild(bl); w.appendChild(b);\n\t\tb.addEventListener('click', function () {\n\t\t\tb.disabled = true; bl.textContent = T.shareWait;\n\t\t\tpost(c.api + '\/share', { url: d.url || d.final_url, lang: c.lang }).then(function (r) {\n\t\t\t\tif (!r.ok || !r.id) throw new Error('share');\n\t\t\t\tvar link = c.page + (c.page.indexOf('?') < 0 ? '?' : '&') + 'r=' + r.id;\n\t\t\t\tw.textContent = ''; w.appendChild(el('span', 'aio-sub', T.shareH));\n\t\t\t\tvar row = el('div', 'aio-share-row');\n\t\t\t\tfunction opt(lbl, fn) { var x = el('button', 'aio-share-opt', lbl); x.type = 'button'; x.addEventListener('click', fn); row.appendChild(x); return x; }\n\t\t\t\tfunction pop(u, m) { window.open(u, '_blank', 'noopener,width=640,height=560'); track('aio_share', { method: m, aio_score: d.score }); }\n\t\t\t\topt('Facebook', function () { pop('https:\/\/www.facebook.com\/sharer\/sharer.php?u=' + encodeURIComponent(link), 'facebook'); });\n\t\t\t\topt('LinkedIn', function () { pop('https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=' + encodeURIComponent(link), 'linkedin'); });\n\t\t\t\tvar cp = opt(T.copy, function () {\n\t\t\t\t\tvar done = function () { cp.textContent = T.copied; track('aio_share', { method: 'copy', aio_score: d.score }); };\n\t\t\t\t\tif (navigator.clipboard && navigator.clipboard.writeText) navigator.clipboard.writeText(link).then(done, function () { window.prompt(T.copy, link); });\n\t\t\t\t\telse window.prompt(T.copy, link);\n\t\t\t\t});\n\t\t\t\tif (navigator.share) opt(T.shareMore, function () {\n\t\t\t\t\tnavigator.share({ title: T.shareTitle.replace('{h}', d.host).replace('{s}', d.score), url: link }).then(function () { track('aio_share', { method: 'native', aio_score: d.score }); }, function () {});\n\t\t\t\t});\n\t\t\t\tw.appendChild(row);\n\t\t\t\tvar lk = el('input', 'aio-share-link'); lk.type = 'text'; lk.readOnly = true; lk.value = link; lk.setAttribute('aria-label', T.copy);\n\t\t\t\tlk.addEventListener('focus', function () { lk.select(); }); w.appendChild(lk);\n\t\t\t}).catch(function () { b.disabled = false; bl.textContent = T.shareBtn; });\n\t\t});\n\t\treturn w;\n\t}\n\n\t\/\/ F: so s\u00e1nh v\u1edbi \u0111\u1ed1i th\u1ee7. Ch\u1ea5m website \u0111\u1ed1i th\u1ee7 b\u1eb1ng c\u00f9ng \/audit; \u0111i\u1ec3m, 6 nh\u00f3m, n\u1ec1n t\u1ea3ng xem mi\u1ec5n ph\u00ed, danh s\u00e1ch m\u1ee5c thua m\u1edf sau khi \u0111\u1ec3 lead.\n\tfunction compareBox(d) {\n\t\tvar box = el('div', 'aio-cmp'); box.appendChild(el('h3', '', T.cmpH)); box.appendChild(el('p', 'aio-sub', T.cmpP));\n\t\tvar f = el('form', 'aio-cmp-form'); f.noValidate = true;\n\t\tvar i = el('input'); i.name = 'rival'; i.type = 'text'; i.setAttribute('inputmode', 'url'); i.placeholder = T.cmpPh; i.setAttribute('aria-label', T.cmpH);\n\t\tvar b = el('button', '', T.cmpBtn); b.type = 'submit'; f.appendChild(i); f.appendChild(b); box.appendChild(f);\n\t\tvar res = el('div', 'aio-cmp-out'); box.appendChild(res);\n\t\tvar bare = function (h) { return String(h || '').replace(\/^https?:\\\/\\\/\/i, '').replace(\/^www\\.\/i, '').split(\/[\\\/?#]\/)[0].toLowerCase(); };\n\t\tf.addEventListener('submit', function (e) {\n\t\t\te.preventDefault();\n\t\t\tvar u = i.value.trim(); res.textContent = '';\n\t\t\tif (!\/^(https?:\\\/\\\/)?[^\\s\\\/]+\\.[^\\s\\\/]{2,}\/i.test(u)) { res.appendChild(el('p', 'aio-msg', T.bad)); return; }\n\t\t\tif (bare(u) === bare(d.host)) { res.appendChild(el('p', 'aio-msg', T.cmpSelf)); return; }\n\t\t\tb.disabled = true; res.appendChild(el('p', 'aio-msg', T.cmpWait));\n\t\t\tpost(c.api + '\/audit', { url: u, lang: c.lang }).then(function (o) {\n\t\t\t\tres.textContent = '';\n\t\t\t\tif (o._status === 429) return res.appendChild(el('p', 'aio-msg', T.rate));\n\t\t\t\tif (!o.ok) return res.appendChild(el('p', 'aio-msg', errText(o)));\n\t\t\t\tcmpRender(res, d, o); track('aio_compare', { aio_score: d.score, aio_rival_score: o.score });\n\t\t\t}).catch(function () { res.textContent = ''; res.appendChild(el('p', 'aio-msg', T.err)); }).then(function () { b.disabled = false; });\n\t\t});\n\t\treturn box;\n\t}\n\tfunction cmpRender(res, d, o) {\n\t\tvar t = el('div', 'aio-cmp-t');\n\t\tfunction row(lbl, a, b2, av, bv, cls) {\n\t\t\tvar r = el('div', 'aio-cmp-r' + (cls ? ' ' + cls : '')); r.appendChild(el('span', 'aio-cmp-l', lbl));\n\t\t\tr.appendChild(el('b', av > bv ? 'win' : '', a)); r.appendChild(el('b', bv > av ? 'win' : '', b2)); t.appendChild(r);\n\t\t}\n\t\tvar hd = el('div', 'aio-cmp-r aio-cmp-hd'); hd.appendChild(el('span', '', '')); hd.appendChild(el('span', '', d.host)); hd.appendChild(el('span', '', o.host)); t.appendChild(hd);\n\t\trow(T.cmpTotal, d.score + ' (' + d.grade + ')', o.score + ' (' + o.grade + ')', d.score, o.score, 'aio-cmp-total');\n\t\td.groups.forEach(function (g) {\n\t\t\tvar og = o.groups.filter(function (x) { return x.key === g.key; })[0]; if (!og) return;\n\t\t\trow(g.label, g.points + '\/' + g.max, og.points + '\/' + og.max, g.points \/ g.max, og.points \/ og.max);\n\t\t});\n\t\tvar ready = function (x) { return x.platforms.filter(function (p) { return p.status === 'ready'; }).length; };\n\t\trow(T.cmpPlats, ready(d) + '\/' + d.platforms.length, ready(o) + '\/' + o.platforms.length, ready(d), ready(o));\n\t\tres.appendChild(t);\n\t\tvar key = function (x) { return x.group + '.' + x.key; }, mine = {};\n\t\td.checks.forEach(function (x) { mine[key(x)] = x; });\n\t\tvar lost = o.checks.filter(function (x) { var m = mine[key(x)]; return x.max && x.status === 'pass' && m && m.status !== 'pass'; });\n\t\tvar won = o.checks.filter(function (x) { var m = mine[key(x)]; return x.max && x.status !== 'pass' && m && m.status === 'pass'; });\n\t\tres.appendChild(el('p', 'aio-host', lost.length ? T.cmpWin.replace('{n}', lost.length) : T.cmpNone));\n\t\tif (won.length) res.appendChild(el('p', 'aio-sub', T.cmpYouWin.replace('{n}', won.length)));\n\t\tif (!lost.length) return;\n\t\tvar holder = el('div', 'aio-cmp-lost'); res.appendChild(holder);\n\t\tfunction fill() {\n\t\t\tholder.textContent = ''; holder.appendChild(el('p', 'aio-sub', T.cmpLost));\n\t\t\tvar ul = el('ul', 'aio-list');\n\t\t\tlost.forEach(function (x) { var m = mine[key(x)], li = el('li', m.status, m.label); guide(li, m); if (m.fix) li.appendChild(el('span', 'aio-fix', m.fix)); ul.appendChild(li); });\n\t\t\tholder.appendChild(ul);\n\t\t}\n\t\tif (unlocked) return fill();\n\t\tvar go = el('button', 'aio-more'); go.type = 'button'; go.appendChild(el('span', '', T.cmpLead.replace('{n}', lost.length)));\n\t\tgo.insertAdjacentHTML('beforeend', '<svg class=\"aio-arrow\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M6 9l6 6 6-6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>');\n\t\tgo.addEventListener('click', function () {\n\t\t\tvar g = out.querySelector('.aio-gate'); if (!g) return;\n\t\t\tg.scrollIntoView({ behavior: 'smooth', block: 'start' }); var em = g.querySelector('[name=email]'); if (em) setTimeout(function () { em.focus({ preventScroll: true }); }, 400);\n\t\t\ttrack('aio_more', { from: 'compare' });\n\t\t});\n\t\tholder.appendChild(go); onUnlock.push(fill);\n\t}\n\n\t\/\/ E: m\u1edf t\u1eeb link chia s\u1ebb (?r=<m\u00e3>): d\u00f2ng \"x \u0111\u1ea1t y \u0111i\u1ec3m\" ph\u00eda tr\u00ean \u00f4 nh\u1eadp, m\u1eddi ch\u1ea5m website c\u1ee7a m\u00ecnh.\n\tif (c.shared && c.shared.host) {\n\t\tvar sb = el('div', 'aio-shared'), sd = String(c.shared.date || '').split('-').reverse().join('\/');\n\t\tsb.appendChild(el('span', 'aio-card-g g-' + c.shared.grade, c.shared.score + '\/100'));\n\t\tsb.appendChild(el('span', 'aio-shared-t', T.sharedTxt.replace('{h}', c.shared.host).replace('{s}', c.shared.score).replace('{g}', c.shared.grade).replace('{d}', sd)));\n\t\troot.insertBefore(sb, form); track('aio_share_open', { aio_score: c.shared.score });\n\t}\n\n\tform.addEventListener('submit', function (e) {\n\t\te.preventDefault();\n\t\tvar url = form.url.value.trim(), btn = form.querySelector('button');\n\t\tif (!\/^(https?:\\\/\\\/)?[^\\s\\\/]+\\.[^\\s\\\/]{2,}\/i.test(url)) return msg(T.bad);\n\t\tif (!c.api) return msg(T.soon);\n\t\tbtn.disabled = true; msg(T.wait);\n\t\t\/\/ 1.6.2: l\u1ed7i m\u1ea1ng (k\u1ebft n\u1ed1i b\u1ecb c\u1eaft) th\u00ec th\u1eed l\u1ea1i 1 l\u1ea7n sau 2 gi\u00e2y; k\u1ebft qu\u1ea3 \u0111\u00e3 ch\u1ea5m xong \u1edf d\u1ecbch v\u1ee5 n\u1eb1m trong b\u1ed9 \u0111\u1ec7m n\u00ean l\u1ea7n 2 nhanh.\n\t\tpost(c.api + '\/audit', { url: url, lang: c.lang }).catch(function () { return new Promise(function (ok) { setTimeout(ok, 2000); }).then(function () { return post(c.api + '\/audit', { url: url, lang: c.lang }); }); }).then(function (d) {\n\t\t\tif (d._status === 429) return msg(T.rate);\n\t\t\tif (!d.ok) {\n\t\t\t\tmsg(errText(d)); track('aio_error', { aio_reason: d.reason || d.error || '', aio_waf: d.waf || '' });\n\t\t\t\t\/\/ 1.7.4: b\u1ecb t\u01b0\u1eddng l\u1eeda ch\u1eb7n th\u00ec ch\u1ec9 ch\u1ed7 c\u1ea7n ki\u1ec3m tra theo t\u01b0\u1eddng l\u1eeda nh\u1eadn ra \u0111\u01b0\u1ee3c.\n\t\t\t\tif (d.error === 'blocked' && T.wafHow[d.waf]) out.appendChild(el('p', 'aio-sub aio-waf-how', T.wafHow[d.waf]));\n\t\t\t\tif (d.reason === 'timeout' || d.reason === 'refused' || d.error === 'blocked') { var a = el('a', 'aio-cta', T.noReachCta); a.href = c.cta; out.appendChild(a); }\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlast = d; render(d); track('aio_audit', { aio_score: d.score });\n\t\t}).catch(function () { msg(T.err); }).then(function () { btn.disabled = false; });\n\t});\n\n\t\/\/ B\u1ea5m th\u1ebb b\u1ea3ng \u0111i\u1ec3m: v\u1ebd k\u1ebft qu\u1ea3 \u0111\u00e3 l\u01b0u (kh\u00f4ng g\u1ecdi Cloud Run, kh\u00f4ng m\u1edf form email).\n\troot.querySelectorAll('.aio-card').forEach(function (b) {\n\t\tb.addEventListener('click', function () {\n\t\t\tvar s = (c.show || [])[+b.getAttribute('data-i')]; if (!s) return;\n\t\t\troot.querySelectorAll('.aio-card.on').forEach(function (x) { x.classList.remove('on'); }); b.classList.add('on');\n\t\t\trender({ score: s.score, grade: s.grade, host: s.host, groups: s.groups, platforms: s.platforms, pages: s.pages,\n\t\t\t\tchecks: s.todo.map(function (t) { var k = (t.key || '').split('.'); return { label: t.label, status: t.status, max: 1, group: k[0], key: t.key ? t.key : '', pages: t.pages }; }) }, true);\n\t\t\ttrack('aio_showcase', { aio_site: s.host });\n\t\t\tout.scrollIntoView({ behavior: 'smooth', block: 'start' });\n\t\t});\n\t});\n\n\tfunction render(d, snap) {\n\t\tout.textContent = ''; unlocked = false; onUnlock = [];\n\t\tvar top = el('div', 'aio-top'), sc = el('div', 'aio-score');\n\t\tsc.appendChild(el('b', '', d.score)); sc.appendChild(el('span', '', '\/100'));\n\t\ttop.appendChild(sc); top.appendChild(el('span', 'aio-grade g-' + d.grade, d.grade));\n\t\tvar who = el('div'); who.appendChild(el('div', 'aio-host', d.host));\n\t\tif (d.cms) who.appendChild(el('div', 'aio-sub', T.cms + ': ' + d.cms + (d.seo_plugin ? ' + ' + d.seo_plugin : '')));\n\t\ttop.appendChild(who); out.appendChild(top);\n\t\tif (!snap && c.api && c.page) out.appendChild(shareBox(d)); \/\/ 1.7.0 c\u00e1ch E\n\n\t\tout.appendChild(el('h3', '', T.groups));\n\t\tvar g = el('div', 'aio-groups');\n\t\td.groups.forEach(function (x) {\n\t\t\tvar w = el('div'), row = el('div', 'aio-row'), bar = el('div', 'aio-bar'), i = el('i');\n\t\t\trow.appendChild(el('span', '', x.label)); row.appendChild(el('b', '', x.points + '\/' + x.max));\n\t\t\ti.style.width = Math.round(100 * x.points \/ x.max) + '%'; bar.appendChild(i); w.appendChild(row); w.appendChild(bar); g.appendChild(w);\n\t\t});\n\t\tout.appendChild(g);\n\n\t\tout.appendChild(el('h3', '', T.plats));\n\t\tvar pl = el('div', 'aio-plats');\n\t\td.platforms.forEach(function (p) {\n\t\t\tvar card = el('div', 'aio-plat'); card.appendChild(el('b', '', p.name)); card.appendChild(el('span', 'aio-sub', p.passed + '\/' + p.total));\n\t\t\tcard.appendChild(el('span', 'aio-badge ' + p.status, p.status === 'ready' ? T.ready : p.status === 'basic' ? T.basic : T.blockedS));\n\t\t\tpl.appendChild(card);\n\t\t});\n\t\tout.appendChild(pl);\n\n\t\t\/\/ 1.6.0: \u0111i\u1ec3m t\u1eebng trang \u0111\u00e3 ch\u1ea5m (d\u1ecbch v\u1ee5 ch\u1ea5m trang ch\u1ee7 v\u00e0 t\u1ed1i \u0111a 5 trang m\u1eabu t\u1eeb sitemap).\n\t\tif (d.pages && d.pages.length > 1) {\n\t\t\tout.appendChild(el('h3', '', T.pagesH.replace('{n}', d.pages.length)));\n\t\t\tvar pg = el('div', 'aio-pages');\n\t\t\td.pages.forEach(function (x) {\n\t\t\t\tvar row = el('div', 'aio-page'), path = x.url.replace(\/^https?:\\\/\\\/[^\\\/]+\/, '') || '\/';\n\t\t\t\trow.appendChild(el('span', 'aio-kind', (T.kinds || {})[x.kind] || x.kind));\n\t\t\t\tvar a = el('a', 'aio-path', path); a.href = x.url; a.target = '_blank'; a.rel = 'noopener nofollow'; row.appendChild(a);\n\t\t\t\tvar g = x.score >= 85 ? 'A' : x.score >= 70 ? 'B' : x.score >= 55 ? 'C' : x.score >= 40 ? 'D' : 'F';\n\t\t\t\trow.appendChild(el('b', 'aio-card-g g-' + g, x.score)); pg.appendChild(row);\n\t\t\t});\n\t\t\tout.appendChild(pg);\n\t\t}\n\n\t\t\/\/ 1.6.1: t\u1ed1c \u0111\u1ed9 tr\u00ean \u0111i\u1ec7n tho\u1ea1i t\u1eeb d\u1eef li\u1ec7u ng\u01b0\u1eddi d\u00f9ng Chrome (CrUX qua PageSpeed Insights); ch\u1ec9 hi\u1ec3n th\u1ecb, ch\u01b0a t\u00ednh \u0111i\u1ec3m.\n\t\t\/\/ 1.6.2: l\u1ea5y qua POST \/speed ri\u00eang sau khi \u0111\u00e3 hi\u1ec7n \u0111i\u1ec3m (PageSpeed m\u1ea5t 20 \u0111\u1ebfn 40 gi\u00e2y, \u0111\u1ec3 chung l\u00e0m l\u01b0\u1ee3t ch\u1ea5m qu\u00e1 l\u00e2u).\n\t\tif (!snap && c.api) {\n\t\t\tvar sbox = el('div', 'aio-speedbox'); sbox.appendChild(el('h3', '', T.speedH)); sbox.appendChild(el('p', 'aio-sub', T.speedWait));\n\t\t\tout.appendChild(sbox);\n\t\t\tpost(c.api + '\/speed', { url: d.final_url, lang: c.lang }).then(function (r) {\n\t\t\t\tvar sp = r && r.ok ? r.speed : null;\n\t\t\t\tif (!sp || !(sp.field === true || sp.field === false)) { sbox.parentNode && sbox.parentNode.removeChild(sbox); return; }\n\t\t\t\tsbox.removeChild(sbox.lastChild);\n\t\t\t\tif (!sp.field) { sbox.appendChild(el('p', 'aio-sub', T.speedNone)); return; }\n\t\t\t\tvar grid = el('div', 'aio-plats'), CAT = { FAST: ['ready', T.fast], AVERAGE: ['basic', T.avg], SLOW: ['blocked', T.slow] };\n\t\t\t\t[['LCP', sp.lcp_ms != null ? (sp.lcp_ms \/ 1000).toFixed(1) + ' s' : '-', sp.lcp_cat, T.lcp],\n\t\t\t\t ['INP', sp.inp_ms != null ? sp.inp_ms + ' ms' : '-', sp.inp_cat, T.inp],\n\t\t\t\t ['CLS', sp.cls != null ? String(sp.cls) : '-', sp.cls_cat, T.cls]].forEach(function (m) {\n\t\t\t\t\tvar card = el('div', 'aio-plat'), ct = CAT[m[2]] || ['', ''];\n\t\t\t\t\tcard.appendChild(el('b', '', m[0] + ': ' + m[1])); card.appendChild(el('span', 'aio-sub', m[3]));\n\t\t\t\t\tif (ct[1]) card.appendChild(el('span', 'aio-badge ' + ct[0], ct[1]));\n\t\t\t\t\tgrid.appendChild(card);\n\t\t\t\t});\n\t\t\t\tsbox.appendChild(grid);\n\t\t\t\tsbox.appendChild(el('p', 'aio-sub', sp.scope === 'origin' ? T.speedOrigin : T.speedPage));\n\t\t\t\t\/\/ 1.6.3: gi\u1ea3i th\u00edch 3 ch\u1ec9 s\u1ed1 cho ng\u01b0\u1eddi kh\u00f4ng l\u00e0m k\u1ef9 thu\u1eadt.\n\t\t\t\tvar help = el('div', 'aio-speedhelp');\n\t\t\t\tT.speedHelp.forEach(function (h) { var q = el('p', ''); q.appendChild(el('b', '', h[0] + ': ')); q.appendChild(document.createTextNode(h[1])); help.appendChild(q); });\n\t\t\t\thelp.appendChild(el('p', 'aio-sub', T.speedP75));\n\t\t\t\tsbox.appendChild(help);\n\t\t\t}).catch(function () { sbox.parentNode && sbox.parentNode.removeChild(sbox); });\n\t\t}\n\n\t\tif (!snap && c.api) out.appendChild(compareBox(d)); \/\/ 1.7.0 c\u00e1ch F\n\n\t\tvar todo = d.checks.filter(function (x) { return x.status !== 'pass' && x.max; });\n\t\tout.appendChild(el('h3', '', T.issues.replace('{n}', todo.length)));\n\t\tvar ul = el('ul', 'aio-list');\n\t\ttodo.forEach(function (x) {\n\t\t\tvar li = el('li', x.status, x.label);\n\t\t\tif (x.pages && x.pages.total > 1) li.appendChild(el('span', 'aio-sub', ' (' + T.pageFail.replace('{f}', x.pages.total - x.pages.pass).replace('{t}', x.pages.total) + ')'));\n\t\t\tguide(li, x); ul.appendChild(li);\n\t\t});\n\t\tout.appendChild(ul);\n\t\tif (!snap) {\n\t\t\t\/\/ 1.5.2 (anh Tin 05\/11\/2026): b\u00e1o cho kh\u00e1ch bi\u1ebft c\u00f2n b\u00e1o c\u00e1o chi ti\u1ebft b\u00ean d\u01b0\u1edbi, tr\u00e1nh t\u01b0\u1edfng b\u00e1o c\u00e1o ch\u1ec9 c\u00f3 danh s\u00e1ch n\u00e0y.\n\t\t\tvar more = el('button', 'aio-more'); more.type = 'button';\n\t\t\tmore.appendChild(el('span', '', T.more.replace('{n}', todo.length)));\n\t\t\tmore.insertAdjacentHTML('beforeend', '<svg class=\"aio-arrow\" width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M6 9l6 6 6-6\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>');\n\t\t\tout.appendChild(more);\n\t\t\tgate(d);\n\t\t\tvar g = out.querySelector('.aio-gate');\n\t\t\tmore.addEventListener('click', function () { g.scrollIntoView({ behavior: 'smooth', block: 'start' }); var em = g.querySelector('[name=email]'); if (em) setTimeout(function () { em.focus({ preventScroll: true }); }, 400); track('aio_more', {}); });\n\t\t\treturn;\n\t\t}\n\t\tvar box = el('div', 'aio-snap'); box.appendChild(el('p', 'aio-msg', T.snap.replace('{d}', c.showDate)));\n\t\tvar go = el('button', '', T.snapBtn); go.type = 'button';\n\t\tgo.addEventListener('click', function () { out.textContent = ''; form.scrollIntoView({ behavior: 'smooth', block: 'center' }); form.url.focus(); });\n\t\tbox.appendChild(go); out.appendChild(box);\n\t}\n\n\tfunction gate(d) {\n\t\tvar box = el('div', 'aio-gate'); box.appendChild(el('h3', '', T.gateH)); box.appendChild(el('p', 'aio-sub', T.gateP));\n\t\tvar f = el('form'); f.noValidate = true;\n\t\t\/\/ 1.3.0: nh\u00e3n nh\u00ecn th\u1ea5y ph\u00eda tr\u00ean m\u1ed7i \u00f4 (anh Tin ch\u1ecdn 1A), v\u00ec \u00f4 T\u00ean c\u00f4ng ty \u0111i\u1ec1n s\u1eb5n s\u1ebd che ch\u1eef g\u1ee3i \u00fd.\n\t\tfunction field(lbl, ctl) { var w = el('label', 'aio-field'); w.appendChild(el('span', 'aio-lbl', lbl)); w.appendChild(ctl); f.appendChild(w); }\n\t\t[['email', T.email, 'email', '', 'email', T.phEmail], ['phone', T.phone, 'tel', '', 'tel', T.phPhone], ['company', T.company, 'text', d.brand_guess || '', 'organization', T.phCompany], ['industry', T.industry, 'text', '', 'off', T.phIndustry]].forEach(function (a) {\n\t\t\tvar i = el('input'); i.name = a[0]; i.type = a[2]; i.placeholder = a[5]; i.value = a[3]; i.autocomplete = a[4]; field(a[1], i);\n\t\t});\n\t\tvar sel = el('select'); sel.name = 'city';\n\t\tvar o0 = el('option', '', T.cityAll); o0.value = 'all'; sel.appendChild(o0);\n\t\t[T.grpCity, T.grpProv].forEach(function (lbl, gi) {\n\t\t\tvar og = document.createElement('optgroup'); og.label = lbl;\n\t\t\tCITIES[gi].forEach(function (n) { var o = el('option', '', n); o.value = n; og.appendChild(o); });\n\t\t\tsel.appendChild(og);\n\t\t});\n\t\tvar oo = el('option', '', T.cityOut); oo.value = 'out'; sel.appendChild(oo);\n\t\tfield(T.city, sel);\n\t\tvar lab = el('label', 'aio-consent'), cb = el('input'); cb.type = 'checkbox'; cb.name = 'consent'; cb.required = true;\n\t\tvar pl = el('a', '', T.policy); pl.href = c.privacy; pl.target = '_blank'; pl.rel = 'noopener';\n\t\tlab.appendChild(cb); lab.appendChild(el('span', '', T.consent + ' ')); lab.lastChild.appendChild(pl); f.appendChild(lab);\n\t\tvar hp = el('input', 'aio-hp'); hp.name = 'website_url'; hp.tabIndex = -1; hp.autocomplete = 'off'; hp.setAttribute('aria-hidden', 'true'); f.appendChild(hp);\n\t\tvar b = el('button', '', T.unlock); b.type = 'submit'; f.appendChild(b); box.appendChild(f); out.appendChild(box);\n\t\tf.addEventListener('submit', function (e) {\n\t\t\te.preventDefault();\n\t\t\tvar v = {}; ['email', 'phone', 'company', 'industry', 'website_url'].forEach(function (k) { v[k] = f[k].value.trim(); });\n\t\t\tvar bad = !\/^[^@\\s]+@[^@\\s]+\\.[a-z]{2,}$\/i.test(v.email) ? 'email' : !phoneOk(v.phone) ? 'phone' : !v.company ? 'company' : !v.industry ? 'industry' : '';\n\t\t\tf.querySelectorAll('.aio-field input').forEach(function (i) { i.style.borderColor = ''; });\n\t\t\tif (bad) { var bi = f.querySelector('[name=' + bad + ']'); bi.style.borderColor = '#B42318'; bi.focus(); return; }\n\t\t\tvar cv = f.city.value;\n\t\t\tv.location = cv === 'all' ? T.cityAll : cv === 'out' ? T.cityOut : cv; \/\/ l\u01b0u v\u00e0o lead\n\t\t\tv.aiLocation = cv === 'all' ? T.country : cv === 'out' ? '' : cv;   \/\/ g\u1eedi \/mentions; tr\u1ed1ng th\u00ec d\u1ecbch v\u1ee5 d\u00f9ng m\u1eb7c \u0111\u1ecbnh\n\t\t\tv.brand = tradeName(v.company);\n\t\t\tif (!f.consent.checked) { f.consent.focus(); lab.style.color = '#B42318'; return; }\n\t\t\tv.consent = 1;\n\t\t\tb.disabled = true;\n\t\t\tpost(c.lead, Object.assign({ site: d.final_url, score: d.score, lang: c.lang }, v)).then(function (r) {\n\t\t\t\tif (!r.ok) { b.disabled = false; return; }\n\t\t\t\ttrack('generate_lead', { lead_source: 'aio_checker', aio_score: d.score });\n\t\t\t\t\/\/ Chuy\u1ec3n \u0111\u1ed5i Google Ads ph\u1ee5 \"Adtek - Lead c\u00f4ng c\u1ee5 Ki\u1ec3m tra AIO\" (ID 7890374772, phi\u00ean GG Ads t\u1ea1o 05\/11\/2026); ch\u1ec9 b\u1eafn khi lead \u0111\u00e3 l\u01b0u.\n\t\t\t\tif (typeof gtag === 'function') { gtag('event', 'conversion', { send_to: 'AW-16492430284\/POb4CPSgtrIdEMyHmrg9', value: 1.0, currency: 'VND' }); }\n\t\t\t\tbox.parentNode.removeChild(box); out.querySelectorAll('.aio-more').forEach(function (mo) { mo.parentNode.removeChild(mo); });\n\t\t\t\tunlocked = true; onUnlock.forEach(function (fn) { fn(); }); onUnlock = []; \/\/ 1.7.0: m\u1edf danh s\u00e1ch m\u1ee5c thua \u0111\u1ed1i th\u1ee7\n\t\t\t\tdetail(d); mentions(d, v);\n\t\t\t}).catch(function () { b.disabled = false; });\n\t\t});\n\t}\n\n\tfunction detail(d) {\n\t\tout.appendChild(el('h3', '', T.detail));\n\t\td.groups.forEach(function (g) {\n\t\t\tout.appendChild(el('p', 'aio-host', g.label + ' ' + g.points + '\/' + g.max));\n\t\t\tvar ul = el('ul', 'aio-list');\n\t\t\td.checks.filter(function (x) { return x.group === g.key; }).forEach(function (x) {\n\t\t\t\tvar li = el('li', x.status, x.label); guide(li, x); if (x.fix) li.appendChild(el('span', 'aio-fix', x.fix));\n\t\t\t\tif (x.pages && x.pages.total > 1 && x.pages.fail && x.pages.fail.length) li.appendChild(el('span', 'aio-fix', T.failOn + x.pages.fail.map(function (u) { return u.replace(\/^https?:\\\/\\\/[^\\\/]+\/, '') || '\/'; }).join(', ')));\n\t\t\t\tul.appendChild(li);\n\t\t\t});\n\t\t\tout.appendChild(ul);\n\t\t});\n\t}\n\n\tfunction mentions(d, v) {\n\t\tout.appendChild(el('h3', '', T.ai));\n\t\tvar box = el('div'); box.appendChild(el('p', 'aio-msg', T.aiWait)); out.appendChild(box);\n\t\tpost(c.api + '\/mentions', { url: d.final_url, brand: v.brand, industry: v.industry, location: v.aiLocation, email: v.email, lang: c.lang }).then(function (m) {\n\t\t\tbox.textContent = '';\n\t\t\tvar engines = m.ok ? Object.keys(m.engines).map(function (k) { return m.engines[k]; }) : [];\n\t\t\tif (!engines.some(function (e) { return e.configured; })) { box.appendChild(el('p', 'aio-msg', m._status === 429 ? T.rate : T.aiNone)); return cta(); }\n\t\t\tengines.forEach(function (e) {\n\t\t\t\tvar card = el('div', 'aio-eng'); card.appendChild(el('b', '', e.name));\n\t\t\t\tif (!e.configured) { card.appendChild(el('span', 'aio-sub', ' (' + (e.unavailable ? T.unavail : T.notConf) + ')')); box.appendChild(card); return; }\n\t\t\t\tvar rate = e.rate != null ? ' (' + e.rate + '%)' : '';\n\t\t\t\tcard.appendChild(el('div', 'aio-row', T.mentioned + ': ' + e.mentioned + ' ' + T.of + ' ' + e.asked + ' ' + T.times + rate + ' \u00b7 ' + T.cited + ': ' + e.cited + ' ' + T.of + ' ' + e.asked));\n\t\t\t\tvar ul = el('ul', 'aio-list');\n\t\t\t\tif (e.questions) { \/\/ 1.6.0: m\u1ed7i c\u00e2u h\u1ecfi nhi\u1ec1u l\u1ea7n, ghi s\u1ed1 l\u1ea7n \u0111\u01b0\u1ee3c nh\u1eafc\n\t\t\t\t\te.questions.forEach(function (q) { if (q.asked) ul.appendChild(el('li', q.mentioned ? (q.mentioned === q.asked ? 'pass' : 'partial') : 'fail', q.q + ' (' + q.mentioned + '\/' + q.asked + ')')); });\n\t\t\t\t} else {\n\t\t\t\t\te.answers.forEach(function (a) { if (!a.error) ul.appendChild(el('li', a.mentioned ? 'pass' : 'fail', a.q)); });\n\t\t\t\t}\n\t\t\t\tcard.appendChild(ul); box.appendChild(card);\n\t\t\t});\n\t\t\tif (m.other_sources && m.other_sources.length) {\n\t\t\t\tbox.appendChild(el('p', 'aio-host', T.others));\n\t\t\t\tvar ul = el('ul', 'aio-list');\n\t\t\t\tm.other_sources.slice(0, 8).forEach(function (o) { ul.appendChild(el('li', '', o.host + ' (' + o.count + ')')); });\n\t\t\t\tbox.appendChild(ul);\n\t\t\t}\n\t\t\tcta();\n\t\t}).catch(function () { box.textContent = ''; box.appendChild(el('p', 'aio-msg', T.aiNone)); cta(); });\n\t}\n\n\tfunction cta() { var a = el('a', 'aio-cta', T.cta); a.href = c.cta; out.appendChild(a); }\n})({\"api\":\"https:\\\/\\\/adtek-aio-checker-1054695652573.asia-southeast1.run.app\",\"lead\":\"https:\\\/\\\/adtek.agency\\\/en\\\/wp-json\\\/adtek\\\/v1\\\/aio-lead\",\"lang\":\"en\",\"cta\":\"https:\\\/\\\/adtek.agency\\\/en\\\/solution\\\/seo\\\/\",\"privacy\":\"https:\\\/\\\/adtek.agency\\\/en\\\/privacy-policy\\\/\",\"ga\":\"G-ZNGZV7R093\",\"guides\":{\"crawler.ai_bots\":\"\\\/en\\\/glossary\\\/robots-txt\\\/\",\"files.llms\":\"\\\/en\\\/glossary\\\/llms-txt\\\/\",\"schema.org\":\"\\\/en\\\/glossary\\\/schema-markup\\\/\",\"schema.sameas\":\"\\\/en\\\/glossary\\\/schema-markup\\\/\",\"schema.page\":\"\\\/en\\\/glossary\\\/schema-markup\\\/\",\"schema.faq\":\"\\\/en\\\/glossary\\\/schema-markup\\\/\",\"schema.breadcrumb\":\"\\\/en\\\/glossary\\\/breadcrumb\\\/\",\"content.h1\":\"\\\/en\\\/glossary\\\/heading-tags\\\/\",\"content.h2\":\"\\\/en\\\/glossary\\\/heading-tags\\\/\",\"content.ssr\":\"\\\/en\\\/glossary\\\/javascript-seo\\\/\",\"tech.title\":\"\\\/en\\\/glossary\\\/title-tag\\\/\",\"tech.canonical\":\"\\\/en\\\/glossary\\\/canonical-tag\\\/\",\"tech.indexable\":\"\\\/en\\\/glossary\\\/noindex\\\/\",\"tech.viewport\":\"\\\/en\\\/glossary\\\/mobile-first-indexing\\\/\",\"files.sitemap\":\"\\\/en\\\/glossary\\\/xml-sitemap\\\/\",\"content.words\":\"\\\/en\\\/what-is-ai-optimization-aio\\\/\",\"content.lists\":\"\\\/en\\\/what-is-ai-optimization-aio\\\/\",\"content.faq_block\":\"\\\/en\\\/what-is-ai-optimization-aio\\\/\",\"eeat.author\":\"\\\/en\\\/glossary\\\/e-e-a-t\\\/\",\"eeat.about\":\"\\\/en\\\/glossary\\\/e-e-a-t\\\/\",\"eeat.contact\":\"\\\/en\\\/glossary\\\/e-e-a-t\\\/\",\"eeat.citations\":\"\\\/en\\\/glossary\\\/e-e-a-t\\\/\",\"eeat.reviews\":\"\\\/en\\\/glossary\\\/e-e-a-t\\\/\",\"tech.desc\":\"\\\/en\\\/glossary\\\/meta-description\\\/\"},\"show\":[{\"score\":88,\"grade\":\"A\",\"host\":\"thegioididong.com\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":22,\"max\":23},{\"label\":\"Extractable content\",\"points\":18,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":9,\"max\":15},{\"label\":\"Technical\",\"points\":14,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Gemini\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"ready\",\"passed\":3,\"total\":3}],\"todo\":[{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"Lists or tables\",\"status\":\"partial\",\"key\":\"content.lists\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"partial\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"About page linked\",\"status\":\"fail\",\"key\":\"eeat.about\"},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"HTML under 600 KB\",\"status\":\"partial\",\"key\":\"tech.size\",\"pages\":{\"pass\":3,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/www.thegioididong.com\\\/\",\"score\":78},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.thegioididong.com\\\/tin-tuc\\\/vay-tien-mat-ngay-tren-app-kredivo-han-muc-den-50-trieu-1594811\",\"score\":90},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.thegioididong.com\\\/tin-tuc\\\/samsung-galaxy-a58-dat-chung-nhan-3c-6594500\",\"score\":86},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.thegioididong.com\\\/may-tinh-de-ban\",\"score\":98},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.thegioididong.com\\\/may-tinh-de-ban-apple\",\"score\":88},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.thegioididong.com\\\/may-tinh-de-ban-apple-aio\",\"score\":98}]},{\"score\":82,\"grade\":\"B\",\"host\":\"vinamilk.com.vn\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":7,\"max\":7},{\"label\":\"Structured data\",\"points\":18,\"max\":23},{\"label\":\"Extractable content\",\"points\":14,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":9,\"max\":15},{\"label\":\"Technical\",\"points\":14,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Gemini\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"ready\",\"passed\":3,\"total\":3}],\"todo\":[{\"label\":\"Page schema (WebPage, Article, Product...)\",\"status\":\"partial\",\"key\":\"schema.page\",\"pages\":{\"pass\":2,\"total\":6}},{\"label\":\"BreadcrumbList\",\"status\":\"partial\",\"key\":\"schema.breadcrumb\",\"pages\":{\"pass\":2,\"total\":5}},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Exactly one H1\",\"status\":\"partial\",\"key\":\"content.h1\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"Lists or tables\",\"status\":\"partial\",\"key\":\"content.lists\",\"pages\":{\"pass\":4,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"fail\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Named author or responsible person\",\"status\":\"fail\",\"key\":\"eeat.author\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"HTML under 600 KB\",\"status\":\"partial\",\"key\":\"tech.size\",\"pages\":{\"pass\":5,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/www.vinamilk.com.vn\\\/\",\"score\":72},{\"kind\":\"product\",\"url\":\"https:\\\/\\\/www.vinamilk.com.vn\\\/products\\\/sua-tuoi-thanh-trung-nguyen-chat-vinamilk-green-farm-khong-duong\",\"score\":88},{\"kind\":\"product\",\"url\":\"https:\\\/\\\/www.vinamilk.com.vn\\\/products\\\/sua-chua-vinamilk-vi-luu-do-it-duong\",\"score\":88},{\"kind\":\"about\",\"url\":\"https:\\\/\\\/www.vinamilk.com.vn\\\/about-us\",\"score\":57},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vinamilk.com.vn\\\/technology\",\"score\":63},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vinamilk.com.vn\\\/store-list\",\"score\":53}]},{\"score\":81,\"grade\":\"B\",\"host\":\"samsung.com\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":7,\"max\":7},{\"label\":\"Structured data\",\"points\":22,\"max\":23},{\"label\":\"Extractable content\",\"points\":17,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":2,\"max\":15},{\"label\":\"Technical\",\"points\":13,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Gemini\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"ready\",\"passed\":3,\"total\":3}],\"todo\":[{\"label\":\"FAQPage schema\",\"status\":\"partial\",\"key\":\"schema.faq\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"Exactly one H1\",\"status\":\"partial\",\"key\":\"content.h1\",\"pages\":{\"pass\":4,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"partial\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":2,\"total\":6}},{\"label\":\"About page linked\",\"status\":\"fail\",\"key\":\"eeat.about\"},{\"label\":\"Clear contact details\",\"status\":\"fail\",\"key\":\"eeat.contact\"},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Named author or responsible person\",\"status\":\"fail\",\"key\":\"eeat.author\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":4,\"total\":6}},{\"label\":\"Title 20-70 characters\",\"status\":\"partial\",\"key\":\"tech.title\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"No noindex or nosnippet\",\"status\":\"partial\",\"key\":\"tech.indexable\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"HTML under 600 KB\",\"status\":\"partial\",\"key\":\"tech.size\",\"pages\":{\"pass\":4,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/www.samsung.com\\\/vn\\\/\",\"score\":85},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.samsung.com\\\/vn\\\/offer\\\/\",\"score\":88},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.samsung.com\\\/vn\\\/offer\\\/black-friday\\\/\",\"score\":91},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.samsung.com\\\/vn\\\/buy-direct-get-more\\\/\",\"score\":86},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.samsung.com\\\/vn\\\/offer\\\/samsung-care-plus\\\/\",\"score\":79},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.samsung.com\\\/vn\\\/offer\\\/len-doi-sieu-pham\\\/\",\"score\":84}]},{\"score\":76,\"grade\":\"B\",\"host\":\"masanconsumer.com\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":16,\"max\":23},{\"label\":\"Extractable content\",\"points\":13,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":10,\"max\":15},{\"label\":\"Technical\",\"points\":12,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Gemini\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"basic\",\"passed\":1,\"total\":3}],\"todo\":[{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"sameAs links to official profiles\",\"status\":\"fail\",\"key\":\"schema.sameas\"},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Exactly one H1\",\"status\":\"partial\",\"key\":\"content.h1\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"Enough text in the HTML (500+ words)\",\"status\":\"partial\",\"key\":\"content.words\",\"pages\":{\"pass\":4,\"total\":5}},{\"label\":\"Question-and-answer block\",\"status\":\"fail\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Clear contact details\",\"status\":\"fail\",\"key\":\"eeat.contact\"},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":0,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/masanconsumer.com\\\/\",\"score\":80},{\"kind\":\"product\",\"url\":\"https:\\\/\\\/masanconsumer.com\\\/chin-su-xot-nha-hang-suon-xao-chua-ngot\\\/\",\"score\":67},{\"kind\":\"product\",\"url\":\"https:\\\/\\\/masanconsumer.com\\\/san-pham\\\/nganh-hang\\\/gia-vi\\\/\",\"score\":77},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/masanconsumer.com\\\/tin-tuc\\\/tin-thi-truong\\\/\",\"score\":76},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/masanconsumer.com\\\/tin-tuc\\\/thong-cao-bao-chi\\\/\",\"score\":76},{\"kind\":\"about\",\"url\":\"https:\\\/\\\/masanconsumer.com\\\/quan-he-co-dong\\\/gioi-thieu\\\/\",\"score\":86}]},{\"score\":72,\"grade\":\"B\",\"host\":\"pharmacity.vn\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":17,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":7,\"max\":23},{\"label\":\"Extractable content\",\"points\":18,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":13,\"max\":15},{\"label\":\"Technical\",\"points\":12,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"ready\",\"passed\":4,\"total\":4},{\"name\":\"Gemini\",\"status\":\"basic\",\"passed\":1,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"ready\",\"passed\":3,\"total\":3}],\"todo\":[{\"label\":\"robots.txt lets AI crawlers read the site\",\"status\":\"fail\",\"key\":\"crawler.ai_bots\"},{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"Organization or LocalBusiness schema\",\"status\":\"fail\",\"key\":\"schema.org\"},{\"label\":\"sameAs links to official profiles\",\"status\":\"fail\",\"key\":\"schema.sameas\"},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Exactly one H1\",\"status\":\"partial\",\"key\":\"content.h1\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"Lists or tables\",\"status\":\"partial\",\"key\":\"content.lists\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"partial\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":3,\"total\":5}},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"Title 20-70 characters\",\"status\":\"partial\",\"key\":\"tech.title\",\"pages\":{\"pass\":4,\"total\":6}},{\"label\":\"HTML under 600 KB\",\"status\":\"partial\",\"key\":\"tech.size\",\"pages\":{\"pass\":1,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/www.pharmacity.vn\\\/\",\"score\":75},{\"kind\":\"product\",\"url\":\"https:\\\/\\\/www.pharmacity.vn\\\/thuoc-dieu-tri-benh-da-lieu-maxgel.html\",\"score\":93},{\"kind\":\"product\",\"url\":\"https:\\\/\\\/www.pharmacity.vn\\\/thuoc-dieu-tri-buou-giap-don-thuan-lanh-tinh-du-phong-tai-phat-sau-phau-thuat-buou-giap-don-thuan-levothyrox-50mg-3-vi-x-10-vienhop.html\",\"score\":84},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.pharmacity.vn\\\/fabafixim-2.htm\",\"score\":94},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.pharmacity.vn\\\/deruff-2.htm\",\"score\":86},{\"kind\":\"about\",\"url\":\"https:\\\/\\\/www.pharmacity.vn\\\/gioi-thieu\",\"score\":77}]},{\"score\":72,\"grade\":\"B\",\"host\":\"techcombank.com\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":10,\"max\":23},{\"label\":\"Extractable content\",\"points\":14,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":9,\"max\":15},{\"label\":\"Technical\",\"points\":14,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"basic\",\"passed\":2,\"total\":4},{\"name\":\"Gemini\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":1,\"total\":3},{\"name\":\"Claude\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"basic\",\"passed\":2,\"total\":3}],\"todo\":[{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"sameAs links to official profiles\",\"status\":\"fail\",\"key\":\"schema.sameas\"},{\"label\":\"Page schema (WebPage, Article, Product...)\",\"status\":\"partial\",\"key\":\"schema.page\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"BreadcrumbList\",\"status\":\"fail\",\"key\":\"schema.breadcrumb\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Exactly one H1\",\"status\":\"partial\",\"key\":\"content.h1\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"Enough text in the HTML (500+ words)\",\"status\":\"partial\",\"key\":\"content.words\",\"pages\":{\"pass\":3,\"total\":5}},{\"label\":\"Lists or tables\",\"status\":\"partial\",\"key\":\"content.lists\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"fail\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Content available without JavaScript\",\"status\":\"partial\",\"key\":\"content.ssr\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Named author or responsible person\",\"status\":\"fail\",\"key\":\"eeat.author\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":4,\"total\":6}},{\"label\":\"HTML under 600 KB\",\"status\":\"partial\",\"key\":\"tech.size\",\"pages\":{\"pass\":5,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/techcombank.com\\\/\",\"score\":74},{\"kind\":\"service\",\"url\":\"https:\\\/\\\/techcombank.com\\\/ve-chung-toi\\\/phat-trien-ben-vung\\\/giai-phap\\\/tai-chinh-ben-vung\\\/ho-tro-chuyen-doi-esg\",\"score\":77},{\"kind\":\"service\",\"url\":\"https:\\\/\\\/techcombank.com\\\/ve-chung-toi\\\/phat-trien-ben-vung\\\/giai-phap\\\/xa-hoi\",\"score\":77},{\"kind\":\"about\",\"url\":\"https:\\\/\\\/techcombank.com\\\/ve-chung-toi\\\/ve-techcombank\",\"score\":74},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/techcombank.com\\\/branch-screen\",\"score\":28},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/techcombank.com\\\/khach-hang-ca-nhan\",\"score\":72}]},{\"score\":55,\"grade\":\"C\",\"host\":\"vietnamairlines.com\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":0,\"max\":23},{\"label\":\"Extractable content\",\"points\":14,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":6,\"max\":15},{\"label\":\"Technical\",\"points\":10,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Gemini\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"ready\",\"passed\":3,\"total\":3}],\"todo\":[{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"Organization or LocalBusiness schema\",\"status\":\"fail\",\"key\":\"schema.org\"},{\"label\":\"sameAs links to official profiles\",\"status\":\"fail\",\"key\":\"schema.sameas\"},{\"label\":\"Page schema (WebPage, Article, Product...)\",\"status\":\"fail\",\"key\":\"schema.page\",\"pages\":{\"pass\":0,\"total\":6}},{\"label\":\"BreadcrumbList\",\"status\":\"fail\",\"key\":\"schema.breadcrumb\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Exactly one H1\",\"status\":\"partial\",\"key\":\"content.h1\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":2,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"fail\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Clear contact details\",\"status\":\"fail\",\"key\":\"eeat.contact\"},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Named author or responsible person\",\"status\":\"fail\",\"key\":\"eeat.author\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Meta description 50-170 characters\",\"status\":\"fail\",\"key\":\"tech.desc\",\"pages\":{\"pass\":0,\"total\":6}},{\"label\":\"Title 20-70 characters\",\"status\":\"partial\",\"key\":\"tech.title\",\"pages\":{\"pass\":5,\"total\":6}},{\"label\":\"HTML under 600 KB\",\"status\":\"partial\",\"key\":\"tech.size\",\"pages\":{\"pass\":2,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/www.vietnamairlines.com\\\/vn\\\/vi\\\/\",\"score\":55},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.vietnamairlines.com\\\/vn\\\/vi\\\/vietnam-airlines\\\/press-room\\\/news\\\/2026\\\/0603-thong-bao-tang-thue-khach-du-lich-quoc-te-tren-chang-bay-xuat-phat-tu-Nhat-Ban\",\"score\":49},{\"kind\":\"about\",\"url\":\"https:\\\/\\\/www.vietnamairlines.com\\\/vn\\\/vi\\\/vietnam-airlines\\\/about-us\",\"score\":60},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vietnamairlines.com\\\/vn\\\/vi\\\/monthly-offers\",\"score\":65},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vietnamairlines.com\\\/vn\\\/vi\\\/plan-book\\\/lotusociety\",\"score\":47},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vietnamairlines.com\\\/vn\\\/vi\\\/plan-book\\\/flight-package\\\/special-deals\\\/special-offers-for-senior\",\"score\":65}]},{\"score\":45,\"grade\":\"D\",\"host\":\"vietcombank.com.vn\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":0,\"max\":23},{\"label\":\"Extractable content\",\"points\":5,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":7,\"max\":15},{\"label\":\"Technical\",\"points\":8,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"basic\",\"passed\":3,\"total\":4},{\"name\":\"Gemini\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Claude\",\"status\":\"ready\",\"passed\":3,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"basic\",\"passed\":2,\"total\":3}],\"todo\":[{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"Organization or LocalBusiness schema\",\"status\":\"fail\",\"key\":\"schema.org\"},{\"label\":\"sameAs links to official profiles\",\"status\":\"fail\",\"key\":\"schema.sameas\"},{\"label\":\"Page schema (WebPage, Article, Product...)\",\"status\":\"fail\",\"key\":\"schema.page\",\"pages\":{\"pass\":0,\"total\":6}},{\"label\":\"BreadcrumbList\",\"status\":\"fail\",\"key\":\"schema.breadcrumb\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Exactly one H1\",\"status\":\"fail\",\"key\":\"content.h1\",\"pages\":{\"pass\":0,\"total\":6}},{\"label\":\"At least 3 H2 sections\",\"status\":\"partial\",\"key\":\"content.h2\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"Enough text in the HTML (500+ words)\",\"status\":\"partial\",\"key\":\"content.words\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Lists or tables\",\"status\":\"partial\",\"key\":\"content.lists\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"Question-and-answer block\",\"status\":\"fail\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":0,\"total\":5}},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Named author or responsible person\",\"status\":\"fail\",\"key\":\"eeat.author\",\"pages\":{\"pass\":0,\"total\":2}},{\"label\":\"Cites external sources\",\"status\":\"fail\",\"key\":\"eeat.citations\",\"pages\":{\"pass\":0,\"total\":2}},{\"label\":\"Meta description 50-170 characters\",\"status\":\"partial\",\"key\":\"tech.desc\",\"pages\":{\"pass\":0,\"total\":6}},{\"label\":\"Title 20-70 characters\",\"status\":\"partial\",\"key\":\"tech.title\",\"pages\":{\"pass\":1,\"total\":6}},{\"label\":\"Canonical tag\",\"status\":\"partial\",\"key\":\"tech.canonical\",\"pages\":{\"pass\":3,\"total\":6}},{\"label\":\"Mobile viewport\",\"status\":\"partial\",\"key\":\"tech.viewport\",\"pages\":{\"pass\":3,\"total\":6}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/www.vietcombank.com.vn\\\/\",\"score\":50},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.vietcombank.com.vn\\\/Trang-thong-tin-dien-tu\\\/Articles\\\/20230810_SGD_GD-nhan-ky-niem-chuong-bao-ve-ANTQ\",\"score\":14},{\"kind\":\"blog\",\"url\":\"https:\\\/\\\/www.vietcombank.com.vn\\\/Trang-thong-tin-dien-tu\\\/Articles\\\/20230815_Bo-nhiem-2-PTGD-dang-lan-2\",\"score\":14},{\"kind\":\"about\",\"url\":\"https:\\\/\\\/www.vietcombank.com.vn\\\/Ve-Vietcombank\",\"score\":57},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vietcombank.com.vn\\\/KHCN\",\"score\":42},{\"kind\":\"other\",\"url\":\"https:\\\/\\\/www.vietcombank.com.vn\\\/To-chuc\",\"score\":16}]},{\"score\":32,\"grade\":\"F\",\"host\":\"shopee.vn\",\"groups\":[{\"label\":\"AI crawler access\",\"points\":20,\"max\":20},{\"label\":\"Machine-readable files\",\"points\":5,\"max\":7},{\"label\":\"Structured data\",\"points\":0,\"max\":23},{\"label\":\"Extractable content\",\"points\":0,\"max\":20},{\"label\":\"Trust signals (E-E-A-T)\",\"points\":0,\"max\":15},{\"label\":\"Technical\",\"points\":7,\"max\":15}],\"platforms\":[{\"name\":\"ChatGPT\",\"status\":\"basic\",\"passed\":2,\"total\":4},{\"name\":\"Google AI Overviews and AI Mode\",\"status\":\"basic\",\"passed\":2,\"total\":4},{\"name\":\"Gemini\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Microsoft Copilot\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Perplexity\",\"status\":\"basic\",\"passed\":1,\"total\":3},{\"name\":\"Claude\",\"status\":\"basic\",\"passed\":2,\"total\":3},{\"name\":\"Meta AI\",\"status\":\"basic\",\"passed\":1,\"total\":3}],\"todo\":[{\"label\":\"llms.txt file present\",\"status\":\"fail\",\"key\":\"files.llms\"},{\"label\":\"Organization or LocalBusiness schema\",\"status\":\"fail\",\"key\":\"schema.org\"},{\"label\":\"sameAs links to official profiles\",\"status\":\"fail\",\"key\":\"schema.sameas\"},{\"label\":\"Page schema (WebPage, Article, Product...)\",\"status\":\"fail\",\"key\":\"schema.page\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"BreadcrumbList\",\"status\":\"fail\",\"key\":\"schema.breadcrumb\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"FAQPage schema\",\"status\":\"fail\",\"key\":\"schema.faq\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Exactly one H1\",\"status\":\"fail\",\"key\":\"content.h1\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"At least 3 H2 sections\",\"status\":\"fail\",\"key\":\"content.h2\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Enough text in the HTML (500+ words)\",\"status\":\"fail\",\"key\":\"content.words\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Lists or tables\",\"status\":\"fail\",\"key\":\"content.lists\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Question-and-answer block\",\"status\":\"fail\",\"key\":\"content.faq_block\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Content available without JavaScript\",\"status\":\"fail\",\"key\":\"content.ssr\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"About page linked\",\"status\":\"fail\",\"key\":\"eeat.about\"},{\"label\":\"Clear contact details\",\"status\":\"fail\",\"key\":\"eeat.contact\"},{\"label\":\"Links to review profiles\",\"status\":\"fail\",\"key\":\"eeat.reviews\"},{\"label\":\"Named author or responsible person\",\"status\":\"fail\",\"key\":\"eeat.author\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Cites external sources\",\"status\":\"fail\",\"key\":\"eeat.citations\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Meta description 50-170 characters\",\"status\":\"fail\",\"key\":\"tech.desc\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Title 20-70 characters\",\"status\":\"fail\",\"key\":\"tech.title\",\"pages\":{\"pass\":0,\"total\":1}},{\"label\":\"Canonical tag\",\"status\":\"fail\",\"key\":\"tech.canonical\",\"pages\":{\"pass\":0,\"total\":1}}],\"pages\":[{\"kind\":\"home\",\"url\":\"https:\\\/\\\/shopee.vn\\\/\",\"score\":15}]}],\"showDate\":\"5 Nov 2026\",\"page\":\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/ai-search-checker\\\/\",\"shared\":null});\n<\/script>\n\t\t<\/div>\n<\/div>\n<\/section>\n<section class=\"sol-sec sol-sec-alt\">\n<div class=\"container\">\n<div class=\"sol-head\"><span class=\"sol-eyebrow\">What it checks<\/span><\/p>\n<h2>8 signal groups AI uses to choose its sources<\/h2>\n<p>A 100-point score across 6 technical groups, plus readiness per platform and a direct check with the AI assistants.<\/p>\n<\/div>\n<div class=\"sol-icons\">\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"11\" cy=\"11\" r=\"7\"\/><path d=\"m21 21-5-5\"\/><\/svg><\/p>\n<h3>AI crawler access<\/h3>\n<p>Whether robots.txt lets Googlebot, Bingbot, OAI-SearchBot, PerplexityBot and Claude-SearchBot read your pages.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><rect x=\"4\" y=\"3\" width=\"16\" height=\"18\" rx=\"2\"\/><path d=\"M8 8h8M8 12h8M8 16h4\"\/><\/svg><\/p>\n<h3>Machine-readable files<\/h3>\n<p>An XML sitemap and llms.txt help machines find your key pages.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"6\" cy=\"6\" r=\"2.5\"\/><circle cx=\"18\" cy=\"6\" r=\"2.5\"\/><circle cx=\"12\" cy=\"18\" r=\"2.5\"\/><path d=\"M8.5 6h7M7.2 8.2l3.6 7.6M16.8 8.2l-3.6 7.6\"\/><\/svg><\/p>\n<h3>Structured data<\/h3>\n<p>Organization, sameAs, page, breadcrumb and FAQ schema so AI understands who you are.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><path d=\"M3 9h18M9 9v12\"\/><\/svg><\/p>\n<h3>Extractable content<\/h3>\n<p>Clear headings, real text in the HTML, lists, tables and direct answers.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"9\" cy=\"8\" r=\"3\"\/><path d=\"M3 20c0-3.3 2.7-6 6-6s6 2.7 6 6\"\/><circle cx=\"17\" cy=\"9\" r=\"2.5\"\/><path d=\"M16 14c2.8 0 5 2.2 5 5\"\/><\/svg><\/p>\n<h3>Trust signals (E-E-A-T)<\/h3>\n<p>Authors, an About page, contact details, cited sources and review profiles.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M4 20V11M10 20V5M16 20v-6M2 20h20\"\/><\/svg><\/p>\n<h3>Technical<\/h3>\n<p>Title, meta description, canonical, viewport, no noindex and page weight.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"9\"\/><circle cx=\"12\" cy=\"12\" r=\"5\"\/><circle cx=\"12\" cy=\"12\" r=\"1.5\"\/><\/svg><\/p>\n<h3>Readiness by platform<\/h3>\n<p>Minimum conditions for ChatGPT, Google AI, Gemini, Copilot, Perplexity, Claude and Meta AI.<\/p>\n<\/div>\n<div><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M21 12a8 8 0 0 1-11.6 7.1L4 20l1.1-4.6A8 8 0 1 1 21 12z\"\/><\/svg><\/p>\n<h3>AI brand mentions<\/h3>\n<p>Asks ChatGPT and Gemini questions about your industry and shows who gets mentioned.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/section>\n<section class=\"sol-sec \">\n<div class=\"container\">\n<div class=\"sol-head\"><span class=\"sol-eyebrow\">Methodology<\/span><\/p>\n<h2>How Adtek scores AIO<\/h2>\n<p>A 100-point scale Adtek built from official documentation by Google, OpenAI, Anthropic and Perplexity. Every item and weight is public so you can check our work.<\/p>\n<\/div>\n<details class=\"sol-seo\" open>\n<summary>See the full scale and how each part is measured<\/summary>\n<div class=\"sol-seo-body\">\n<h3>1. Which pages the tool reads<\/h3>\n<ul>\n<li>Your homepage and up to 5 sample pages from your sitemap: 2 product or service pages, 2 articles and your About page. Samples are taken from fixed positions in the sitemap, so checking the same site again reads the same pages. Policy, terms, cart and search pages are skipped.<\/li>\n<li>The tool reads the HTML the way AI crawlers do: it does not run JavaScript, identifies itself as AdtekAIOChecker and never pretends to be another company&#8217;s bot. If your site blocks it, the result says so instead of guessing a score.<\/li>\n<li>Site-wide items (robots.txt, sitemap, llms.txt, Organization schema, About page, contact details, review profiles) are checked once. Page-level items are checked on every page and averaged, with the number of failing pages shown.<\/li>\n<\/ul>\n<h3>2. The 100-point scale<\/h3>\n<div class=\"table-wrap\">\n<table>\n<thead>\n<tr>\n<th>Group<\/th>\n<th>Points<\/th>\n<th>What is checked<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>AI crawler access<\/td>\n<td>20<\/td>\n<td><a href=\"https:\/\/adtek.agency\/en\/glossary\/robots-txt\/\">robots.txt<\/a> rules for 14 bots. Search bots (Googlebot, Bingbot, OAI-SearchBot, PerplexityBot, Claude-SearchBot, meta-webindexer) 14.5 points, user-triggered fetchers 2, training bots (GPTBot, ClaudeBot, Google-Extended, Applebot-Extended) 3, link preview bot 0.5.<\/td>\n<\/tr>\n<tr>\n<td>Machine-readable files<\/td>\n<td>7<\/td>\n<td><a href=\"https:\/\/adtek.agency\/en\/glossary\/xml-sitemap\/\">XML sitemap<\/a> 5, <a href=\"https:\/\/adtek.agency\/en\/glossary\/llms-txt\/\">llms.txt<\/a> 2.<\/td>\n<\/tr>\n<tr>\n<td>Structured data<\/td>\n<td>23<\/td>\n<td>Organization <a href=\"https:\/\/adtek.agency\/en\/glossary\/schema-markup\/\">schema<\/a> 9, sameAs with 2 or more official profiles 6, page schema 4, <a href=\"https:\/\/adtek.agency\/en\/glossary\/breadcrumb\/\">BreadcrumbList<\/a> 3 (not checked on the homepage), FAQPage 1.<\/td>\n<\/tr>\n<tr>\n<td>Extractable content<\/td>\n<td>20<\/td>\n<td>Exactly one <a href=\"https:\/\/adtek.agency\/en\/glossary\/heading-tags\/\">H1<\/a> 4, at least 3 H2 sections 4, 500+ words in the HTML 5, lists or tables 3, a Q&amp;A block 2, content available without <a href=\"https:\/\/adtek.agency\/en\/glossary\/javascript-seo\/\">JavaScript<\/a> 2.<\/td>\n<\/tr>\n<tr>\n<td>Trust signals (<a href=\"https:\/\/adtek.agency\/en\/glossary\/e-e-a-t\/\">E-E-A-T<\/a>)<\/td>\n<td>15<\/td>\n<td>Author 4 and external citations 2 (checked on articles), About page 4, contact details 3, review profile links 2.<\/td>\n<\/tr>\n<tr>\n<td>Technical<\/td>\n<td>15<\/td>\n<td><a href=\"https:\/\/adtek.agency\/en\/glossary\/meta-description\/\">Meta description<\/a> of 50 to 170 characters 3, <a href=\"https:\/\/adtek.agency\/en\/glossary\/title-tag\/\">title<\/a> of 20 to 70 characters 3, <a href=\"https:\/\/adtek.agency\/en\/glossary\/canonical-tag\/\">canonical<\/a> 2, viewport 2, no <a href=\"https:\/\/adtek.agency\/en\/glossary\/noindex\/\">noindex<\/a> or nosnippet (robots meta tag or X-Robots-Tag header) 3, HTML under 600 KB 2.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Grades: A from 85 points, B from 70, C from 55, D from 40, F below 40.<\/p>\n<h3>3. Why the weights look like this<\/h3>\n<ul>\n<li>Search bots weigh more than training bots because they decide whether a page can be cited in answers that use web search. Blocking training bots is a valid choice, so it costs only a few points.<\/li>\n<li>llms.txt is worth 2 points: in June 2026 Google said the file is not needed for Google Search and does not raise or lower rankings, and no major AI company has confirmed using it.<\/li>\n<li>FAQPage is worth 1 point: Google stopped showing FAQ rich results on 7 May 2026. FAQPage markup is still valid to describe on-page Q&amp;A.<\/li>\n<li>Structured data and content carry 43 points because they help AI work out who the brand is and lift clean answer passages.<\/li>\n<li>The thresholds of 20 to 70 characters for titles, 50 to 170 for meta descriptions, 500 words and 600 KB are Adtek&#8217;s conventions. Google publishes no fixed numbers for these.<\/li>\n<\/ul>\n<h3>4. Readiness by platform<\/h3>\n<p>Each platform (ChatGPT, Google AI Overviews and AI Mode, Gemini, Copilot, Perplexity, Claude, Meta AI) has required conditions, such as its search bot being allowed to read your site, plus recommended ones. A missing required condition gives &#8220;Blocked&#8221;, meeting all gives &#8220;Ready&#8221;, anything else is &#8220;Basic&#8221;.<\/p>\n<h3>5. AI brand mention check<\/h3>\n<ul>\n<li>The tool asks 8 questions covering common search intents (reputable providers, top lists, comparisons, how to choose, cost, alternatives, brand reviews, highly rated locally). Each question is asked twice on ChatGPT and Gemini through their official APIs with web search on. ChatGPT is set to a Vietnam location based on the city you choose.<\/li>\n<li>&#8220;Linked&#8221; means your domain is among the sources the AI used. &#8220;Mentioned&#8221; means the AI linked to you or named your brand; when it only names the brand, the tool runs an extra step to confirm it is your company and not one with a similar name.<\/li>\n<li>AI answers change over time and between users, so this is a single measurement, not a fixed ranking.<\/li>\n<\/ul>\n<h3>6. Page speed<\/h3>\n<p>LCP, INP and CLS come from real Chrome user data through Google&#8217;s Chrome UX Report (CrUX) API, mobile, last 28 days; when a page has no data, the whole domain&#8217;s data is used. Sites without enough traffic have no data yet. This part is for reference only and is not part of the 100-point score.<\/p>\n<h3>7. Limits of the tool<\/h3>\n<ul>\n<li>The tool measures signals on your website. Mentions in the press, on social media or on external review sites also shape AI answers but are not scored.<\/li>\n<li>Because the tool never pretends to be another company&#8217;s bot, it cannot test whether a firewall blocks real AI crawlers. If the tool itself is blocked, AI crawlers probably are too.<\/li>\n<li>A high score makes your site easier for AI to read and understand; it does not guarantee a mention. The scale is reviewed when platforms change their policies; last updated 5 November 2026.<\/li>\n<\/ul>\n<\/div>\n<\/details>\n<\/div>\n<\/section>\n<section class=\"sol-sec \">\n<div class=\"container\">\n<div class=\"sol-head\">\n<h2>Frequently asked questions<\/h2>\n<\/div>\n<div class=\"sol-faq\">\n<details>\n<summary>Does the tool actually ask ChatGPT and Gemini?<\/summary>\n<p>Yes, in the brand check. It sends 8 industry and location questions, each asked twice, through the official OpenAI and Google APIs with web search on. AI answers change over time, so this is a single measurement, not a fixed ranking.<\/p>\n<\/details>\n<details>\n<summary>Does a high score guarantee AI will mention me?<\/summary>\n<p>No. The score measures whether AI can read and understand your pages. Being mentioned also depends on whether your content answers the question and whether trusted sources mention your brand.<\/p>\n<\/details>\n<details>\n<summary>Do I need an llms.txt file?<\/summary>\n<p>It is nice to have but not decisive. Google says the file is not needed for Google Search and does not raise or lower rankings, and no major AI platform has confirmed using it, so it counts for 2 of 100 points.<\/p>\n<\/details>\n<details>\n<summary>Why does the tool say my website is blocking it?<\/summary>\n<p>Your server refused the request, usually because a firewall, Cloudflare or a security plugin blocks unknown bots. These layers often block AI crawlers too even when robots.txt allows them.<\/p>\n<\/details>\n<details>\n<summary>How is my information used?<\/summary>\n<p>Your email, phone number and company name are used to send the report, run the AI check and let Adtek contact you if you want advice. Adtek does not share it with third parties.<\/p>\n<\/details>\n<\/div>\n<\/div>\n<\/section>\n<p><script type=\"application\/ld+json\">{\"@context\": \"https:\/\/schema.org\", \"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"Does the tool actually ask ChatGPT and Gemini?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes, in the brand check. It sends 8 industry and location questions, each asked twice, through the official OpenAI and Google APIs with web search on. AI answers change over time, so this is a single measurement, not a fixed ranking.\"}}, {\"@type\": \"Question\", \"name\": \"Does a high score guarantee AI will mention me?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"No. The score measures whether AI can read and understand your pages. Being mentioned also depends on whether your content answers the question and whether trusted sources mention your brand.\"}}, {\"@type\": \"Question\", \"name\": \"Do I need an llms.txt file?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"It is nice to have but not decisive. Google says the file is not needed for Google Search and does not raise or lower rankings, and no major AI platform has confirmed using it, so it counts for 2 of 100 points.\"}}, {\"@type\": \"Question\", \"name\": \"Why does the tool say my website is blocking it?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Your server refused the request, usually because a firewall, Cloudflare or a security plugin blocks unknown bots. These layers often block AI crawlers too even when robots.txt allows them.\"}}, {\"@type\": \"Question\", \"name\": \"How is my information used?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Your email, phone number and company name are used to send the report, run the AI check and let Adtek contact you if you want advice. Adtek does not share it with third parties.\"}}]}<\/script><\/p>\n<section class=\"sol-sec sol-band\">\n<div class=\"container\">\n<div class=\"sol-head\"><span class=\"sol-eyebrow\">Optimize for AI Search<\/span><\/p>\n<h2>Need a team to win AI answers?<\/h2>\n<p>Adtek fixes the technical layer, rewrites content around real customer questions and tracks your brand on ChatGPT, Gemini and Perplexity every month.<\/p>\n<div class=\"sol-btns\"><a class=\"sol-btn\" href=\"https:\/\/adtek.agency\/en\/solution\/seo\/\">See our SEO services<\/a><\/div>\n<\/div>\n<\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Is your website ready for AI Search? Free AIO (AI Search) Checker Enter a website to see whether ChatGPT, Gemini, Perplexity and Google AI Overviews can read and cite your pages, with the fixes to make. What it checks 8 signal groups AI uses to choose its sources A 100-point score across 6 technical groups, [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":0,"parent":8855,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-template\/landing-template.php","meta":{"_acf_changed":false,"_yoast_wpseo_title":"Free AIO (AI Search) Checker for websites | Adtek","_yoast_wpseo_metadesc":"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.","_yoast_wpseo_meta-robots-noindex":"","_yoast_wpseo_opengraph-image":"https:\/\/adtek.agency\/wp-content\/uploads\/2026\/11\/kiem-tra-aio-share-en.jpg","_yoast_wpseo_opengraph-image-id":"8907","_yoast_wpseo_twitter-image":"https:\/\/adtek.agency\/wp-content\/uploads\/2026\/11\/kiem-tra-aio-share-en.jpg","_yoast_wpseo_twitter-image-id":"8907","inline_featured_image":false,"footnotes":""},"class_list":["post-8856","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Free AIO (AI Search) Checker for websites | Adtek<\/title>\n<meta name=\"description\" content=\"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Free AIO (AI Search) Checker for websites | Adtek\" \/>\n<meta property=\"og:description\" content=\"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/\" \/>\n<meta property=\"og:site_name\" content=\"Adtek Growth Marketing Agency\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/101888089257566\" \/>\n<meta property=\"article:modified_time\" content=\"2026-11-05T11:04:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/adtek.agency\/wp-content\/uploads\/2026\/11\/kiem-tra-aio-share-en.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/adtek.agency\/wp-content\/uploads\/2026\/11\/kiem-tra-aio-share-en.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/ai-search-checker\\\/\",\"url\":\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/ai-search-checker\\\/\",\"name\":\"Free AIO (AI Search) Checker for websites | Adtek\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/#website\"},\"datePublished\":\"2026-11-04T18:40:32+00:00\",\"dateModified\":\"2026-11-05T11:04:02+00:00\",\"description\":\"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/ai-search-checker\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/ai-search-checker\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/ai-search-checker\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/adtek.agency\\\/en\\\/homepage\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tools\",\"item\":\"https:\\\/\\\/adtek.agency\\\/en\\\/tools\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"AI Search Checker\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/adtek.agency\\\/en\\\/\",\"name\":\"Adtek\",\"description\":\"Adtek was founded in 2021 to help brands grow their businesses from branding building to revenue growth.\",\"publisher\":{\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/#organization\"},\"alternateName\":\"Adtek Growth Marketing Agency\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/adtek.agency\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/#organization\",\"name\":\"Adtek\",\"alternateName\":\"Adtek Growth Marketing Agency\",\"url\":\"https:\\\/\\\/adtek.agency\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/adtek.agency\\\/wp-content\\\/uploads\\\/2022\\\/03\\\/logo-adtek.png\",\"contentUrl\":\"https:\\\/\\\/adtek.agency\\\/wp-content\\\/uploads\\\/2022\\\/03\\\/logo-adtek.png\",\"width\":440,\"height\":369,\"caption\":\"Adtek\"},\"image\":{\"@id\":\"https:\\\/\\\/adtek.agency\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/101888089257566\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/adtek-growth-marketing-agency\\\/\",\"https:\\\/\\\/www.tiktok.com\\\/@adtek.growth.marketing\",\"https:\\\/\\\/www.google.com\\\/search?kgmid=\\\/g\\\/11x7pm71mh\"],\"email\":\"contact@adtek.agency\",\"telephone\":\"+84932349434\",\"legalName\":\"C\u00f4ng ty C\u1ed5 ph\u1ea7n Adtek Technology\",\"foundingDate\":\"2022-05-05\",\"description\":\"Adtek l\u00e0 growth marketing agency t\u1ea1i Vi\u1ec7t Nam, gi\u00fap th\u01b0\u01a1ng hi\u1ec7u t\u0103ng tr\u01b0\u1edfng t\u1eeb x\u00e2y d\u1ef1ng th\u01b0\u01a1ng hi\u1ec7u \u0111\u1ebfn doanh thu: Brand Commerce, qu\u1ea3ng c\u00e1o hi\u1ec7u su\u1ea5t, SEO v\u00e0 AI Search, d\u1eef li\u1ec7u v\u00e0 CRM, th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed.\",\"taxID\":\"0317120810\",\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"146 Bis Nguy\u1ec5n V\u0103n Th\u1ee7\",\"addressLocality\":\"Ph\u01b0\u1eddng T\u00e2n \u0110\u1ecbnh\",\"addressRegion\":\"TP. H\u1ed3 Ch\u00ed Minh\",\"addressCountry\":\"VN\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Free AIO (AI Search) Checker for websites | Adtek","description":"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/","og_locale":"en_US","og_type":"article","og_title":"Free AIO (AI Search) Checker for websites | Adtek","og_description":"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.","og_url":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/","og_site_name":"Adtek Growth Marketing Agency","article_publisher":"https:\/\/www.facebook.com\/101888089257566","article_modified_time":"2026-11-05T11:04:02+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/adtek.agency\/wp-content\/uploads\/2026\/11\/kiem-tra-aio-share-en.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_image":"https:\/\/adtek.agency\/wp-content\/uploads\/2026\/11\/kiem-tra-aio-share-en.jpg","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/","url":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/","name":"Free AIO (AI Search) Checker for websites | Adtek","isPartOf":{"@id":"https:\/\/adtek.agency\/en\/#website"},"datePublished":"2026-11-04T18:40:32+00:00","dateModified":"2026-11-05T11:04:02+00:00","description":"Free AI Search checker: score your website out of 100 across 6 areas (AI bots, schema, content, E-E-A-T, technical) and see if AI mentions your brand.","breadcrumb":{"@id":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/adtek.agency\/en\/tools\/ai-search-checker\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/adtek.agency\/en\/homepage\/"},{"@type":"ListItem","position":2,"name":"Tools","item":"https:\/\/adtek.agency\/en\/tools\/"},{"@type":"ListItem","position":3,"name":"AI Search Checker"}]},{"@type":"WebSite","@id":"https:\/\/adtek.agency\/en\/#website","url":"https:\/\/adtek.agency\/en\/","name":"Adtek","description":"Adtek was founded in 2021 to help brands grow their businesses from branding building to revenue growth.","publisher":{"@id":"https:\/\/adtek.agency\/en\/#organization"},"alternateName":"Adtek Growth Marketing Agency","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/adtek.agency\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/adtek.agency\/en\/#organization","name":"Adtek","alternateName":"Adtek Growth Marketing Agency","url":"https:\/\/adtek.agency\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/adtek.agency\/en\/#\/schema\/logo\/image\/","url":"https:\/\/adtek.agency\/wp-content\/uploads\/2022\/03\/logo-adtek.png","contentUrl":"https:\/\/adtek.agency\/wp-content\/uploads\/2022\/03\/logo-adtek.png","width":440,"height":369,"caption":"Adtek"},"image":{"@id":"https:\/\/adtek.agency\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/101888089257566","https:\/\/www.linkedin.com\/company\/adtek-growth-marketing-agency\/","https:\/\/www.tiktok.com\/@adtek.growth.marketing","https:\/\/www.google.com\/search?kgmid=\/g\/11x7pm71mh"],"email":"contact@adtek.agency","telephone":"+84932349434","legalName":"C\u00f4ng ty C\u1ed5 ph\u1ea7n Adtek Technology","foundingDate":"2022-05-05","description":"Adtek l\u00e0 growth marketing agency t\u1ea1i Vi\u1ec7t Nam, gi\u00fap th\u01b0\u01a1ng hi\u1ec7u t\u0103ng tr\u01b0\u1edfng t\u1eeb x\u00e2y d\u1ef1ng th\u01b0\u01a1ng hi\u1ec7u \u0111\u1ebfn doanh thu: Brand Commerce, qu\u1ea3ng c\u00e1o hi\u1ec7u su\u1ea5t, SEO v\u00e0 AI Search, d\u1eef li\u1ec7u v\u00e0 CRM, th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed.","taxID":"0317120810","address":{"@type":"PostalAddress","streetAddress":"146 Bis Nguy\u1ec5n V\u0103n Th\u1ee7","addressLocality":"Ph\u01b0\u1eddng T\u00e2n \u0110\u1ecbnh","addressRegion":"TP. H\u1ed3 Ch\u00ed Minh","addressCountry":"VN"}}]}},"_links":{"self":[{"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/pages\/8856","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/comments?post=8856"}],"version-history":[{"count":8,"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/pages\/8856\/revisions"}],"predecessor-version":[{"id":8908,"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/pages\/8856\/revisions\/8908"}],"up":[{"embeddable":true,"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/pages\/8855"}],"wp:attachment":[{"href":"https:\/\/adtek.agency\/en\/wp-json\/wp\/v2\/media?parent=8856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}