Janitor AI "AI Provider Temporarily Unavailable"? Is It Down? 7 Fixes
Usually Janitor's servers or your proxy, not you. Check status.janitorai.com first, then 7 fixes in order, plus upstream_transport_error and 502 explained.
Built from the product's official documentation, pricing and policy pages, not from our own hands-on use. How we review
Adults only. Janitor AI’s help centre says its services are “exclusively intended for an audience above the age of 18”. This guide is about errors and settings and is non-explicit.
How this guide was made. This is a documentation-based guide. Every error message and fix below comes from Janitor AI’s help centre, newsroom, changelog and status page, or OpenRouter’s documentation, all rechecked on 29 October 2026. For the “AI provider” chat errors, which Janitor has not documented, we also read the error-handling code that Janitor’s website sends to your browser, and we say clearly where that ends and guesswork would begin. Many of Janitor’s help articles were last updated in 2025, so we give their dates in the sources. Where something is only reported by users, we say so. Nothing here is hands-on testing. See how we review for our sourcing rules.
First question: is it Janitor, or is it you?
Most Janitor AI problems fall into one of three places:
- Janitor’s own servers, which run the site and its in-house model, JLLM.
- An external model you have connected through a proxy, such as OpenRouter, using your own API key.
- Your browser, network or account, including cache, extensions, VPNs and Cloudflare checks.
Knowing which one you are dealing with saves a lot of time. If you can see an error message, look it up in the table below first. If not, work through the fixes in order: they run from the most likely cause to the least, and the first two tell you where the fault sits.
Find your error message
The middle column says where each explanation comes from. Rows marked “unconfirmed” or “suggested” are our best safe advice, not Janitor’s.
| What you see | Cause, and who says so | What to do |
|---|---|---|
| Incident on status.janitorai.com | Janitor’s servers (status page) | Wait |
| “Error Code: 502” or “1033” on the site | Usually a temporary chat-system problem (Janitor help centre) | Wait a few minutes (Fix 1) |
| “The AI provider returned an unexpected response… (upstream_response_error)” | A failed reply from the model service behind your chat (Janitor’s site code; no official explanation) | Suggested: retry once, then try another model (details) |
| “The AI provider is temporarily unavailable…”, with or without (502), (503) or 521 | Unconfirmed: not in Janitor’s help centre or site code. A 5xx number means a server-side failure (details) | Suggested: wait, try another model, check status |
| “The AI service is temporarily unreachable… (upstream_transport_error)” | Unconfirmed: the code is in Janitor’s site code, the explanation is not | Suggested: retry once, then try another model, check status |
| “Service temporarily down”, “Service temporarily overloaded” or “unavailable due to maintenance” | Janitor’s servers returned 502, 503 or 520 to 524 (Janitor’s site code) | Wait (Fix 1) |
| “janitor+ Router is temporarily unavailable…” | janitor+ Router (Janitor’s site code) | Switch to the Standard Janitor model, as the message says |
| “Your janitor+ Router settings are temporarily unavailable…” | Unconfirmed: not in Janitor’s help centre or site code | Suggested: retry once, then use the Standard Janitor model until it clears |
| Proxy fails but JLLM works | Your key, URL, model or provider (Janitor help centre) | Fix 3 |
| “A network error occurred…” | Wrong API URL, or no refresh after saving (Janitor help centre) | Exact URL, save, refresh |
| 401 in a proxy reply | Invalid or disabled key (OpenRouter docs) | New key (Fix 3) |
| 429 “free-models-per-day” | OpenRouter’s daily cap on free models (OpenRouter docs) | Wait for the reset or add credits |
| “Provider returned error” (502) or a 408 timeout in a proxy reply | The external model failed or is slow (Janitor help centre, OpenRouter docs) | Check its uptime on OpenRouter, wait or switch model |
Raw HTML starting <DOCTYPE html> |
“Not a user issue” (Janitor help centre) | Read the page title inside it (Fix 4) |
| Cloudflare loop or “Access Denied” | Network, VPN or extensions (Janitor help centre) | Clear data, private window, toggle VPN |
| “An invalid response was received from the upstream server” at login | Temporary sign-in outage (Janitor help centre) | Wait and retry (Fix 5) |
| Empty reply from a reasoning model | Token budget used up on reasoning (OpenRouter docs) | Raise max tokens or cap reasoning |
| “message must be shorter than or equal to 10240 characters” | Your message is too long (Janitor help centre) | Split it |
“The AI provider…” errors in chat
People search for these messages, word for word, after seeing them inside a Janitor chat:
- “The AI provider returned an unexpected response. Please try again. (upstream_response_error)”
- “The AI service is temporarily unreachable. Please try again. (upstream_transport_error)”
- “The AI provider is temporarily unavailable”
- “The AI provider is temporarily unavailable. Please try again.” followed by a number such as (502), (503) or 521
- “Your janitor+ Router settings are temporarily unavailable. Please try again.”
Janitor’s help centre, newsroom and changelog do not explain any of them. Here is what can be checked, and what cannot.
What Janitor’s own code shows. We read the chat error handling in the code Janitor’s website sends to every browser, on 29 October 2026. It shows that:
- “The AI provider returned an unexpected response. Please try again.” is Janitor’s default message for a failed reply from the model service behind your chat, used when the server does not send a more specific message.
- The part in brackets is added by Janitor’s site after the message. In the messages people search for, it is either an error code, such as upstream_response_error, or a number, such as 502.
- Janitor’s code names nine such codes, all starting “upstream_”: authentication_error, model_unavailable, payment_required, rate_limited, request_rejected, response_error, timeout, transport_error and unavailable.
- janitor+ Router has its own versions, such as “janitor+ Router is temporarily unavailable. Please switch to the Standard Janitor model and try again later.”
What the number in brackets means. A number such as 502, 503 or 521 is an HTTP status code, and codes in the 500s mean the failure was on the server side, not on your phone or browser. Janitor’s site runs behind Cloudflare, and Cloudflare’s documentation says a 521 “occurs when the origin web server refuses connections from Cloudflare”, which only the site’s operators can fix. Janitor’s own site code, read again on 4 November 2026, shows its own wording when its servers return these codes through Cloudflare: “Service temporarily down - our team is working to restore it” for 502, “Service temporarily overloaded - please try again shortly” for 503, and “Service temporarily unavailable due to maintenance” for 520 to 524. With any of these, waiting is the fix.
What we could not confirm. The exact text “The AI provider is temporarily unavailable” does not appear in that code, so it is probably sent by Janitor’s server. That fits the “upstream_unavailable” code, but Janitor has not said so. The same goes for “The AI service is temporarily unreachable”: its bracketed code, upstream_transport_error, is one of the nine in Janitor’s code, and the name suggests the connection to the model service failed, but the sentence itself is not in the code and Janitor has not explained it. “Your janitor+ Router settings are temporarily unavailable” is also not in the site code we read or the help centre; since it names Router, treat it like the other Router messages below. Janitor also does not say which model a given error came from (JLLM, Router or your own proxy), or why it failed. Do not trust any site, including this one, that states a definite cause.
Safe things to try, in order:
- Wait a minute and press retry once. The message itself says “Please try again”, and Janitor’s advice for its own 502 errors is likewise to wait and check back.
- Check status.janitorai.com. If it shows an incident, stop and wait.
- Switch model. If you were on Router, its own error messages point you to the Standard Janitor model. If you were on a proxy, Janitor’s network-error article suggests switching to JLLM temporarily as a test. If you were already on Janitor’s own model, wait and try again later.
- If the message names Router or your wallet, follow its own instruction. Janitor’s Router help page explains wallet balance and billing.
- If you use your own proxy key, check that provider’s status and limits, as in Fix 3.
- If the same error keeps appearing for hours while the status page is green, contact Janitor at support@janitorai.com with the exact message and the time it appeared.
Fix 1: Check the status page
Open status.janitorai.com. It is Janitor’s own status page: the janitorai.com footer links to it, and a help-centre FAQ says “You can check the status of the site here”. It lists two components, Backend and Frontend, with uptime over the last 45 days and any active incidents. On 29 October 2026 it read “All Systems Operational”.
One trap: the help centre’s own footer also says “all systems operational”, but that text is fixed and does not change during an outage. Use the status page itself.
If it shows an incident or degraded service, stop troubleshooting and wait. If you would rather keep chatting in the meantime, Janitor AI vs SpicyChat compares the closest separate service, which an outage on Janitor’s side does not affect. If it shows everything operational but your chat still fails, the problem is more likely your proxy or your browser.
Janitor’s help centre also names two error codes that point to its side even when the status page looks fine:
- Error Code: 502. The help article says this “typically occurs when the chat system on the website is having temporary issues”, even while the rest of the site works. Its advice: there is “nothing you need to do”, wait and check back after a few minutes.
- Error Code: 1033. Same explanation, same fix: a temporary server-side issue that usually clears on its own.
If either lasts a long time, the help centre suggests contacting customer service.
Fix 2: Switch to JLLM for one message
If you use an external model, this is the fastest test there is. Janitor’s own Rate Limit/Network Error article gives it as step one: switch to JLLM temporarily. If JLLM replies normally, the proxy is the problem, not Janitor. The article suggests waiting 24 hours and retrying if a proxy model’s servers are down or overloaded.
If JLLM fails too, move on to the browser fixes in Fix 4.
Fix 3: Proxy and API errors when using your own key
Janitor publishes an OpenRouter error guide (updated August 2025) that lists the messages it sees most. These are documented by Janitor, not guessed:
- “A network error occurred…” The guide says this is usually a wrong API URL or not refreshing after saving. Set the URL to exactly
https://openrouter.ai/api/v1/chat/completions, with no doubled slashes or repeated segments, save, then refresh Janitor. - “Network Error” after pressing Check Key/Model. The guide calls that button buggy: ignore the error, save and refresh.
- 401. OpenRouter’s docs say this means invalid credentials, such as a disabled or invalid key. Janitor’s DeepSeek guide says to generate a new API key, use it on the same device it was created on, and set Model Training to On for free models.
- 402. Not enough credits. Add credits or switch to a model with the
:freesuffix. - “No endpoints found for model name” (404). The model name no longer exists or is unavailable. Use the current model ID from the provider’s model list.
- “No endpoints found matching your data policy.” (404). Your OpenRouter privacy settings block that model. Janitor’s guide says to enable Model Training under Privacy Settings for free models.
- “No allowed providers are available for the selected model” (404). Your provider restrictions are too strict. Clear Ignored and Allowed Providers in OpenRouter settings.
- “Rate limit exceeded: free-models-per-day” (429). You have hit the daily cap on free models. OpenRouter’s limits page says free variants allow 20 requests a minute and 50 a day if you have bought fewer than 10 credits, or 1,000 a day once you have bought at least 10. Janitor’s guide notes that failed attempts count towards the cap.
- “…is temporarily rate-limited upstream” (429). That model is overloaded. Try a different model.
- “Provider returned error” (502) or a timeout (408). The provider failed or is slow. Check the model’s uptime on OpenRouter, wait, or switch model.
- “This model’s maximum context length is X tokens…” (400). The bot definition, chat memory, your prompt and your message together are too long. Janitor’s guide says: “Use shorter messages, trim down memory, or switch to a smaller/simpler bot.”
A note on 502: inside a proxy reply it means the external model failed. On the plain site, as in Fix 1, it means Janitor’s chat system did. Look at where the message appears.
Fix 4: Clear cache, try private mode, check extensions and VPN
If both JLLM and your proxy fail, or the site will not load, the cause is often local. Janitor’s help articles give the same sequence for network errors and Cloudflare blocks:
- Clear the site’s cached files and cookies. This logs you out, so have your login details ready.
- Open a private or incognito window and try again.
- Try another browser. The help centre names Chrome, Firefox, Opera, Brave and Edge.
- Turn Wi-Fi off and on, or toggle Airplane Mode on a phone.
- Toggle your VPN. If you use one, turn it off, because the Cloudflare article says “some VPN IPs are flagged”. If you do not, the help centre suggests trying one.
For Cloudflare “Access Denied” or a verification loop, the help centre adds three things: disable anti-tracking or privacy extensions, turn off Brave Shields if you use Brave, and check your device’s date and time are correct for your location. It also says Janitor support cannot whitelist IPs or override Cloudflare’s decision, so another network is the next step.
If a reply shows raw HTML starting with <DOCTYPE html>, Janitor’s article says it is “not a user issue”. Read the page title line inside it: “Too Many Requests” points to rate limiting or a proxy glitch, a Cloudflare challenge means wait five minutes, and 500, 502 or 504 means the upstream proxy or API is failing.
Fix 5: Login problems
Janitor documents three login errors:
- “An invalid response was received from the upstream server.” The help centre says this usually appears when logging in, most often with Gmail authentication, and is typically a temporary outage on Google’s or Janitor’s side. Wait and retry; you do not need to change settings or accounts.
- 401 Unauthorized while browsing. A session or cookie problem. Log out and back in, try a private window, then another browser, then clear cache and cookies.
- 403 at login. The help centre attributes this to Cloudflare or a network problem and points to the Cloudflare steps in Fix 4. A 403 when posting a comment or review is different: a content filter blocked a word, so rephrase.
If chats seem to have vanished after logging in, Janitor’s Missing Chats article (last updated August 2025) suggests sending a message in the affected chat and refreshing. That article also says some older chats were awaiting a database migration, but Janitor’s changelog of 4 August 2026 says the chat message migration is finished and “nothing was lost in the move”. The help article still says chats lost in earlier server migrations cannot be restored. Support is at support@janitorai.com.
Fix 6: Slow replies and queues
Janitor does not publish queue times for JLLM. Users report slower replies at busy times. The janitor+ launch post (June 2026) frames its main benefit the same way: “unlimited priority messages” for “faster responses even when usage is high”.
If replies are slow on a proxy model, the fix is on the provider side: a timeout (408) or upstream rate limit (429) means that model is busy, so switch model or wait.
Fix 7: Blank, empty or cut-off replies
On an external model, OpenRouter’s documentation explains empty replies. A model may return no content while it warms up from a cold start or while the system scales, which usually clears within seconds to minutes; retry or switch provider. A reasoning model can spend its whole token budget on reasoning and return nothing. OpenRouter says retrying does not help in that case: raise the maximum tokens or cap reasoning. It also notes you may be charged for the prompt even when nothing is generated.
Janitor’s guide adds that “Unknown response: [object Object]” usually means you have hit a message limit or the model returned no data.
On JLLM, users report replies stopping mid-sentence and that the length and generation sliders moved in a 2026 interface change. Janitor has not published an official fix that we could find, so treat advice about specific slider values as unconfirmed.
One related limit is documented: your own message cannot exceed 10,240 characters. Over that, you see “message must be shorter than or equal to 10240 characters”. Split it into smaller messages.
What janitor+ and janitor+ Router change
janitor+ costs $12.99 a month according to its launch post; on 29 October 2026 the US App Store also listed an annual plan at $99.00. It adds five times the context, unlimited priority messages and monthly swipes on what Janitor calls frontier models. The same post says the free version “stays exactly the same, and stays completely free”. Priority can help with slow JLLM replies at peak times. It does nothing for proxy errors.
janitor+ Router, announced on 30 July 2026, is described as “a simpler, more integrated alternative to the third-party proxies”. It is for subscribers on the web, bills per token from a built-in wallet at prices shown before you chat, and needs no external API keys or proxy setup. That removes the most common errors in Fix 3, the wrong URL, the mistyped key and the stale model name, but an overloaded or failing model is still a provider problem.
If Janitor keeps failing for you, our Janitor AI alternatives and Janitor AI vs SpicyChat guides compare where people go. If you move to SpicyChat and hit problems there, see SpicyChat not working. The companion matcher and our app profiles can help you compare other options.
What we could not confirm
- An official explanation of the “AI provider” chat errors: which model they come from, what causes them, and whether “The AI provider is temporarily unavailable” is the server message for the “upstream_unavailable” code.
- An official explanation or fix for cut-off replies on JLLM.
- Queue times on the free tier, or how much faster priority messages are.
- The full Terms of Service text; the terms page refused our request, so the age rule above comes from the help centre.
Frequently asked questions
How do I know if Janitor AI is down for everyone?
Open status.janitorai.com. Janitor links to it from its website footer, and its help centre says 'You can check the status of the site here'. It lists Backend and Frontend. If it shows an incident, wait. If it shows operational but you still get errors, start with the fixes on your side: switch to JLLM, clear site data, try a private window or another browser.
What does 'The AI provider returned an unexpected response (upstream_response_error)' mean?
Janitor has not published an explanation. Its website code shows this is Janitor's default chat error when the model service behind a reply sends back something unusable, and that the word in brackets is an error code. Janitor's help centre does not say which model or what causes it, so treat any specific cause as a guess. Safe steps: retry once, try another model, and check status.janitorai.com.
What does a 502 or 1033 error mean on Janitor AI?
Janitor's help centre says both usually mean its chat system is having a temporary server-side problem, even if the rest of the site works. Its advice is to wait a few minutes and contact customer service only if it lasts a long time. A 502 inside a proxy reply is different: it means the external model is down or returned an invalid response.
Why do I get a 401 error with my OpenRouter key?
On the proxy side, OpenRouter's docs say 401 means invalid credentials, such as a disabled or invalid key. Janitor's DeepSeek troubleshooting guide says to generate a new API key, use it on the same device it was created on, and turn Model Training on in OpenRouter for free models. A 401 while browsing the site, not in a reply, is a login or session problem: log out and back in, then try a private window.
Does janitor+ fix errors or slow replies?
Partly. The janitor+ launch post says it gives unlimited priority messages for faster responses when usage is high, plus five times the context. It does not change how an external proxy behaves. janitor+ Router, a separate feature for subscribers on the web, replaces your own API key with a built-in wallet, which removes key and URL setup mistakes but not provider outages.
Why are my replies empty or cut off?
With an external model, OpenRouter's docs say a model can return no content while it warms up, and a reasoning model can use its whole token budget on reasoning and return nothing, which retrying will not fix; raise the token limit or switch model. On JLLM, users report that reply length settings have moved and behave inconsistently; Janitor has not documented a fix.
What changed in this guide
- Clearer title and summary for search results. Repeated the labelled SpicyChat backup link inside Fix 1, next to the advice to wait out an outage. The fixes themselves are unchanged.
- Added the other error messages people search for word for word: upstream_transport_error ("The AI service is temporarily unreachable"), the (503) and 521 variants, and "Your janitor+ Router settings are temporarily unavailable". Explained what a 5xx number means, from Janitor's site code and Cloudflare's documentation, both read 4 November 2026. Unconfirmed messages are labelled.
- Retitled to lead with the error people search for most, "The AI provider is temporarily unavailable". Added a clearly labelled SpicyChat affiliate link for readers who want a backup while Janitor is down; the fixes themselves are unchanged.
- Rechecked every source. Added an error lookup table near the top and a section on 'The AI provider…' chat errors, separating what Janitor's code shows from what is unconfirmed. Corrected the 401 and context-length fixes to match Janitor's guides, confirmed status.janitorai.com is linked by Janitor, and noted that the chat database migration finished on 4 August 2026.
- First published; error messages and fixes checked against Janitor AI's help centre, newsroom and status page and OpenRouter's docs on 22 October 2026
Sources
Product details can change. These are the pages this article relies on, with the date each was checked.
- Cloudflare Docs: Error 521 (web server is down) (developers.cloudflare.com) Accessed 4 November 2026
- Janitor AI status page (Backend and Frontend components) (status.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: OpenRouter Error Guide (updated 4 August 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Troubleshooting Deepseek via Openrouter (updated 22 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Error: Rate Limit/Network Error (updated 29 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Error Code: 502 (updated 25 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Error Code: 1033 (updated 25 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Error Code: Raw HTML - <DOCTYPE html> (updated 25 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Error Code: 401 Unauthorized (updated 5 September 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Error Code: 403 (updated 25 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: An invalid response was received from the upstream server (updated 25 July 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Cloudflare 'Access Denied' and Verification Issues (updated 30 December 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: message must be shorter than or equal to 10240 characters (updated 30 August 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Missing Chats (updated 2 August 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: Minor Related Content (updated 21 August 2026) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Newsroom: introducing janitor+ (24 June 2026) (janitorai.com) Accessed 29 October 2026
- Janitor AI Newsroom: introducing janitor+ Router (30 July 2026) (janitorai.com) Accessed 29 October 2026
- Janitor AI Help: FAQ: Unsure if the site down? Check the status page! (updated 2 August 2025) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI Help: janitor+ Router (updated 21 October 2026) (help.janitorai.com) Accessed 29 October 2026
- Janitor AI changelog: chat message database migration complete (4 August 2026) (janitorai.com) Accessed 29 October 2026
- Janitor AI web app code: chat error handling, including the 'upstream_' error codes (file name changes with each release) (assets.janitorai.com) Accessed 29 October 2026
- Janitor: Interactive Stories on the US App Store (janitor+ Monthly $12.99, Annual $99.00) (apps.apple.com) Accessed 29 October 2026
- OpenRouter docs: Errors and Debugging (updated 11 October 2026) (openrouter.ai) Accessed 29 October 2026
- OpenRouter docs: Limits (updated 10 October 2026) (openrouter.ai) Accessed 29 October 2026