Skip to content

Website errors and troubleshooting

Every error a website can show you or its visitors, and how to fix it.

Common problems

ProblemWhat to do
My change isn’t showingCheck you went live, not previewed: benchy site get, or Versions on the website’s page, shows what is live. A stylesheet or script without a fingerprint in its name can be cached for 5 minutes; see Caching. A content change shows within seconds unless the page keeps its own copy of /_benchy/content/<collection>.json
Reloading a page in my app shows Page not foundThe address has no file of its own. Build each route to its own page, or route after a #; see App routing
“This key cannot publish this website. Use a key that can publish websites, or one limited to this website.”The key only reads, is limited to another website, or belongs to another workspace. Make a Publish websites key for this website; see Who can publish
My domain stays on Waiting for DNSCreate the records where the domain’s DNS is actually run. If your provider appends the domain to record names, enter www and _benchy-challenge.www. Copy the TXT value with its button. New records can take an hour; Check now looks again within 2 minutes
My website isn’t on GoogleA Free workspace’s website stays out of search for 14 days after its name is reserved. A live version published hidden from search keeps the website out until you go live with one that isn’t. See Search engines
A dev server in Desktop fails at start-upDev servers can’t reach the internet, so a font or API fetched at start-up fails; the log in the page viewer says what. Load it from the page, or run the server in Terminal
The camera or location doesn’t workWebsites can’t use the camera, microphone or location; see What Benchy sends with every page

Publishing a canvas

These show under Not published in the canvas’s publish dialog, or come back to the agent that tried. A refused publish never changes what is live.

MessageWhat it meansWhat to do
Add a Page or anything else to this canvas first.The canvas is empty, so there is nothing to publishAdd a Page, then publish
You can view this workspace's websites but not publish to them.Your role in the workspace is Can viewAsk the workspace’s Owner for Can edit
Only the canvas's owner can publish it as a website.Someone else owns this canvasAsk the canvas’s owner to publish it
That canvas is in a different workspace from this website.A canvas publishes only to a website in its own workspacePick a website in the canvas’s workspace, or choose New website
This website is offline, so a preview would not open. Go live to put it back online.An offline website takes no preview, because the preview wouldn’t open eitherChoose Go live, or Put back online on the website’s page, then preview
Website … has no project yet, and a canvas is published into a project. …The website was made without a project, and a canvas publish needs onePublish to a website that has a project, or choose New website. An agent names a project you can edit in this workspace
Website … already publishes another project. …A website publishes one project, and this canvas is in anotherChoose another website for this canvas, or New website
A key that can only publish websites cannot publish a canvas. Use a key with Canvas access.The agent’s key has Publish websites access, which reaches no canvasUse a key with Canvas access. See Who can publish
Your latest changes haven't saved yet. Try again in a moment.The canvas was still saving when you pressedWait a moment and publish again
There was an issue publishing this canvas. If it keeps happening, let us know.The publish didn’t finish. Nothing live changedPublish again
Couldn't make the project “…” for this canvas. Try again.A canvas outside any project gets a project of its own when it first publishes, and making it failedPublish again
An image or video on this canvas is larger than a website may hold.One file is over the 25 MiB a website file may beReplace it with a smaller file, or host long video elsewhere and link to it
An image or video on this canvas could not be read. Try again.Benchy couldn’t fetch the file just thenPublish again
An image or video on this canvas is not in its own library. Replace it, then publish again.The canvas points at a file it doesn’t holdReplace the image or video with an upload, then publish
An image or video on this canvas is not ready. Try again once it has uploaded.A file is still uploadingWait for the upload, then publish
This canvas cannot be published yet: …The rest of the sentence names what stops itFix what it names, then publish
This canvas is too large to publish from here (…). Publish it from the editor.An agent tried to publish a canvas too large for the agent routeOpen the canvas in Studio and publish it from there
Published. A newer version is live at …Someone went live after you started. The one started last stays live; yours is kept as a versionTo show yours instead, choose Restore on it under Versions on the website’s page

Notes after a canvas publish

After a publish, the dialog lists what the website shows differently from the canvas, or what a visitor or search engine will miss. None of them stops the publish. “…” is the page it is about.

