A claude.ai/public/artifacts/<uuid> URL is a single published Claude artifact. You get one by clicking Publish on an artifact in claude.ai. Anyone with the link can open and interact with it in a browser with no Claude account and no sign-up. The UUID is random, the page is hosted by Anthropic, and there is no gallery, no index page, and no public API for browsing them.
If you landed here searching the URL pattern itself, or trying site:claude.ai/public/artifacts in Google, you are probably after one of four things: what the link actually is, whether you can list everyone’s public artifacts, whether these pages are indexed, or why the link preview looks generic when you paste it into Slack. This post answers all four.
I checked every claim below against the live product and Anthropic’s own help docs on 6 August 2026. Where what I observed and what the docs say pull in different directions, I say so rather than smoothing it over.
What is a claude.ai/public/artifacts URL?
It is the permalink to one published artifact, in the form https://claude.ai/public/artifacts/ followed by a UUID, for example c517719a-898f-4fc8-8e83-33b2ba802bf8. The UUID is opaque and randomly assigned, so the URL tells you nothing about who made it or what it contains. The page renders the artifact in a browser and nothing else.
Publishing also files the artifact under the Artifacts section in your claude.ai sidebar, which is how you find it again outside the original conversation. Per Anthropic’s help docs, artifacts you create in a chat do not appear in that sidebar until you publish them.
Can you browse or search all public Claude artifacts?
No. There is no public directory, gallery, or browse page for published artifacts, and no API that lists them. Anthropic’s help documentation covers publishing, embedding and unpublishing but describes no discovery surface. The only way to reach a published artifact is for someone to give you its URL, because the UUID is unguessable.
This is worth stating plainly because a large share of the searches that reach this page are site:claude.ai/public/artifacts, inurl:claude.ai/public/artifacts and quoted variants. Those are people trying to enumerate what is out there. The site: operator does return results, but it only shows what Google happens to have crawled, which is a small and arbitrary slice, not a listing.
The Artifacts section in your own sidebar shows your artifacts, not other people’s.
Are published Claude artifacts indexed by Google?
Some are. As of August 2026 a site:claude.ai/public/artifacts search returns published artifacts with their real titles and descriptions, on topics from academic calendars to architecture diagrams. So these pages can and do reach Google’s index. claude.ai/robots.txt does not disallow /public/artifacts, so crawlers are free to fetch them.
Here is the part that does not line up, and I would rather flag it than pretend it is tidy. When I fetch a published artifact’s HTML directly, the response carries:
<meta name="robots" content="noindex, nofollow">
That was identical whether I sent a normal browser user-agent or Googlebot’s. So the raw HTML asks not to be indexed, while Google clearly has these pages indexed anyway. The likely reading is that the artifact page is client-rendered and the metadata is rewritten after the JavaScript runs, which a rendering crawler would see and a raw fetch would not. I cannot verify that from the outside, so treat it as the probable explanation rather than a fact.
The practical takeaway does not depend on resolving it: whether your published artifact gets indexed is Anthropic’s call, not a setting you control. There is no robots toggle, no canonical tag, and no sitemap you can submit. If search visibility matters to you, the artifact URL is the wrong home for the page. And when it does get indexed, it ranks under claude.ai, so the authority accrues to Anthropic’s domain rather than yours.
Why does my published artifact show a generic link preview?
Because the HTML that link previewers read carries placeholder metadata. Every published artifact I fetched returned the same tags regardless of what the artifact actually was:
<meta property="og:title" content="Claude Artifact">
<meta property="og:description" content="Try out Artifacts created by Claude users">
Slack, Discord, X, LinkedIn and iMessage all build their preview cards by reading raw HTML without executing JavaScript. So they all get “Claude Artifact / Try out Artifacts created by Claude users”, no matter whether you published a pricing calculator or a org chart. There is no field in Claude to override it.
If you are sharing a link in a channel where the preview card is doing the persuading, this is a real cost. It is also the single most common surprise people hit after publishing.
Is there an API for claude.ai/public/artifacts?
No public API is documented for fetching or listing published artifacts, and there is no working server-side route to the content either. Anthropic’s help docs describe the Publish button, the embed code and the Unpublish button, and nothing programmatic.
We traced this properly, because we maintain an importer that used to read these pages. The findings, all checked on 6 August 2026:
- The artifact source is not in the HTML. The page arrives as a constant 34,911-byte application shell and loads the artifact afterwards in the browser. Byte-identical across a plain user-agent, a full Chrome user-agent and Googlebot, so spoofing headers changes nothing.
- The shell boots an internal endpoint,
/api/frame/<uuid>, to fetch the artifact. That is closed two separate ways:claude.ai/robots.txtcarriesDisallow: /api/*, and Cloudflare returns a 403 challenge to any non-browser TLS fingerprint. - Every alternative route is a shell around that same gated endpoint. The
/embedvariant returns the identical shell,/code/artifact/<uuid>is a smaller frame that also calls/api/frame, the per-artifactframe.claudeusercontent.comorigin 404s without a signed token only that endpoint issues, and the legacyclaude.site/artifacts/<uuid>host just redirects back to claude.ai.
So this is not a case of finding the right endpoint. The content is reachable from a browser and nowhere else, by design. If you need the source, open the artifact, switch to the code view, and copy it. That is the supported route and the only reliable one.
Who can see a published artifact?
Anyone with the link. Per Anthropic’s docs, people without a Claude account can “view and interact with any published artifact without signing up”, and Claude users additionally get to copy it. There is no per-link password, no expiry date and no viewer list.
Note the wording difference between plans, because it changes who can reach your link:
| Plan | Action | Who can view |
|---|---|---|
| Free, Pro, Max | Publish | Anyone with the link, no account needed |
| Team, Enterprise | Share | Your organisation only, and viewers must be logged in |
So a Team or Enterprise “share” link is not a public/artifacts URL in the same sense. If you are on Team and wondering why an external client cannot open your link, that is why.
How do you unpublish a Claude artifact, and can you republish it?
You can unpublish, but it is one-way. Anthropic’s docs are explicit: “Once you unpublish an artifact, you cannot publish that same artifact again.” After publishing, an Unpublish button appears next to Publish and revokes access to the link.
This is the sharpest edge on the whole feature and it is easy to trip over. If you unpublish to make a quick edit, you do not get that artifact’s link back. You would have to copy the code into a new chat, produce a new artifact and publish that, which mints a new UUID. Every place the old link was pasted, in docs, emails, Slack threads or a client’s bookmarks, is now dead.
Related: the Remix button has been removed. To iterate on someone’s published artifact you copy the code into a new chat and ask Claude to change it.
Can you embed a published artifact on your own site?
Yes, with a restriction. After publishing, a “Get embed code” button appears and generates markup you can paste into another site. You must list which sites are allowed to embed it by entering URLs in the Allowed domains field, comma-separated.
The embed still loads from claude.ai, so the artifact remains hosted by Anthropic. You are placing a window onto their page inside yours, not moving the page.
What the artifact URL does not give you
The link is genuinely good at what it is for: showing someone a working thing in one click, for free, in seconds. It is not a hosting product, and these are the gaps that matter once you are past the prototype:
- It is not your domain. The URL is
claude.ai/...with a random UUID. You cannot map it to your own domain or pick a readable path. - Your metadata is not yours. Generic link previews, no control over the title, description, OG image or favicon.
- No analytics. No visitor counts, no referrers, nothing.
- Indexing is out of your hands, and any ranking it earns credits
claude.ai. - Unpublishing is permanent, so the link is not a durable address for anything you depend on.
- No server-side anything. No environment variables, no secrets, no backend, no database.
For a prototype you are showing a colleague this afternoon, none of that matters. For anything a customer sees, or anything you want to still work in a year, you want the artifact on infrastructure you control.
Getting an artifact onto your own domain
The dependable path today is to move the source: open the artifact, switch to the code view, copy the HTML or JSX, and deploy it wherever you normally deploy.
That is what we built the InstaPods Import page for. Its Pasted source tab takes the code you copied, picks the right preset (static for HTML, static with a React wrapper for JSX), and gives you a real server with SSL and a live URL on your own subdomain. Pods start at $3/mo, with $10 in credit when you add a card. You can point a custom domain at it afterwards.
One honest caveat, because I tested it while writing this. The Import page also has a URL tab that fetches the artifact from its link for you. That still works for a ChatGPT canvas, but not for a Claude artifact, for the reason above: since Claude moved artifacts to client-side rendering there is no server-side route to the source, so nothing we can do at our end brings it back. Whether it ever returns is Anthropic’s call, not ours, and I would rather say that than imply a fix is coming. The Pasted source tab works fine and is one extra copy-paste.
There is a longer walkthrough in how to deploy a Claude artifact as a real website, and if you want the full picture of what artifacts are and what they can render, start with what are Claude artifacts. If you are weighing Claude against OpenAI’s equivalent, we tested both in Claude artifacts vs ChatGPT canvas.
FAQ
What does a claude.ai/public/artifacts URL look like?
https://claude.ai/public/artifacts/ followed by a random UUID, for example https://claude.ai/public/artifacts/c517719a-898f-4fc8-8e83-33b2ba802bf8. The UUID is opaque and reveals nothing about the author or content.
Can I see a list of all public Claude artifacts?
No. Anthropic publishes no gallery, directory or listing API. A site:claude.ai/public/artifacts search shows only the arbitrary subset Google has crawled, not a complete list.
Do people need a Claude account to open my published artifact? No, on Free, Pro and Max. Anyone with the link can view and interact with it without signing up. Team and Enterprise “share” links are the exception: those are limited to your organisation and require the viewer to be logged in.
Why does my artifact link show “Claude Artifact” in Slack instead of the real title?
The page’s raw HTML carries placeholder Open Graph tags (og:title of “Claude Artifact”). Link previewers read HTML without running JavaScript, so they show the placeholder. You cannot override it from Claude.
Can I unpublish and republish the same artifact? You can unpublish, but you cannot republish that same artifact afterwards. You would need to copy the code into a new chat and publish the new artifact, which produces a different UUID and breaks the old link.
Is there an API to fetch a published artifact?
No documented public API exists, and claude.ai/robots.txt disallows /api/* to crawlers. The artifact source is also no longer in the page’s initial HTML, so scraping it is unreliable. Copy the source from the artifact’s code view instead.
Are published artifacts indexed by Google?
Some are: site:claude.ai/public/artifacts returns real published artifacts. But you cannot control it, and any ranking credits the claude.ai domain rather than yours.