Palworld server analytics, read locally.

A small ServerStats sidecar on the same machine reads Palworld's official REST API on 127.0.0.1 (server FPS, frame time, players and uptime; guilds and bases with the game-data API on) and sends it out. Keep the REST port firewalled.

See server FPS and frame time, who plays and which guilds keep your server alive, and when bases start slowing everything down.

Free for one server. No card needed.

Questions it answers for Palworld servers

What the demo dashboard answers for this game.

Why does the server stutter?

Server FPS and frame time, with an alert below 20 fps, next to the player count.

Who keeps the server alive?

Regulars by playtime, plus active guilds and guild sizes with the game-data API on.

Are bases the problem?

Base camps over time against server FPS.

When is it full?

Players online through the day and week, so you restart when nobody's on.

Is it growing?

New players and how many come back.

Do supporters stick around?

Store purchases matched to players' Steam IDs, when you connect Tebex, PayNow or CraftingStore (Operator).

What ServerStats tracks on Palworld servers

A Linux sidecar on the same machine reads Palworld's official REST API on 127.0.0.1 and only connects out.

Performance

  • Server FPS and frame time every 10 seconds
  • FPS drops: under 20 fps for three polls in a row
  • Loaded and active characters by type: players, base pals, wild pals, NPCs (game-data API)
  • REST API response time, the game process's CPU and memory, host metrics

Players

  • Sessions from the player list every 30 seconds, joins and quits by reason
  • Ping, level and level-ups
  • Minutes by map zone on an 8×8 grid (coordinates never leave the machine)
  • New and returning players, D1, D7 and D30 retention

World

  • In-game days, base camps and buildings per player
  • Active guilds, guild sizes and base workers (game-data API)
  • Server version, and changes to rates, limits and PvP

Moderation (opt-in)

  • Kick, timed ban and unban, announcements and saves from the dashboard
  • Store purchases matched to Steam players (Operator)

No install yet? Basic mode reads A2S on the query port (27015 by default, set with -queryport). The count it reports can lag behind. Check any Palworld server with the Palworld server status checker.

Plugin-specific payment and gamemode integrations for Palworld are planned. The general dashboard and payments log work today.

The number that matters: server FPS

20fps
Below this for 30 seconds is recorded as an FPS drop
Read from
REST /v1/api/metrics
Every
10 seconds
FPS drop
Under 20 for 3 polls
Next to
Players, bases, characters

Palworld's dedicated server reports its own server FPS and frame time through the official REST API. When FPS falls, pals stop working smoothly, fights stutter and players rubber-band.

ServerStats reads it every 10 seconds and records an FPS drop when it stays under 20 for three polls. It puts FPS next to the player count, base camps and, with the game-data API on, the characters loaded, so you can see which one it follows. Set a threshold alert to be pinged in Discord.

The REST API listens on every interface by default and uses plain HTTP with Basic auth, so keep port 8212 firewalled. The sidecar reads it on 127.0.0.1.

One sidecar, on the same machine.

Works with

  • Palworld dedicated server
  • Official REST API
  • PalWorldSettings.ini
  • Linux sidecar (Windows soon)
  • Runs next to your server and connects out only. No ports to open.
  • A one-time claim code, then the sidecar signs everything it sends with its own key. No reusable secret is stored on your server or ours.
  • Player IDs are keyed hashes in analytics. Player IP addresses are never sent to us.
serverstats-sidecar.yml
# Linux x64 sidecar (Windows build coming soon)
# 1. serverstats-sidecar init palworld > serverstats-sidecar.yml
# 2. In serverstats-sidecar.yml set:
claim: "SS-XXXX-XXXX-XXXX"
palworld:
  admin_password_file: /etc/serverstats/palworld-admin-password
# PalWorldSettings.ini: RESTAPIEnabled=True and an AdminPassword.
# Keep port 8212 firewalled; the sidecar reads it on 127.0.0.1.
# 3. serverstats-sidecar run

Palworld questions

How do I check my Palworld server's FPS?

Turn on the REST API (RESTAPIEnabled=True and an AdminPassword in PalWorldSettings.ini). Its /v1/api/metrics endpoint reports server FPS and frame time, and the ServerStats sidecar reads it every 10 seconds and keeps the history.

Is it safe to enable the REST API?

Yes, if the port stays closed to the internet. The REST API listens on all interfaces by default, so firewall port 8212. The sidecar reads it on 127.0.0.1 and only connects out.

Do I need mods?

No. The official REST API covers server FPS, players and uptime. Guild and base data need the server's game-data API (start it with -enable-gamedata-api).

Does it work on hosted servers?

Only if your host lets you run the sidecar (a Linux x64 program; Windows coming soon) on the same machine. Otherwise basic mode still shows players and uptime from the query port.

Are Xbox and other non-Steam players tracked?

Yes, under Palworld's own player id. Steam players are linked by SteamID64, so they match across your other Steam games and your store.

Can I kick or ban from the dashboard?

Yes, with moderation on: kick, ban (timed bans are lifted by the sidecar), unban, announcements and saves. The REST API has no private messages or mute.

Is it free?

Free covers one server with 24 hours of history, forever, with no card. Operator is $9.99 a month for 10 servers and 90 days of history, which you need for week-on-week trends and D7 or D30 retention. Yearly billing gives two months free.

Related games

One ServerStats account covers every game you run.

Start with one Palworld server, free

Run the sidecar and see your first numbers today.