NoteWhat to do
A 3D model shows as a still box on a website; it is interactive on an Instant link.Replace it with an image or a video, or publish an Instant link instead
A form takes entries only on a website.Shown for an Instant link, where a form takes no entries. To take them, choose Publish, then Website
A file at … is not part of this website: replace it with an upload.Upload the file to the canvas and use the upload
… has no Heading 1: give one text layer that Website role.Select the page’s main heading and give it the Heading 1 role under Website
… has … Heading 1s; one page states one thing.Keep one Heading 1 per page and make the others smaller headings
… has no title: set Site title in Website settings.Fill in Site title under Website settings in the publish dialog
… has no description: set Description in Website settings.Fill in Description under Website settings
… has … images with no Alt text.Describe each image in its Alt text, for people who can’t see it
… has … links with no Label: set Label under Link.Give each link a Label under Link
Text is set in an uploaded font, which a website on benchy.site does not carry, so it shows in Geist.Choose one of the canvas’s own fonts, which every website carries
A link goes to …, which is not a page of this website, so it leads nowhere.Point the link at a Page of this canvas, or at a full address

On a website’s page

Messages on a website’s page in Studio, in its General, Content and Forms sections. See Add a form for forms.

MessageWhat it meansWhat to do
Hidden from search engines for now.Search engines are told to skip the website: its live version has something held for review, or it is a Free workspace’s website in its first 14 daysSee Search engines on the Safety page
This website isn’t availableIt may be in another workspace, or it was deletedSwitch to the workspace the website belongs to
That didn't work. Try again.The change didn’t go throughTry again. If it keeps failing, check your role: Can view can’t change a website
A suspended website can’t be deleted.Benchy suspended this websiteWrite to abuse@benchy.studio to appeal
Only the workspace’s Owner can delete a website, in Benchy Studio. Anyone who can edit it can unpublish it.Permanent deletion is for the workspace’s Owner, and only in StudioAsk the workspace’s Owner, or take it offline if you can edit it
This changed since you opened it. Reload the page and make your change again.Someone saved this content after you opened itReload, then make your change again
This photo contains its location. Anyone who opens it can see where it was taken.The picture holds the place it was takenChoose Upload anyway to publish it with its location, or pick a picture without location data
This website takes no entries yet. Add a Form block on its canvas and publish again, or, for a website built as files, declare its forms in benchy.site.json.The live version has no formsAdd a form and publish again. See Add a form
This workspace has used this month's entries. Forms answer “This form isn’t taking entries right now” until the 1st.The workspace reached its monthly form-entry quotaUpgrade the plan, or wait for the 1st

Custom domain messages

A domain’s row shows its state and, under it, what the last check found. The states are on Custom domains; “…” stands for the date Benchy keeps checking until, or the certificate authority’s name.

MessageWhat it meansWhat to do
No TXT record found yet. New records can take up to an hour to appear. …Benchy hasn’t seen the TXT recordCreate it where the domain’s DNS is run, then wait or choose Check now
A TXT record is there, but its value doesn't match. Copy the value below again. …The TXT value differs from the one Benchy showedCopy the value with its button and replace the record’s value
We couldn't reach DNS on the last check, and will try again shortly. …The DNS lookup failed on Benchy’s sideNothing; the next check runs by itself
Certificate blockedThe domain has CAA records that don’t allow the authority issuing its certificate. The row names the authority and the CAA record to addAdd that CAA record beside your others. Benchy checks again within the hour
The certificate couldn't be validated yet. Check that the CNAME record below is in place, and that your DNS provider answers for the domain.The certificate check can’t reach the domain through its CNAMECheck the CNAME points at domains.benchy.site, with any proxy or CDN switch off
The certificate is taking longer than usual. …It has been more than an hourCheck the CNAME record; most delays are a missing or wrong CNAME
The domain is yours. The certificate provider didn't answer on the last check; we'll try again shortly.The certificate provider didn’t respondNothing; Benchy tries again
The domain is yours. Another website is still letting go of it, which can take a few minutes.The domain was removed from another website moments agoWait a few minutes
The TXT record didn't appear within 3 days. Remove it and add it again to start over.The 3 days for proving the domain ran outRemove the domain, add it again, and create the TXT record with the new value
The TXT record's value didn't match within 3 days. Remove it and add it again to start over.The record never held the value Benchy showedRemove the domain, add it again, and set the TXT record to the new value
The TXT record was missing for 3 days, so the domain stopped serving. Put it back, and it returns within about 6 hours.The TXT record was deleted after the domain was activePut the TXT record back
The certificate couldn't be issued. Check that the CNAME record points at the value below. …Issuing failedFix the CNAME. Benchy asks again every 6 hours for a week
The certificate provider refused this domain. Remove it and add it again to start over.The certificate provider won’t issue for this domainRemove it and add it again
The checks ran out of time. Remove it and add it again to start over.The domain wasn’t ready within its timeRemove it and add it again
Its DNS doesn't show a CNAME record pointing to domains.benchy.site. …Shown as Not pointing here. The domain serves, but Benchy can’t see its CNAME, often because the provider proxies or flattens itSet the record to DNS only, pointing at domains.benchy.site
We can't reach this domain. Check that its CNAME record points to domains.benchy.site. …Shown as Can’t reach itCheck the CNAME record
The plan's custom domains are all in use. Remove one to add another.The workspace has as many domains as its plan allows. Pending and failed domains count tooRemove one, or upgrade
This workspace is adding custom domains too often. Try again later.A workspace adds at most 10 domains an hour and 30 a dayWait, then add it
This domain was checked 4 times this hour; try again in about … minutes.Check now runs at most 4 times an hour for each domainWait; Benchy also checks by itself
That domain is not connected to this website; …The domain belongs to another website, or was removedOpen the website it belongs to
This domain's checks have ended. Remove it and add it again to start over.Check now can’t restart a domain whose checks are overRemove it and add it again
Custom domains are connected by a person in Benchy Studio, or with a key or app that can make changes to the whole workspace.The key or app can’t change domainsAdd the domain in Studio, or use a key with Read and write access to the workspace

