How to Set Up an SCP: Secret Laboratory Server in 2026

Darius N. (Updated: Sep 14, 2026)
4.9

735+ Satisfied Customers

Setting up an SCP: Secret Laboratory server is pretty straightforward once you know your options. The real question isn’t how to do it - it’s which approach makes sense for what you’re trying to build. A private server for friends is a different project than a verified public community server with custom plugins.

Here’s what each path looks like, what’s involved, and the stuff nobody mentions until you’re already troubleshooting it.

Your Three Options

ApproachCostEffortBest For
Self-hosted (dedicated/VPS)$5-20/mo for a VPSHigh - you manage everythingExperienced admins who want full control
Managed hosting$5.97-47.76/moLow - provider handles infrastructureMost server owners
Local/LANFreeMediumTesting or playing with friends on the same network

The self-hosted route gives you the most control but also the most responsibility. Managed hosting handles the infrastructure so you can focus on running your community. Local hosting works for testing but isn’t practical for a public server since it goes offline when your PC does.

How to Self-Host an SCP:SL Server

If you want to run everything yourself on a VPS or dedicated machine, here’s the process.

Requirements

  • OS: Linux (recommended) or Windows. Linux needs glibc 2.27 or newer. ARM CPUs are not supported - x64 only.
  • RAM: 3GB minimum, 4-5GB recommended for a standard 20-player server. See our RAM guide for detailed recommendations.
  • CPU: 2 cores minimum.
  • Storage: ~4GB for the server files.
  • Network: Port 7777 (TCP + UDP) forwarded and accessible.

Installing via SteamCMD

SteamCMD is the standard tool for downloading dedicated server files from Steam. If you don’t have it installed, grab it from Valve’s developer site.

# Log in anonymously (SCP:SL server doesn't require a Steam account)
steamcmd +login anonymous +app_update 996560 validate +quit

App ID 996560 is the SCP:SL dedicated server. The game client itself is 700330 - don’t mix them up.

First Launch

The server ships with LocalAdmin, a console wrapper that manages the server process. Launch it with your port number:

# Linux
./LocalAdmin 7777

# Windows
LocalAdmin.exe 7777

On first start, you’ll hit three prompts:

  1. EULA acceptance - Type yes
  2. Edit configuration? - Type keep unless you know what you’re changing
  3. This server or global config? - Either this or global works. Both save your answers.

The server generates its config files during this first run. After answering, it starts and waits for players.

Keeping It Running

On Linux, use screen or tmux so the server keeps running after you disconnect from SSH:

screen -S scpsl
./LocalAdmin 7777
# Detach with Ctrl+A, D
# Reattach with: screen -r scpsl

The server doesn’t have a built-in auto-restart on crash. If uptime matters, set up a systemd service or a simple watchdog script that checks if the process is running.

Updating

SCP:SL updates fairly regularly. Re-run the SteamCMD command to pull the latest version:

steamcmd +login anonymous +app_update 996560 validate +quit

Stop your server before updating. The server and game client need to be on the same version for players to connect.

Managed Hosting

If you’d rather skip the system administration and focus on building your community, managed hosting handles the infrastructure for you.

With a managed host, you get:

  • Instant setup - server is online in under a minute
  • Automatic updates - game updates apply on restart
  • DDoS protection - important for public servers (SCP:SL servers are frequent DDoS targets)
  • Backups - automated, no configuration needed
  • EXILED support - plugin installation through the control panel or SFTP
  • Web console - manage your server from a browser instead of SSH

WinterNode SCP:SL Hosting

WinterNode’s SCP:SL plans start at $5.97/mo (3GB) with no CPU limits, DDoS protection, and full EXILED plugin support. Your server auto-updates on restart and backups run twice daily with 45-day retention. Get your SCP:SL server →

Running a Public Community Server: What’s Still on You

