Manifest position 530 · CrUX rank bucket 1000

https://www.tiktok.com

Coverage complete

Coverage-complete report-mode audit of four representative anonymous surfaces. Excluded authenticated feed creation/upload, checkout/commerce, live-stream interaction and account settings because they require credentials or materially distinct privileged state.

Attempts
1 / 3
Judged checks
58 / 58
Blocked
0
Not run
0
This report has no published overall score. Blocked and not-run checks are not passes. A coverage-complete report means every check has a judged outcome; it does not mean every check passed.

All 58 atomic check outcomes

Principle / checkStatusConfidenceEvidence or reason
respect-user-preferences
respects-color-scheme
passhighScreenshot comparison under dark preference shows the shell remains a coherent dark design.
respect-user-preferences
respects-reduced-motion
issueshighThe reduced-motion evaluate probe found six ~531ms document animations, including running animations, while matchMedia(prefers-reduced-motion: reduce) was true.
F01 medium: Motion continues when reduced motion is requested
respect-user-preferences
respects-contrast
passhighHigh-contrast emulation screenshot retains visible feed, controls and text.
implement-natural-interactions
view-transitions
issueshighThe rendered DOM probe found no startViewTransition usage; navigation between feed and Explore swaps state without a documented transition treatment.
F02 low: Route and state changes do not use View Transitions
implement-natural-interactions
scroll-driven-animations
not-applicablehighNo authored parallax, reveal or other scroll-linked animation was present on the representative surfaces; native feed scrolling was tested instead.
implement-natural-interactions
physical-gestures
passhighFeed and Explore use native vertical scrolling and the sampled media is not autoplaying at probe time.
provide-guided-navigation
scroll-state-aware-chrome
passhighPersistent side navigation identifies For You/Explore and stays available while feed content scrolls.
provide-guided-navigation
anchored-positioning
issueshighOpening More produced a DIV role=dialog at x=220/y=84 and the stylesheet probe found zero anchor-name, position-anchor or position-try rules.
F03 low: The More overlay is manually positioned rather than anchored
provide-guided-navigation
directs-attention
passhighExplore selection, content-first feed paging and labeled navigation controls provide clear current-state cues.
maximize-content-reduce-noise
no-intrusive-interruptions
issueshighDesktop, Explore, login and 404 screenshots show a 200px cookie panel covering roughly the lower 40% of the 493px viewport before interaction.
F04 medium: Cookie consent obscures a large share of every first view
maximize-content-reduce-noise
semantic-dismissible-primitives
issueshighThe initial DOM contained no dialog, popover or details elements; the More menu opened as a DIV role=dialog and the cookie banner is a custom shadow-DOM element.
F05 medium: Overlays use custom elements and ad-hoc dialog roles
maximize-content-reduce-noise
reduced-chrome
passhighAfter consent dismissal the feed dedicates most of the viewport to the current video, with compact side actions.
adapt-to-the-form-factor
responsive-no-horizontal-scroll
issueshighAt a 360px visual viewport, the layout primitive measured 492px content width and 132px horizontal overflow. The screenshot visibly clips the video and caption.
F06 high: The mobile layout overflows horizontally
adapt-to-the-form-factor
component-level-responsiveness
issueshighThe CSSOM probe found zero @container rules while the same shell presents feed cards and a three-column Explore grid in different available widths.
F07 low: Reusable feed and listing components show no container-query adaptation
adapt-to-the-form-factor
input-modality-aware
issueshighThe focus probe reported outline-style none and no box-shadow for every sampled control; navigation buttons are 40x40px and several links are only 16-23px high.
F08 high: Keyboard focus is not visibly indicated and several controls are undersized
support-core-task-success
clear-purpose-and-primary-action
passhighFor You immediately presents a video feed; Explore presents topical cards; login clearly labels its purpose and methods.
support-core-task-success
primary-flow-completion
passhighAnonymous users can consume the feed, navigate to Explore and open login choices without a forced account wall.
support-core-task-success
clear-system-state-and-recovery
passhighThe unknown-route test renders a branded 404 state with global search/login navigation instead of a blank shell.
be-fast-and-stable
good-core-web-vitals
issueshighLighthouse measured LCP 22.3s, FCP 12.0s, TBT 1,394ms and performance 0.30; the independent trace measured LCP 4.64s and TBT 2.55s.
F09 critical: Loading performance is far outside the good range
be-fast-and-stable
visual-stability
passhighThe mobile layout observer measured CLS 0.0186, within the good threshold despite later shifts.
be-fast-and-stable
efficient-main-thread
issueshighThe trace found nine long tasks, including one 2,410ms task, for 2,555ms total blocking time; Lighthouse TBT was 1,394ms.
F10 high: Startup JavaScript blocks the main thread
be-fast-and-stable
efficient-resource-delivery
issueshighThe HAR recorded 362 requests and 8.83MB transferred; 214 scripts account for 6.31MB, with parser-inserted non-deferred scripts confirmed in the DOM probe.
F11 high: The dependency graph is extremely large and delays content
be-fast-and-stable
trim-unused-and-duplicate-code
issueshighThe HAR recorded 214 scripts and 6.31MB script transfer, including multiple monitoring plugin versions and login chunks on the unauthenticated feed.
F12 high: Script volume dominates the page before user intent
be-inclusive
names-roles-labels
issueshighLighthouse found unnamed buttons and links, unlabeled password inputs and images without alt; the agent accessibility tree audit also failed.
F13 high: Controls, links, images and inputs lack accessible names
be-inclusive
sufficient-contrast
issueshighLighthouse found 3.0:1 white-on-cyan cookie text and 3.68:1 white-on-pink Open TikTok text, below the required 4.5:1.
F14 high: Text and primary controls fail WCAG contrast
be-inclusive
structure-and-focus
issueshighThe homepage has no H1, Lighthouse found skipped heading order, and the focus probe showed outline-style none on all sampled keyboard targets.
F15 high: Heading structure and focus presentation are not robust
be-inclusive
legible-text
passhighScreenshots show readable feed captions, topic labels and login choices with adequate line lengths; contrast exceptions are separately recorded.
be-inclusive
zoom-reflow-targets-and-media
issueshighThe 360px layout has 132px horizontal overflow; sampled navigation targets are 40x40px and text links as little as 16px high.
F16 medium: Reflow and target sizing fail on narrow screens
follow-best-practices
no-console-errors
issueshighLighthouse failed errors-in-console, including a 400 API request and repeated CSP policy warnings.
F17 medium: The page emits runtime and network console errors
follow-best-practices
sound-document-and-assets
issueshighThe images primitive found all four sampled images missing width and height attributes, two oversized avatars and two legacy-format resources.
F18 medium: Image markup does not reserve stable dimensions
follow-best-practices
browser-platform-hygiene
issueshighLighthouse found unload listeners, deprecated Shared Storage use, and six BFCache blockers including unload, no-store and WebSocket conditions.
F19 medium: Deprecated APIs and BFCache blockers remain
be-discoverable
title-and-description
issueshighThe rendered metadata probe found a title but no meta description; discoverability confirmed the description is absent in raw HTML.
F20 medium: The public homepage has no meta description
be-discoverable
crawlable-and-mobile-friendly
issueshighLighthouse failed crawlable-anchors for a Learn more anchor without href and link-name for an unlabeled search link.
F21 medium: Some links are unnamed or not crawlable
be-discoverable
canonical-and-indexing-signals
issueshighLighthouse found no valid rel=canonical; /sitemap.xml returned Not Found, while robots.txt defines a selective crawl policy.
F22 medium: Canonical and sitemap signals are incomplete
be-discoverable
structured-and-shareable-metadata
issueshighThe DOM probe found zero JSON-LD blocks and no Open Graph metadata on the public homepage.
F23 medium: The homepage lacks entity and share-preview metadata
be-private-and-secure
secure-transport-and-headers
issueshighHeaders show HTTPS/HSTS but CSP allows unsafe-inline and unsafe-eval; the cookie audit found nine cookies flagged insecure and msToken without Secure/HttpOnly using SameSite=None.
F24 high: Cookie and CSP posture has avoidable weaknesses
be-private-and-secure
data-minimisation-and-third-parties
issueshighThe tracker probe found 16 third-party origins; the HAR attributed 329 requests and 8.59MB to third-party origins, including monitoring domains, before account interaction.
F25 high: The initial anonymous load has a very large telemetry and third-party footprint
be-private-and-secure
in-context-permissions-and-modern-auth
issueshighThe login probe offers QR, phone/email/username, Facebook, Google and Apple; neither rendered markup nor the DOM contained passkey/WebAuthn signals.
F26 medium: The login entry exposes no phishing-resistant passkey option
be-private-and-secure
defensive-browser-policies
issueshighPermissions-Policy is missing and CSP permits unsafe-inline/unsafe-eval; Lighthouse also reported third-party cookie and CSP inspector issues.
F27 medium: Defensive browser policy coverage is incomplete
be-resilient
progressive-enhancement
issueshighDiscoverability measured only 3% raw/rendered word coverage and classified the page as a JS shell; the crawler screenshot is effectively blank while the browser screenshot contains the feed.
F28 high: Core feed content is unavailable without JavaScript
be-resilient
resilient-runtime-behaviour
passhighThe More menu opened within the viewport and the feed remained usable after repeated scrolling.
be-resilient
offline-and-installable
passhighA scoped active service worker and installable manifest with name, icons, start_url and display mode were directly observed.
be-resilient
network-and-http-failure-states
passhighA deliberately unknown route produced a branded 404 recovery surface with search and login navigation.
be-internationalised
lang-dir-and-logical-properties
passhighRendered documents declare en/en-GB and ltr, and login exposes a broad language selector including RTL languages.
be-internationalised
locale-aware-data
passhighThe session rendered en-GB locale selection and region-aware content; no malformed locale-sensitive numeric/date formatting was observed.
be-internationalised
time-zone-correctness
not-applicablehighNo event, timestamp editing or other time-zone-sensitive value appeared on the audited anonymous surfaces.
be-trustworthy
no-dark-patterns
passhighConsent presents equally prominent Decline optional cookies and Allow all controls; login terms and privacy links are visible.
be-trustworthy
humane-error-handling
not-applicablehighThe audited unauthenticated login entry rendered method-choice and federated controls but no editable authored form on which validation behavior could be exercised.
be-trustworthy
trustworthy-input-assistance
issueshighLighthouse found four password inputs without labels; the markup snippets expose no autocomplete token, placeholder or accessible name.
F29 medium: Hidden sign-in inputs lack basic input semantics
be-trustworthy
safe-commercial-and-account-flows
issueshighThe public login entry offers QR, phone/email/username and federated providers but no passkey or WebAuthn path.
F30 medium: Account access relies on legacy/federated choices without passkey management
be-sustainable
optimised-assets
issueshighTwo of four sampled images are oversized, all lack width/height and two use legacy formats; one below-fold image lacks lazy loading.
F31 medium: Image delivery wastes bytes and omits intrinsic metadata
be-sustainable
no-wasteful-work
issueshighThe initial load makes 362 requests including 89 fetch/XHR requests and multiple monitoring endpoints; trace TBT is 2.55s.
F32 high: Anonymous startup performs excessive background work
be-sustainable
third-party-and-media-budget
issueshighThird parties account for 329 requests and 8.59MB of 8.83MB transferred; scripts alone are 6.31MB and fonts 643KB.
F33 high: Third-party code dominates the resource budget
be-agent-ready
structured-agent-capabilities
not-applicablehighAgent-facing capabilities are emerging and no developer intent to expose TikTok actions to agents was declared; absence is not penalised.
be-agent-ready
on-device-inference
not-applicablehighNo summarisation or language-model task was part of the audited anonymous journeys, so on-device inference is not applicable.
be-memory-efficient
no-leak-under-repeated-interaction
passhighAfter ten feed scroll-down/up cycles, heap self size changed from 100.06MB to 100.87MB while node count fell from 1,765,634 to 1,753,945; no monotonic retained growth is established.
be-memory-efficient
bounded-footprint
issueshighThe baseline heap summary contains 1,765,634 nodes/records and 100.1MB self size, including 492,545 code entries and 164,467 closures for one visible feed card.
F34 medium: The initial heap footprint is disproportionate to the visible feed
be-memory-efficient
no-detached-dom-or-unbounded-listeners
passhighAfter repeated scrolling, live DOM nodes fell from 764 to 706 and heap node count fell; Detached constructors did not appear among the largest baseline/post constructors.

Provenance

Canonical report: results/atomic/reports/0530-www_tiktok_com.json
Report SHA-256: 215f7d2e9d5865e3e5c35af862eb11abbb9d245b0c2bd078f7b8d2efcd48fa12
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_tiktok_com/2026-07-21T09-37-58-184Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_tiktok_com/2026-07-21T09-37-58-184Z
Catalog SHA-256: sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7

Raw screenshots, HARs, traces, heaps, and other browser artifacts are retained at the local evidence root and intentionally are not committed. Artifact paths in the canonical report are relative to that root.