When you add a domain, Benchy refuses it with one of these sentences:

  • Enter a domain, such as www.example.com.
  • A domain is at most … characters.
  • That is not a domain name. Enter only the name, such as www.example.com: no https://, path or port.
  • Wildcard domains are not supported. Add each name, such as www.example.com.
  • An IP address cannot be a website's domain.
  • Enter a full domain, such as www.example.com.
  • Use a subdomain such as www.example.com. A bare domain (example.com) cannot point at benchy.site; redirect it to www at your registrar.
  • That is a public suffix, not a domain you can own.
  • That domain ending is not a public top-level domain.
  • Each part of the domain must use one alphabet; names mixing, say, Latin and Cyrillic letters are refused because they imitate other names.
  • That domain belongs to Benchy or a hosting platform and cannot be added.

Error codes

Studio shows the sentence; the CLI and agents also get the code. A refused deploy never changes what is live.

CodeWhat it meansWhat to do
SITE_NAME_UNAVAILABLEThe name breaks the rules, is reserved or is taken; the message says whichChoose another name
SITE_PERMISSION_OR_LIFECYCLEThe website doesn’t exist for this account or key, or the request isn’t allowed. Many refusals share this code, and each sentence names its case: the key’s access, the canvas’s owner, the project, an offline website’s previewDo what the sentence says. For “That website does not exist, or this account or key cannot change it.”, check the name, the key’s workspace and your role
SITE_LIMIT_FILESMore than 1,000 filesRemove files the website doesn’t use
SITE_LIMIT_FILE_BYTESA file, or a content picture, is over 25 MiBCompress it, or host large video elsewhere
SITE_LIMIT_TOTAL_BYTESThe deploy is over 100 MiBResize images and remove unused files
SITE_PATH_INVALIDA path is too long or has a hidden or empty partRename the named file
SITE_EXTENSION_REFUSEDA file type websites don’t serve, or a content picture that isn’t PNG, JPEG, GIF, WebP or AVIFRemove or convert the file
SITE_MANIFEST_INVALIDThe list of files sent with the deploy doesn’t add up: no files, a path twice, a size or digest that doesn’t match, or a project in another workspaceDeploy again with the current CLI. For “That project is in another workspace.”, choose a project in the website’s workspace
SITE_CONFIG_INVALIDbenchy.site.json is invalid; the message names the setting, or the line for a JSON syntax errorFix the file and deploy again
SITE_FORM_FIELD_REFUSEDA form asks for a password, payment details or a government ID numberRemove the field
SITE_CAP_REACHEDThe workspace has as many websites or custom domains as its plan allows, or content is over its size: 1,000 items in a list, 4 MiB a collection, 16 MiB a websiteUpgrade, or remove some
SITE_RATE_LIMITEDToo many publishes, three deploys already in progress for this website, or too many domain adds, Check now presses, content saves, picture uploads or link checksWait and try again. A deploy in progress finishes or expires within an hour
SITE_UPLOAD_INCOMPLETESome files, or a content picture, hadn’t arrived when the deploy was finishedDeploy again; only the missing files upload
SITE_DEPLOYMENT_EXPIREDThe upload took more than an hour, or the deploy was already closedDeploy again
SITE_STORAGE_FULLThe workspace’s storage is full, or a Free owner’s shared Free storage isFree up space or upgrade
SITE_STORAGE_BUSYFiles from an earlier deploy or picture are still being cleaned upDeploy again in a few minutes
SITE_UNSAFE_CONTENTThe deploy, the version you tried to put live, or a link in content goes to a page on a list of unsafe pagesRemove the link. If the listing is wrong, write to abuse@benchy.studio
SITE_REVIEW_REQUIREDOn Free, some pages couldn’t be checked completelySplit very large pages, or pages with a great many links
SITE_CHECK_UNAVAILABLEThe safety check couldn’t run, or links in content couldn’t be checkedTry again in a few minutes
SITE_WORKSPACE_ON_HOLDA website in the workspace is suspended, so the workspace can’t publishTo appeal, write to abuse@benchy.studio
SITE_NO_PREVIOUS_DEPLOYMENTThere is no version to put live: the website was never published, there is no earlier one, or the one named is a preview or didn’t finishDeploy instead, or pick a version from benchy site get
SITE_DEPLOYMENT_NOT_FOUNDThe website has no version with that idPick a version from benchy site get
SITE_LIVE_CHANGEDThe live version changed since you read it, so nothing was rolled backRead benchy site get again, then choose a version
SITE_DEPLOYMENT_REQUIREDAn agent rolled back an offline website without naming the version to put back onlineName the version; the message gives its id
SITE_DELETE_BLOCKEDBenchy suspended the website, so it can’t be deletedWrite to abuse@benchy.studio to appeal
SITE_SERVICE_UNAVAILABLEBenchy’s upload service couldn’t finish the requestTry again in a few minutes; nothing live changed
SITE_DOMAIN_INVALIDThe domain breaks a rule; the message says which (listed under Custom domain messages)Use a subdomain you control, such as www
SITE_DOMAIN_UNAVAILABLEThe domain is connected to another website or still being removed, or its checks have endedRemove it there first, wait a few minutes, or remove it here and add it again
SITE_DOMAIN_NOT_CONNECTEDThe domain isn’t connected to this websiteUse a domain benchy site domain list prints
SITE_DOMAIN_PLAN_REQUIREDCustom domains need a paid planUpgrade the workspace
SITE_FORM_NOT_DECLAREDNo form by that name, or the live version doesn’t declare itUse a name benchy site forms list prints, or declare the form and deploy
SITE_CONTENT_NOT_DECLAREDThe live version doesn’t declare that collection in benchy.site.jsonDeclare it and deploy, or pull again to see the collections there are
SITE_CONTENT_INVALIDContent doesn’t fit its declaration; the message names the item and the fieldFix what it names and save again
SITE_CONTENT_CONFLICTThe content changed since you read itPull or reload, then make your change again
SITE_PICTURE_LOCATIONA content picture holds the place it was takenChoose Upload anyway under Content in Studio, or use a picture without location data