Managed hosting removes the infrastructure work, but a few things depend on you (or a support request), not the panel:

  • Owner vs. provider responsibilities. The host handles uptime, DDoS protection, and base game updates. Community rules, moderation, and Remote Admin roles are yours to set up and enforce - see Making Yourself Admin below.
  • Verification assistance, not approval. Support can help you configure the required fields and troubleshoot a failed auto-verify, but the actual decision belongs to Northwood’s Safety & Compliance Team, not your host. No host can grant or guarantee verification. See How to Get Your Server Verified below.
  • EXILED updates are separate from game updates. Your server auto-updates the base SCP:SL binary on restart, but the EXILED framework needs its own update when a major game version drops, and plugins can lag behind that. Check the EXILED Discord for compatibility status before updating if your community depends on specific plugins - our EXILED plugin guide covers this in more detail.
  • Restores go through support, not self-service. Automatic backups run on a schedule, but restoring one is a support request via ticket or Discord, not a button in the panel. Know that path before you need it - see our backup system reference.
  • Region choice affects your community’s ping. Pick the data center closest to where most of your players actually are, not just where you are.

How to Get Your Server Verified

Verification gets your server listed in the in-game server browser. Without it, players need your IP and port to connect directly. For a public community server, verification is essential.

Auto-verification through the console resolves instantly when it succeeds. If it doesn’t, the fallback is a manual review by Northwood’s Safety and Compliance Team, which isn’t instant.

Steps

  1. Set your contact email and a few other required fields in config_gameplay.txt - see the full field list in our verification walkthrough
  2. Restart the server so the config changes take effect
  3. Run !verify static in your server console (use dynamic instead if your IP isn’t static) - this is the recommended method and, if it succeeds, is instant
  4. If auto-verify fails, email safety.compliance@scpslgame.com from the same address you set as contact_email, including your server’s IP and port - this fallback takes 3-7 business days
  5. Accept the CSG agreement link that appears in your console once approved

Your server must comply with the Community Server Guidelines. Read them before applying - violations can get your verification revoked.

Verification Isn't Instant if It Falls Back to Email

Auto-verify (!verify static) resolves immediately when it succeeds. If it fails and you have to email Northwood’s Safety and Compliance Team instead, expect 3-7 business days. Either way, players can still join by direct connect using your IP and port while you wait.

For the complete process, including every required config field and troubleshooting a failed auto-verify, see our server verification guide.

First-Time Configuration

After your server is running, there are a few settings you’ll want to change immediately.

Essential Settings in config_gameplay.txt

The gameplay config lives at ~/.config/SCP Secret Laboratory/config/<port>/config_gameplay.txt on Linux, or the equivalent path on managed hosting (check your host’s file manager).

SettingDefaultWhat It Does
server_name(empty)Your server’s display name in the browser
max_players20Maximum concurrent players
friendly_firefalseWhether teammates can damage each other
contact_email(empty)Required for server verification
server_password(empty)Leave empty for public access

See our server settings guide for the full breakdown of every setting worth changing.

Making Yourself Admin

Remote Admin is how you moderate and control your server. Setting it up requires editing config_remoteadmin.txt in the same config folder.

Find the Members: section and add your Steam64 ID:

Members:
 - YourSteamId64@steam: owner

You can find your Steam64 ID using a SteamID lookup tool or from the server console when you connect (it logs every join with the player’s ID).

The default roles are owner, admin, and moderator, each with different permission levels. Once configured, press M in-game to open the Remote Admin panel.

Config Syntax Matters

config_remoteadmin.txt is sensitive to formatting. A misplaced space or wrong indentation can break permissions silently. Double-check the format matches the examples in the file.

What’s Next

Once your server is running and you have admin access, the usual next steps are:

SCP:SL runs entirely on community servers - there are no official ones. Every active player is on someone’s server. If you’re thinking about starting one, the community is always looking for well-run servers with good ping and active moderation.

Get your SCP:SL server →

Frequently Asked Questions

Only if you want it listed in the in-game server browser. Unverified servers still work - players just need to connect directly via IP and port. Verification is a review by Northwood's Safety & Compliance Team, not something a host can grant - the fastest path is the in-console !verify static command, with email as a fallback.

There's no hard cap built into the game. The default max_players setting is 20, but you can raise it as high as your hardware supports. Most community servers run 20-40 players. RAM and CPU become the limiting factors at higher counts.

Yes. Both the official LabAPI framework and the community EXILED framework work on self-hosted and managed servers. EXILED is the more popular option with a larger plugin ecosystem.

The default game port is 7777 (TCP and UDP). If you're self-hosting behind a router, you'll need to forward this port. Most managed hosts handle port configuration automatically.

Not automatically. Your base SCP:SL server auto-updates on restart, but the EXILED framework is a separate community project that needs its own update when a major game version drops, and plugins can lag behind that update. Check plugin compatibility before updating if your community depends on specific ones.