Most guides on this topic drop you into a wall of generic screenshots and half-finished steps. You end up with a broken setup, an error you can’t decode, and no idea why. This guide skips all of that.
What you actually need to set up DeepSeek on Janitor AI comes down to four things: a funded DeepSeek account, the correct API key, the exact base URL, and the right configuration mode inside Janitor AI. Get those four right and the whole thing works inside ten minutes. Miss even one and you’ll hit errors that look completely unrelated to what went wrong.
If you’ve already tried using Claude on Janitor AI, you’ll recognize the setup pattern — it’s a similar custom API flow. Check out this walkthrough on how to use Claude on Janitor AI before you start if you want to compare both setups side by side.
DeepSeek works on Janitor AI as a custom OpenAI-compatible API. You need: (1) a funded DeepSeek account with at least $2–$5, (2) an API key from platform.deepseek.com, (3) the base URL https://api.deepseek.com/v1/chat/completions, and (4) the model name deepseek-chat entered into Janitor AI’s custom API settings. That’s the whole setup. Everything else in this guide is error prevention and optimization.
If you want a free route, use MegaNova or OpenRouter as a proxy — model name deepseek-ai/DeepSeek-V3-0324-Free, endpoint https://inference.meganova.ai/v1/chat/completions, API key from MegaNova’s dashboard. Free tiers have rate limits but work for light use.
One-Page Setup Checklist (Run Through This Before You Click Anything)
- DeepSeek account created at platform.deepseek.com
- Billing topped up — minimum $2, recommended $5 for a comfortable start
- API key generated and copied immediately after top-up
- Base URL noted: https://api.deepseek.com/v1/chat/completions
- Model name confirmed: deepseek-chat (or your chosen variant)
- Janitor AI account logged in and a character open
- API Settings → Custom/OpenAI-Compatible API mode selected in Janitor AI
This checklist matters because the single most common failure point is doing the steps out of order — creating the API key before funding the account, then wondering why calls keep failing. Fund first, key second, every time.
Step 1 — Create and Fund Your DeepSeek Account
Nothing in the Janitor AI setup side will work if this step is incomplete. DeepSeek’s API is pay-per-token. Zero balance equals zero responses, and the error message Janitor gives you when this happens looks like an API key problem, not a billing problem. That’s what sends most people down the wrong troubleshooting path.
How to Sign Up for DeepSeek in Under Five Minutes
Go to platform.deepseek.com. Sign up with Google or email. Email confirmation takes under a minute. Once inside, you’re on the main API dashboard. Don’t create an API key yet — go to billing first.
Why You Must Top Up Before Creating the API Key
This is the tip that 90% of video tutorials skip over. DeepSeek API keys created on a zero balance account behave differently from keys created after funding. Keys made before a top-up sometimes show as active but return authentication or quota errors on first call.
The fix: add at least $2–$5 to your balance first. Go to Billing → Top Up inside the DeepSeek platform, add payment, confirm, then come back and create your key. You’ll avoid a confusing false-start error that looks like the key is wrong when the real issue is account state.
Creating and Storing Your DeepSeek API Key
Navigate to API Keys in the left sidebar. Click Create API Key. Give it a memorable name — something like JanitorAI-Main works fine. Copy the key immediately and paste it into a password manager or a notes app. You will not see this key again after closing the modal. If you lose it, you delete it and create a new one.
The key starts with sk- and is a long alphanumeric string. Keep it private — anyone with this key can use your DeepSeek balance.
Step 2 — Get the Correct DeepSeek API Base URL and Model Name
This is where most written guides give you outdated or vague information. The exact URL and model name matter character-for-character. One wrong slash, one missing path segment, one wrong model string — and you get a 404 or a Bad Request response with no helpful explanation.
The Official DeepSeek Endpoint for Janitor AI
Use this exact URL for direct DeepSeek access:
Do not use https://api.deepseek.com alone — Janitor AI needs the full path including /v1/chat/completions. Some older tutorials show just the base domain, which is why people get endpoint errors even when the key is correct.
Choosing the Right DeepSeek Model Name
For direct DeepSeek API, the standard model name is:
deepseek-chat
This maps to DeepSeek’s main conversational model (currently V3 under the hood). You can also use deepseek-reasoner if you want the reasoning-focused variant, but deepseek-chat is the right choice for Janitor AI roleplay and character conversations.
Don’t invent model names. If you type deepseek-v3 or deepseek-chat-v3, you’ll get a model not found error. Check DeepSeek’s official models list at platform.deepseek.com/api-docs if you want to use a newer variant — always copy the exact string from their documentation.
Free Proxy Option — OpenRouter, MegaNova, and Nebula Block
If you don’t want to add a payment method to DeepSeek yet, or if you want to test before committing, free proxy services give you access to DeepSeek models with no upfront cost. The most reliable options right now are MegaNova AI and Nebula Block.
For MegaNova, use:
| Field | Value |
| Model Name | deepseek-ai/DeepSeek-V3-0324-Free |
| Proxy URL | https://inference.meganova.ai/v1/chat/completions |
| API Key | sk-… key from MegaNova dashboard (free to create) |
MegaNova’s free tier has rate limits — around 10–20 requests per minute depending on server load. It’s enough for casual testing but will throttle under heavy use. For consistent, uninterrupted sessions, direct DeepSeek with a small balance is the better choice.
OpenRouter works similarly. Create an account at openrouter.ai, find the DeepSeek model, copy the model string and endpoint, and use your OpenRouter API key in Janitor AI. The model string on OpenRouter typically follows the format deepseek/deepseek-chat.
Step 3 — Open Janitor AI API Settings and Select the Right Mode
Now switch over to Janitor AI. The setup here is not complicated but the UI terminology is slightly non-obvious the first time you see it.
Where to Find API Settings in Janitor AI
Log into Janitor AI. Open any character or start a chat. Look for the three-line menu (hamburger icon) in the top corner — click it. Scroll down to API Settings or navigate to your profile settings. Inside API Settings, you’ll see options for different API providers.
You’re looking for the section labeled Custom/OpenAI-Compatible API or sometimes listed as Other API/Proxy. This is what you need for DeepSeek — it’s not listed as a built-in provider the way OpenAI or Anthropic might be.
Custom OpenAI-Compatible API vs Proxy Mode — Which One to Use
Use Custom/OpenAI-Compatible API when connecting directly to DeepSeek. This mode lets you enter a base URL, model name, and API key manually.
Use Proxy mode if you’re routing through a third-party service like OpenRouter or MegaNova. The fields are the same but the conceptual difference matters — proxy mode routes your request through an intermediary, while custom mode goes direct.
Picking the wrong mode isn’t always obvious from the error message. If you see timeout errors or responses that look like they’re coming from the wrong model, double-check which mode you’re in.
Step 4 — Add DeepSeek as a Custom Model Inside Janitor AI
This is the step everyone searches for. Here’s exactly what goes in each field.
Field-by-Field Settings for Direct DeepSeek API
| Field in Janitor AI | What to Enter |
| Name / Label | DeepSeek (or any name you’ll recognize) |
| Model | deepseek-chat |
| API URL / Proxy URL | https://api.deepseek.com/v1/chat/completions |
| API Key | Your sk-… key from platform.deepseek.com |
| Max Tokens | 2048 (start here; increase if responses get cut off) |
| Temperature | 0.8–1.0 for creative roleplay; 0.5–0.7 for factual tasks |
Fill in every field. Leaving any field blank — especially the model name — causes Janitor AI to default to an internal fallback that doesn’t route your request correctly. The model field is the one most people skip because it seems optional. It isn’t.
Field-by-Field Settings for MegaNova or Nebula Block Proxy
| Field in Janitor AI | What to Enter |
| Name / Label | DeepSeek-Free (MegaNova) |
| Model | deepseek-ai/DeepSeek-V3-0324-Free |
| API URL / Proxy URL | https://inference.meganova.ai/v1/chat/completions |
| API Key | Your sk-… key from meganova.ai or nebulablock.com |
| Max Tokens | 1024 (free tiers often have token limits) |
| Temperature | 0.8 for conversational use |
Saving, Refreshing, and Activating Your DeepSeek Configuration
After filling in all fields, click Add Configuration or Save Settings — the button label varies slightly by Janitor AI version. Once saved, do a hard refresh of the page (Ctrl+Shift+R on Windows/Linux, Cmd+Shift+R on Mac). Without the refresh, Janitor AI sometimes continues using the previously selected model.
After refreshing, go back into API Settings and confirm your new DeepSeek configuration is selected as the active model. It should show as the current selection. If it reverts to a previous setting, save again and check browser local storage or cookies aren’t blocking the change.
Step 5 — Test DeepSeek on a Janitor AI Character
Don’t just assume it’s working because no error appeared on save. Run a live test.
The Quickest Sanity Test
Open any character. Send this message in the chat:
Tell me which AI model is responding to this message and count the words in your reply.
A working DeepSeek connection will respond naturally, usually acknowledging it’s a DeepSeek model (or staying in character if the persona is set to mask that). What you’re looking for is any response at all, with no error overlay in Janitor AI’s interface.
If you get a response, you’re done with the setup. If you get an error, go straight to the troubleshooting section below.
Reading Janitor AI Status Indicators
Janitor AI shows a small status indicator near the API settings when a key is validated. Green means the connection is active and the key is recognized. Red or orange means the key failed validation — usually wrong key, wrong URL, or zero balance.
The status check does not always catch balance issues. A key can validate as green but still fail mid-conversation if your DeepSeek credit runs out. Check your balance on platform.deepseek.com if responses stop working after they were working fine.
How to Switch Existing Janitor AI Characters Over to DeepSeek
If you have existing characters set up with a different API — OpenAI, Claude, or another model — switching them to DeepSeek takes less than a minute but has one important caveat.
Selecting DeepSeek Per Character
In Janitor AI, some configurations are global (apply to all characters) and some are per-character. When you add a new API configuration, you may need to open each character’s settings individually and select DeepSeek as the active model for that character. Don’t assume saving the global setting automatically updates all existing chats.
Navigate to the character, open its settings, find the model/API selector, switch to your DeepSeek config, and save. Test immediately with a short message to confirm the switch took effect.
Duplicate Before You Switch — One Safety Step Most Guides Skip
Before switching a character you’ve spent time developing, duplicate it. Most Janitor AI versions have a Clone or Duplicate option in character settings. Clone it, name the clone something like [Name]-DeepSeek-Test, then switch the model on the clone first.
This lets you compare responses side-by-side between your old model and DeepSeek. It also means if DeepSeek handles the character’s persona differently — and it often does, since model personalities vary — you can tune the system prompt on the clone without risking your original setup.
Common Errors When Setting Up DeepSeek on Janitor AI and How to Fix Them
These are the actual errors users hit most often, pulled from Janitor AI forums, Reddit threads, and real troubleshooting experience. Not generic API debugging — these are the specific patterns that come up with DeepSeek and Janitor AI specifically.
| Error | Most Likely Cause | Fix |
| 401 Unauthorized / Invalid API Key | Wrong key, or key created before top-up | Regenerate key after confirming balance > $0 |
| 404 Not Found | Wrong base URL or missing path segment | Use exact URL: https://api.deepseek.com/v1/chat/completions |
| 400 Bad Request | Wrong or misspelled model name | Use deepseek-chat exactly — no version suffixes |
| 429 Too Many Requests | Rate limit hit (common on free proxies) | Wait 60 seconds or switch to direct DeepSeek API |
| 500 Internal Server Error | DeepSeek server issue or proxy overloaded | Try again in 5 min; switch proxy if persistent |
| No response / timeout | Model field left blank | Fill in model name: deepseek-chat |
| Green key but no responses | Zero balance despite key being valid | Top up on platform.deepseek.com and retry |
Invalid API Key or 401 Errors — Check This First
The 401 error almost always means one of three things: the key was copied with an extra space (happens more than you’d think — copy it programmatically or triple-check there’s no trailing whitespace), the key was generated before the account was funded, or the key was deleted and a new one wasn’t updated in Janitor AI.
Fix: Go back to platform.deepseek.com, check your API keys list, confirm the key you’re using still exists, verify your balance is above zero, and paste the key fresh into Janitor AI. Don’t type it manually.
Bad Request or 404/500 Errors — Usually the URL or Model Name
The 404 error means Janitor AI is reaching DeepSeek’s servers but hitting a path that doesn’t exist. This is a URL problem. The most common version of this is entering https://api.deepseek.com without the /v1/chat/completions path.
The 400 Bad Request usually means the model name is wrong. deepseek-chat-v3 doesn’t exist as an API model name. deepseek-v3 doesn’t either. The API model name is deepseek-chat. Check the exact string you entered, character by character.
Proxy Setup Working But No Responses
If you’re on a free proxy like MegaNova and responses stop coming, the proxy’s free tier rate limit kicked in. Free tiers on most inference proxies allow a set number of requests per minute or per day. When you hit the ceiling, calls go silent rather than returning an obvious error.
Wait a minute and try again. If the issue persists, check your MegaNova or OpenRouter dashboard for usage stats. If you’re consistently hitting limits, either upgrade that proxy service or switch to direct DeepSeek API with a small balance — $5 goes a surprisingly long way on DeepSeek’s pricing.
Best Practices for Using DeepSeek on Janitor AI
Getting the connection working is step one. Getting good, consistent results from it is a different skill.
Prompt Tips for Better DeepSeek Responses in Janitor AI Characters
DeepSeek V3 responds well to clear, structured character instructions. If your character persona is vague, the model will fill in gaps in ways that may not match what you want. Be specific in the system prompt: define personality traits, speech patterns, and relationship dynamics explicitly rather than implying them.
Keep your opening messages shorter than you might with other models. DeepSeek can handle long context but tends to anchor heavily on whatever you establish early. A focused, tight first message leads to a more consistent character performance throughout the session.
If you notice the model breaking character or giving generic responses, add an explicit instruction to the system prompt like: Stay strictly in character as [Name] at all times. Do not acknowledge being an AI unless [Name] would acknowledge it in the story context. This type of constraint works well with DeepSeek’s instruction-following capability.
Controlling DeepSeek Costs While Using Janitor AI
DeepSeek’s pricing is significantly cheaper than OpenAI — as of mid-2026, input tokens are a fraction of GPT-4 pricing. A $5 top-up gives you roughly 5–10 million input tokens depending on the model tier, which translates to several hundred average-length Janitor AI conversations.
Track your usage in the DeepSeek platform dashboard under Usage. You can set a spending limit to prevent accidental overuse. The dashboard updates in near real-time so you can check mid-session if you’re burning through credit faster than expected.
The main cost driver in Janitor AI sessions is context length. Longer conversation histories mean more tokens per request. If you’re running very long sessions, periodically start a fresh conversation or use the context summarization feature if your Janitor AI setup supports it.
If you’re comparing DeepSeek costs to Gemini’s message limits, this breakdown of how to get 1000 messages on Gemini AI in Janitor AI gives useful context on per-message economics across different providers.
Privacy and Safety: What Not to Send Through DeepSeek and Janitor AI
Both DeepSeek and Janitor AI process messages on external servers. Don’t send real personal information — passwords, full names combined with addresses, financial details, or anything you’d consider genuinely sensitive. Treat every conversation as if it could theoretically be logged.
DeepSeek’s privacy policy applies to all API requests. Janitor AI’s policy covers the platform layer. If you’re building anything beyond personal use, read both policies before proceeding. For personal roleplay and creative writing — which is the main use case here — normal common-sense privacy hygiene is enough.
Alternative Setup: Using OpenRouter to Access DeepSeek on Janitor AI
OpenRouter is worth knowing about as a fallback option. It aggregates multiple AI providers including DeepSeek, giving you a single API key and dashboard for several models. This is useful if you want to switch between DeepSeek and other models without maintaining separate accounts and keys.
How to Use DeepSeek via OpenRouter Inside Janitor AI
Create an account at openrouter.ai. Add credit (OpenRouter accepts most payment methods). Find DeepSeek in the models list — look for deepseek/deepseek-chat or the specific variant you want. Note the exact model string from the OpenRouter models page.
In Janitor AI, configure a new custom API entry:
- API URL: https://openrouter.ai/api/v1/chat/completions
- Model: the exact string from OpenRouter’s model list (e.g., deepseek/deepseek-chat)
- API Key: your OpenRouter sk-or-… key
OpenRouter adds a small markup over base DeepSeek pricing in exchange for the convenience of unified access. If cost is the priority, direct DeepSeek is cheaper. If flexibility across models is the priority, OpenRouter is worth the slight premium.
Direct DeepSeek vs Proxy — Honest Pros and Cons
| Factor | Direct DeepSeek API | Via Proxy (OpenRouter/MegaNova) |
| Cost | Lowest — direct pricing | Slightly higher due to proxy markup |
| Reliability | High — single dependency | Depends on proxy uptime too |
| Free tier | No — requires top-up | Yes — limited but available |
| Model access | DeepSeek models only | Multiple providers in one place |
| Setup complexity | Simple — one account | Slightly more steps |
| Latency | Lower | Slightly higher via proxy layer |
How to Know If DeepSeek Is Actually Working Better Than Your Old Model
Switching models for the sake of switching doesn’t help anyone. Here’s how to make the comparison concrete rather than vibes-based.
Simple A/B Test: Old Model vs DeepSeek on the Same Character
Clone your character. Run one version on your previous model and one on DeepSeek. Send the same prompts to both in separate browser tabs. Compare: response coherence (does the character stay consistent?), instruction-following (does it respect persona constraints?), and response length and quality over multiple turns.
Do this test over at least 10–15 exchanges before drawing conclusions. Single-response comparisons are too noisy to be meaningful — model behavior varies turn-by-turn. Look at the pattern across the session.
When to Stick With DeepSeek and When to Switch Back
DeepSeek V3 is particularly strong at instruction following, which makes it excellent for characters with complex persona rules or specific speech patterns. It’s also notably good at maintaining context over long conversations without drifting from established character details.
It can be less vibrant than some fine-tuned creative models for pure open-ended storytelling where you want the model to surprise you with creative direction. If your Janitor AI use case is highly structured (specific character constraints, lore-heavy settings), DeepSeek performs extremely well. If you want maximum creative unpredictability, you might prefer a different model.
If you’re evaluating DeepSeek against other AI tools for your workflow beyond Janitor AI, this analysis of Claude AI as the fastest-growing enterprise AI tool gives useful context on where different models excel.
FAQ — How to Set Up DeepSeek on Janitor AI
Do I Need to Pay to Use DeepSeek with Janitor AI?
For direct DeepSeek API access: yes, you need at least a small top-up ($2–$5 minimum). For proxy routes like MegaNova or OpenRouter, there are free tiers available with rate limits. Free proxies work for testing; for regular use, the direct paid route is more reliable and actually quite cheap given DeepSeek’s pricing.
Is There a One-Click DeepSeek Integration in Janitor AI Yet?
As of mid-2026, no. DeepSeek is not a built-in provider in Janitor AI’s default model list. You still need to configure it manually via the Custom/OpenAI-Compatible API settings. The setup takes about ten minutes the first time and under two minutes for any subsequent characters or configurations.
Can I Use Multiple AI Models in Janitor AI at the Same Time?
Yes. You can create multiple API configurations in Janitor AI and assign different models to different characters. One character can run on DeepSeek, another on OpenAI, another on Claude — all within the same Janitor AI account. The per-character model selection makes this straightforward to manage.
What Happens If My DeepSeek Balance Runs Out Mid-Conversation?
The conversation stops receiving responses. Janitor AI will show an error on the next message — usually a 429 or a generic API error. Top up your balance on platform.deepseek.com, wait 1–2 minutes for the account state to update, and the connection resumes normally. Your conversation history is preserved in Janitor AI.
Why Does DeepSeek Show as Connected But Give No Responses?
The most common cause is a zero balance combined with a valid key. A key can pass Janitor AI’s validation check even when the account has no credit — Janitor AI checks if the key format is valid, not whether it has spending capacity. Check your DeepSeek dashboard balance directly.
Second most common cause: the model name field is blank or has a typo. Double-check that deepseek-chat is entered exactly in the model field.
Does DeepSeek Work With Janitor AI’s NSFW/Adult Content Settings?
DeepSeek’s API has content filtering applied server-side. Some content that Janitor AI’s adult mode permits may be filtered by DeepSeek’s own policies. This is an inherent limitation of using DeepSeek direct. Proxy services sometimes have different filtering — this varies by proxy provider and their own terms of service. Check the specific proxy’s policy if content filtering is a concern for your use case.
Final Notes and Practical Recommendations
The setup is genuinely simple once you have the four pieces in place: funded account, API key, correct URL, and correct model name. The frustration people experience usually comes from doing steps out of order or getting bad information about which URL or model name to use.
Start with direct DeepSeek if you’re planning to use it regularly — the pricing is low enough that $5 goes a long way, and the direct connection is more stable than any proxy route. Use MegaNova or OpenRouter for initial testing if you want to confirm everything works before adding payment details.
If you’re exploring other AI configuration setups beyond Janitor AI, this guide on setting up Cursor AI with local models covers a similar custom API configuration workflow that applies the same mental model.
Once DeepSeek is running, invest five minutes in tuning the system prompt for your characters. That’s where the actual quality difference shows up — not in the model selection itself, but in how clearly you define the character’s behavior within the prompt. DeepSeek follows clear instructions well; give it clear instructions.
— End of Article —