In Studio, a name that can’t be used says “That name is reserved. Choose another.”, “That name is taken. Choose another.”, or which rule it breaks: “Use 3 to 40 lowercase letters, numbers and single hyphens.”, “A name has to start and end with a letter or number.” or “Use single hyphens only.”

What visitors see

Besides your own pages, visitors can meet these Benchy pages. None of them names your website or sets a cookie.

StatusTitleWhy
404Nothing hereNo website answers at this address, or its custom domain isn’t active
404Page not foundThe website has no file here and no 404.html of its own
404Not publishedThe website is offline
400Bad requestThe address isn’t a valid one
451This website is unavailableBenchy suspended it
503Back soonBenchy paused websites for maintenance
503Temporarily unavailableThe website couldn’t be loaded just then
502Temporarily unavailablePart of the website couldn’t be loaded just then
429Too many requestsOne network asked for too much at once
405Not allowedA request other than GET, HEAD or a form entry
—Your entry wasn't sentA form posted without the form script was refused; the page says why

A form shows one of these lines beside its button when an entry isn’t taken:

LineWhy
This form isn't set up yet.The live version doesn’t declare this form
This form isn't taking entries right now.The workspace has used this month’s entries
Too many entries from here. Try again in a minute.One visitor sent more than 10 a minute
Check the highlighted fields.A required field is empty or a value doesn’t fit
The spam check didn't pass. Try it again.The check failed or expired
Finish the spam check first.The visitor sent before the check finished
Your entry wasn't sent. Try again.Anything else went wrong; nothing was kept