SEO audit for 9j6.net
集网 - 互联网有趣好玩的东西南北
Health 66/100 (fair) · 50 pages crawled · generated 2026-08-26
Download Markdown report (feed to ChatGPT / Claude / Cursor)集网,分享互联网有趣好玩的东西南北!就爱分享一些零零碎碎的福利,发现一些七七八八的资源,搜集一些稀奇古怪的网站,收藏一些一文不值的宝贝,折腾一些有用没用的教程,广交一些胡吃海喝的朋友!
| Category | Score | Errors | Warnings | Notices |
|---|---|---|---|---|
| Content | 71 | 0 | 49 | 0 |
| Performance | 71 | 0 | 49 | 98 |
| Security | 71 | 0 | 49 | 49 |
| Canonical | 99 | 0 | 1 | 10 |
| Agent Readiness | 100 | 0 | 0 | 50 |
| Duplicate | 100 | 0 | 0 | 23 |
| Images | 100 | 0 | 0 | 49 |
| Meta Description | 100 | 0 | 0 | 1 |
| Social | 100 | 0 | 0 | 25 |
| Structured Data | 100 | 0 | 0 | 49 |
| URL | 100 | 0 | 0 | 22 |
Warnings (4 rules)
warning Interior page canonicalizes to the homepage
Rule canonical.points_to_homepage · Canonical · 1 occurrence(s)
- https://www.9j6.net/page/2/ — this interior page canonicalizes to the homepage (https://www.9j6.net/) — Google will treat the homepage as authoritative and drop this page from search. Point the canonical at the page's own URL.
warning Thin content (low word count)
Rule content.thin · Content · 49 occurrence(s)
- https://www.9j6.net/ — 141 words
- https://www.9j6.net/about/ — 30 words
- https://www.9j6.net/categories/ — 91 words
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — 146 words
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — 188 words
- https://www.9j6.net/fun/ — 137 words
- https://www.9j6.net/fun/www-keke2-app/ — 127 words
- https://www.9j6.net/life/ — 143 words
- https://www.9j6.net/life/hellocalc-com/ — 133 words
- https://www.9j6.net/life/page/2/ — 131 words
- https://www.9j6.net/manage/ — 135 words
- https://www.9j6.net/manage/we-h12345-com/ — 129 words
- https://www.9j6.net/media/ — 135 words
- https://www.9j6.net/media/page/2/ — 158 words
- https://www.9j6.net/media/www-2ppt-com/ — 127 words
- https://www.9j6.net/page/2/ — 136 words
- https://www.9j6.net/read/ — 140 words
- https://www.9j6.net/read/plan-zygwy-cn/ — 129 words
- https://www.9j6.net/tags/ — 101 words
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — 175 words
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — 162 words
- https://www.9j6.net/tags/page/2/ — 102 words
- https://www.9j6.net/tech/ — 147 words
- https://www.9j6.net/tech/page/2/ — 189 words
- https://www.9j6.net/tech/peetzweg-opendisplay/ — 123 words
warning Content-Type header doesn't match the actual content
Rule headers.content_type_mismatch · Security · 49 occurrence(s)
- https://www.9j6.net/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/about/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/categories/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/fun/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/fun/www-keke2-app/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/life/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/life/hellocalc-com/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/life/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/manage/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/manage/we-h12345-com/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/media/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/media/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/media/www-2ppt-com/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/read/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/read/plan-zygwy-cn/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tags/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tags/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tech/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tech/page/2/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://www.9j6.net/tech/peetzweg-opendisplay/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
warning Render-blocking script in <head> (no defer/async)
Rule perf.render_blocking · Performance · 49 occurrence(s)
- https://www.9j6.net/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/about/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/categories/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/fun/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/fun/www-keke2-app/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/life/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/life/hellocalc-com/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/life/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/manage/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/manage/we-h12345-com/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/media/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/media/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/media/www-2ppt-com/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/read/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/read/plan-zygwy-cn/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tags/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tags/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tech/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tech/page/2/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
- https://www.9j6.net/tech/peetzweg-opendisplay/ — 1 render-blocking <script> in <head> (add defer/async or use type=module)
Notices (12 rules)
notice Heading levels skip a level
Rule agent.heading_skip · Agent Readiness · 49 occurrence(s)
- https://www.9j6.net/ — h4 follows h2 — skips h3
- https://www.9j6.net/about/ — h5 follows h1 — skips h2
- https://www.9j6.net/categories/ — h4 follows h2 — skips h3
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — h4 follows h2 — skips h3
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/fun/ — h4 follows h2 — skips h3
- https://www.9j6.net/fun/www-keke2-app/ — h5 follows h1 — skips h2
- https://www.9j6.net/life/ — h4 follows h2 — skips h3
- https://www.9j6.net/life/hellocalc-com/ — h5 follows h1 — skips h2
- https://www.9j6.net/life/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/manage/ — h4 follows h2 — skips h3
- https://www.9j6.net/manage/we-h12345-com/ — h5 follows h1 — skips h2
- https://www.9j6.net/media/ — h4 follows h2 — skips h3
- https://www.9j6.net/media/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/media/www-2ppt-com/ — h5 follows h1 — skips h2
- https://www.9j6.net/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/read/ — h4 follows h2 — skips h3
- https://www.9j6.net/read/plan-zygwy-cn/ — h5 follows h1 — skips h2
- https://www.9j6.net/tags/ — h4 follows h2 — skips h3
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — h4 follows h2 — skips h3
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/tags/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/tech/ — h4 follows h2 — skips h3
- https://www.9j6.net/tech/page/2/ — h4 follows h2 — skips h3
- https://www.9j6.net/tech/peetzweg-opendisplay/ — h4 follows h1 — skips h2
notice No llms.txt for AI agents
Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)
- https://www.9j6.net/ — no llms.txt found at the site root — add one so AI agents get a curated site summary
notice Canonical points to a different URL
Rule canonical.non_self · Canonical · 10 occurrence(s)
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — canonical=https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/
- https://www.9j6.net/fun/page/2/ — canonical=https://www.9j6.net/fun/
- https://www.9j6.net/life/page/2/ — canonical=https://www.9j6.net/life/
- https://www.9j6.net/manage/page/2/ — canonical=https://www.9j6.net/manage/
- https://www.9j6.net/media/page/2/ — canonical=https://www.9j6.net/media/
- https://www.9j6.net/page/2/ — canonical=https://www.9j6.net/
- https://www.9j6.net/read/page/2/ — canonical=https://www.9j6.net/read/
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — canonical=https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/
- https://www.9j6.net/tags/page/2/ — canonical=https://www.9j6.net/tags/
- https://www.9j6.net/tech/page/2/ — canonical=https://www.9j6.net/tech/
notice Duplicate meta description across pages
Rule duplicate.meta_desc · Duplicate · 23 occurrence(s)
- https://www.9j6.net/ — meta description shared by 23 pages: https://www.9j6.net/categories/, https://www.9j6.net/tags/, https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/
- https://www.9j6.net/categories/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/tags/, https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/
- https://www.9j6.net/categories/%E5%AA%92%E4%BD%93%E8%BF%90%E8%90%A5/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/categories/%E7%94%9F%E6%B4%BB%E5%AE%9E%E7%94%A8/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/categories/%E9%98%85%E8%AF%BB%E5%AD%A6%E4%B9%A0/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/
- https://www.9j6.net/tags/%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E5%9B%BE%E7%89%87%E5%A4%84%E7%90%86/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E5%AD%A6%E4%B9%A0%E5%B7%A5%E5%85%B7/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E5%AE%9E%E7%94%A8%E6%8A%80%E5%B7%A7/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E6%95%88%E7%8E%87%E6%8F%92%E4%BB%B6/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E6%96%87%E5%AD%97%E5%8A%9E%E5%85%AC/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E6%96%87%E6%A1%A3%E5%8F%82%E8%80%83/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E6%B8%85%E5%8D%95%E5%88%97%E8%A1%A8/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E7%94%B5%E8%84%91%E8%BD%AF%E4%BB%B6/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E7%BD%91%E7%AB%99%E5%AF%BC%E8%88%AA/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E7%BF%BB%E8%AF%91%E5%B7%A5%E5%85%B7/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E8%80%83%E5%85%AC%E4%B8%8A%E5%B2%B8/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E8%8B%B9%E6%9E%9C%E8%BD%AF%E4%BB%B6/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E8%AE%BE%E5%A4%87%E8%BF%90%E7%BB%B4/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E8%B4%A2%E7%A8%8E%E6%B3%95%E5%8A%A1/ — meta description shared by 23 pages: https://www.9j6.net/, https://www.9j6.net/categories/, https://www.9j6.net/tags/
notice Likely hero image lacks fetchpriority=high
Rule images.hero_no_fetchpriority · Performance · 49 occurrence(s)
- https://www.9j6.net/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/about/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/categories/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/fun/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/fun/www-keke2-app/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/life/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/life/hellocalc-com/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/life/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/manage/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/manage/we-h12345-com/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/media/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/media/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/media/www-2ppt-com/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/read/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/read/plan-zygwy-cn/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tags/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tags/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tech/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tech/page/2/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
- https://www.9j6.net/tech/peetzweg-opendisplay/ — the likely hero/LCP image (placeholder.png) has no fetchpriority="high" — adding it tells the browser to fetch the hero earlier in the waterfall, reducing Largest Contentful Paint. This is a low-severity nudge; verify the flagged image is actually your LCP element.
notice Images without width/height (layout shift / CLS)
Rule images.missing_dimensions · Images · 49 occurrence(s)
- https://www.9j6.net/ — 11 of 11 images without width/height
- https://www.9j6.net/about/ — 1 of 1 images without width/height
- https://www.9j6.net/categories/ — 1 of 1 images without width/height
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — 11 of 11 images without width/height
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — 11 of 11 images without width/height
- https://www.9j6.net/fun/ — 11 of 11 images without width/height
- https://www.9j6.net/fun/www-keke2-app/ — 2 of 2 images without width/height
- https://www.9j6.net/life/ — 11 of 11 images without width/height
- https://www.9j6.net/life/hellocalc-com/ — 2 of 2 images without width/height
- https://www.9j6.net/life/page/2/ — 11 of 11 images without width/height
- https://www.9j6.net/manage/ — 11 of 11 images without width/height
- https://www.9j6.net/manage/we-h12345-com/ — 2 of 2 images without width/height
- https://www.9j6.net/media/ — 11 of 11 images without width/height
- https://www.9j6.net/media/page/2/ — 11 of 11 images without width/height
- https://www.9j6.net/media/www-2ppt-com/ — 2 of 2 images without width/height
- https://www.9j6.net/page/2/ — 11 of 11 images without width/height
- https://www.9j6.net/read/ — 11 of 11 images without width/height
- https://www.9j6.net/read/plan-zygwy-cn/ — 2 of 2 images without width/height
- https://www.9j6.net/tags/ — 1 of 1 images without width/height
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — 11 of 11 images without width/height
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — 11 of 11 images without width/height
- https://www.9j6.net/tags/page/2/ — 1 of 1 images without width/height
- https://www.9j6.net/tech/ — 11 of 11 images without width/height
- https://www.9j6.net/tech/page/2/ — 11 of 11 images without width/height
- https://www.9j6.net/tech/peetzweg-opendisplay/ — 2 of 2 images without width/height
notice Meta description too long
Rule meta_desc.too_long · Meta Description · 1 occurrence(s)
- https://www.9j6.net/tech/peetzweg-opendisplay/ — 163 chars
notice Missing Open Graph tags
Rule og.missing · Social · 25 occurrence(s)
- https://www.9j6.net/categories/ — og:image
- https://www.9j6.net/categories/%E5%AA%92%E4%BD%93%E8%BF%90%E8%90%A5/ — og:image
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — og:image
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — og:image
- https://www.9j6.net/categories/%E7%94%9F%E6%B4%BB%E5%AE%9E%E7%94%A8/ — og:image
- https://www.9j6.net/categories/%E9%98%85%E8%AF%BB%E5%AD%A6%E4%B9%A0/ — og:image
- https://www.9j6.net/tags/ — og:image
- https://www.9j6.net/tags/%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86/ — og:image
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — og:image
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — og:image
- https://www.9j6.net/tags/%E5%9B%BE%E7%89%87%E5%A4%84%E7%90%86/ — og:image
- https://www.9j6.net/tags/%E5%AD%A6%E4%B9%A0%E5%B7%A5%E5%85%B7/ — og:image
- https://www.9j6.net/tags/%E5%AE%9E%E7%94%A8%E6%8A%80%E5%B7%A7/ — og:image
- https://www.9j6.net/tags/%E6%95%88%E7%8E%87%E6%8F%92%E4%BB%B6/ — og:image
- https://www.9j6.net/tags/%E6%96%87%E5%AD%97%E5%8A%9E%E5%85%AC/ — og:image
- https://www.9j6.net/tags/%E6%96%87%E6%A1%A3%E5%8F%82%E8%80%83/ — og:image
- https://www.9j6.net/tags/%E6%B8%85%E5%8D%95%E5%88%97%E8%A1%A8/ — og:image
- https://www.9j6.net/tags/%E7%94%B5%E8%84%91%E8%BD%AF%E4%BB%B6/ — og:image
- https://www.9j6.net/tags/%E7%BD%91%E7%AB%99%E5%AF%BC%E8%88%AA/ — og:image
- https://www.9j6.net/tags/%E7%BF%BB%E8%AF%91%E5%B7%A5%E5%85%B7/ — og:image
- https://www.9j6.net/tags/%E8%80%83%E5%85%AC%E4%B8%8A%E5%B2%B8/ — og:image
- https://www.9j6.net/tags/%E8%8B%B9%E6%9E%9C%E8%BD%AF%E4%BB%B6/ — og:image
- https://www.9j6.net/tags/%E8%AE%BE%E5%A4%87%E8%BF%90%E7%BB%B4/ — og:image
- https://www.9j6.net/tags/%E8%B4%A2%E7%A8%8E%E6%B3%95%E5%8A%A1/ — og:image
- https://www.9j6.net/tags/page/2/ — og:image
notice Legacy image format (jpg/png/gif) with no next-gen fallback
Rule perf.images_legacy_format · Performance · 49 occurrence(s)
- https://www.9j6.net/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/about/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/categories/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/fun/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/fun/www-keke2-app/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/life/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/life/hellocalc-com/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/life/page/2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/manage/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/manage/we-h12345-com/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/media/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/media/page/2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/media/www-2ppt-com/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/page/2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/read/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/read/plan-zygwy-cn/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tags/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tags/page/2/ — 1 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tech/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tech/page/2/ — 11 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
- https://www.9j6.net/tech/peetzweg-opendisplay/ — 2 image(s) use a legacy format (jpg/png/gif) with no next-gen <picture> fallback. Serve WebP or AVIF (with a <picture> typed <source>) to cut image transfer weight and improve LCP.
notice No structured data detected
Rule schema.none · Structured Data · 49 occurrence(s)
- https://www.9j6.net/
- https://www.9j6.net/about/
- https://www.9j6.net/categories/
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/
- https://www.9j6.net/fun/
- https://www.9j6.net/fun/www-keke2-app/
- https://www.9j6.net/life/
- https://www.9j6.net/life/hellocalc-com/
- https://www.9j6.net/life/page/2/
- https://www.9j6.net/manage/
- https://www.9j6.net/manage/we-h12345-com/
- https://www.9j6.net/media/
- https://www.9j6.net/media/page/2/
- https://www.9j6.net/media/www-2ppt-com/
- https://www.9j6.net/page/2/
- https://www.9j6.net/read/
- https://www.9j6.net/read/plan-zygwy-cn/
- https://www.9j6.net/tags/
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/
- https://www.9j6.net/tags/page/2/
- https://www.9j6.net/tech/
- https://www.9j6.net/tech/page/2/
- https://www.9j6.net/tech/peetzweg-opendisplay/
notice Missing recommended security headers
Rule security.missing_headers · Security · 49 occurrence(s)
- https://www.9j6.net/ — CSP, X-Content-Type-Options, HSTS
- https://www.9j6.net/about/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/categories/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/fun/ — X-Content-Type-Options, HSTS, CSP
- https://www.9j6.net/fun/www-keke2-app/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/life/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/life/hellocalc-com/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/life/page/2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/manage/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/manage/we-h12345-com/ — CSP, X-Content-Type-Options, HSTS
- https://www.9j6.net/media/ — X-Content-Type-Options, HSTS, CSP
- https://www.9j6.net/media/page/2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/media/www-2ppt-com/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/page/2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/read/ — X-Content-Type-Options, HSTS, CSP
- https://www.9j6.net/read/plan-zygwy-cn/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/tags/ — CSP, X-Content-Type-Options, HSTS
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/ — X-Content-Type-Options, HSTS, CSP
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/tags/page/2/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/tech/ — HSTS, CSP, X-Content-Type-Options
- https://www.9j6.net/tech/page/2/ — X-Content-Type-Options, HSTS, CSP
- https://www.9j6.net/tech/peetzweg-opendisplay/ — X-Content-Type-Options, HSTS, CSP
notice Non-ASCII characters in URL path
Rule url.non_ascii · URL · 22 occurrence(s)
- https://www.9j6.net/categories/%E5%AA%92%E4%BD%93%E8%BF%90%E8%90%A5/
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/
- https://www.9j6.net/categories/%E6%8A%80%E6%9C%AF%E6%9E%81%E5%AE%A2/page/2/
- https://www.9j6.net/categories/%E7%94%9F%E6%B4%BB%E5%AE%9E%E7%94%A8/
- https://www.9j6.net/categories/%E9%98%85%E8%AF%BB%E5%AD%A6%E4%B9%A0/
- https://www.9j6.net/tags/%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86/
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/
- https://www.9j6.net/tags/%E4%BB%A3%E7%A0%81%E5%BC%80%E6%BA%90/page/2/
- https://www.9j6.net/tags/%E5%9B%BE%E7%89%87%E5%A4%84%E7%90%86/
- https://www.9j6.net/tags/%E5%AD%A6%E4%B9%A0%E5%B7%A5%E5%85%B7/
- https://www.9j6.net/tags/%E5%AE%9E%E7%94%A8%E6%8A%80%E5%B7%A7/
- https://www.9j6.net/tags/%E6%95%88%E7%8E%87%E6%8F%92%E4%BB%B6/
- https://www.9j6.net/tags/%E6%96%87%E5%AD%97%E5%8A%9E%E5%85%AC/
- https://www.9j6.net/tags/%E6%96%87%E6%A1%A3%E5%8F%82%E8%80%83/
- https://www.9j6.net/tags/%E6%B8%85%E5%8D%95%E5%88%97%E8%A1%A8/
- https://www.9j6.net/tags/%E7%94%B5%E8%84%91%E8%BD%AF%E4%BB%B6/
- https://www.9j6.net/tags/%E7%BD%91%E7%AB%99%E5%AF%BC%E8%88%AA/
- https://www.9j6.net/tags/%E7%BF%BB%E8%AF%91%E5%B7%A5%E5%85%B7/
- https://www.9j6.net/tags/%E8%80%83%E5%85%AC%E4%B8%8A%E5%B2%B8/
- https://www.9j6.net/tags/%E8%8B%B9%E6%9E%9C%E8%BD%AF%E4%BB%B6/
- https://www.9j6.net/tags/%E8%AE%BE%E5%A4%87%E8%BF%90%E7%BB%B4/
- https://www.9j6.net/tags/%E8%B4%A2%E7%A8%8E%E6%B3%95%E5%8A%A1/
Audit your own site — free
157 checks, internal PageRank, render-diff. No signup, results in ~30s.