How to detect Claude Artifacts websites
Interactive apps generated in Claude conversations
Claude Artifacts are interactive apps generated inside a Claude conversation and publishable to a shareable URL. Published artifacts live on Anthropic-controlled domains, which makes hosted detection trivial — but code copied out of an artifact and self-hosted requires pattern-level detection instead.
Technical fingerprints
- ✓
Hosted on claude.site or a claude.ai artifact URL - ✓
Single-page React app with all components in one file - ✓
Libraries loaded from CDN (cdnjs, unpkg, esm.sh) instead of bundled - ✓
Tailwind via CDN script tag rather than a build step - ✓
No build tooling markers — no Vite/webpack chunk names
Visual design patterns
- →Single-screen utility apps: calculators, dashboards, visualizers, games
- →Tailwind utility classes with inline React state logic
- →Recharts or D3 for data visualization
- →Lucide icons loaded from CDN
- →Indigo/violet default accent palette
Typical tech stack
Frequently asked questions
Can I detect artifact code that someone self-hosted?+
Partially. Tell-tale patterns include a single-file React structure, CDN-loaded dependencies instead of a bundler, and Tailwind included via script tag. These are weaker signals than a claude.site URL but combine into a meaningful score.
Are Claude Artifacts full websites?+
They're single-page interactive apps rather than multi-page sites — no server, no database (unless using Claude's runtime APIs), no routing. Most 'is this site vibe coded' questions involve platform tools like Lovable; artifacts show up for demos, tools and prototypes.
What about apps built with Claude Code instead?+
Claude Code is an agentic CLI that writes arbitrary codebases — like Cursor and Windsurf output, there's no hosting fingerprint, so detection falls back to scaffold statistics: default stacks, template leftovers and domain age.
Detect other platforms