v1.0.0  ·  Paper / Spigot / Purpur 1.16+  ·  Free

Your server
restarts itself.

TPS drops. RAM spikes. Scheduled times. SmartRestart watches your server 24/7 and handles every restart automatically - with Discord alerts and a full countdown.

[12:00:01 INFO]: Enabling SmartRestart v1.0.0
╔══════════════════════════════════════════╗
Ash » SmartRestart v1.0.0
by HoriaMC
╠══════════════════════════════════════════╣
TPS » warn <17.0 | restart <15.0
RAM » warn >80% | restart >90%
Scheduled » 04:00, 16:00
Countdown » 1800s, 11 warnings
╚══════════════════════════════════════════╝
[12:00:01 INFO]: SmartRestart enabled.
CORE FEATURES

Everything you need to automate your server.

No external dependencies. Zero config to get started. Runs on Paper, Spigot, and Purpur. Minecraft 1.16+ with Java 17+.

Scheduled restarts

Set exact times with optional day-of-week filters. Multiple schedules supported: daily, weekdays, or any custom combination.

Cron-style

TPS monitoring

Tracks TPS every second. Restarts only after sustained low performance, not on brief spikes. Configurable threshold and duration.

Every 1s

RAM monitoring

Watches JVM heap usage. Separate warning and restart thresholds. Consecutive-seconds guard prevents premature triggers.

Heap-aware

Player-aware

Automatic restarts postpone when too many players are online. Configurable retry interval. Manual /sr now always bypasses.

Smart delay

Discord webhooks

Rich embeds for every event: restart scheduled, TPS drops, RAM spikes, maintenance toggled. Per-event on/off, colors, and copy.

Rich embeds

Maintenance mode

Pause all automatic restarts instantly with /sr maintenance. Manual restarts still work. Players and Discord are notified.

One command

Pre-restart commands

Run any console commands before shutdown: save-all, announcements, cleanup. Manage live with /sr precommand.

Empty-server auto-restart

When the server sits empty for N minutes, restart quietly to free memory. Zero-impact maintenance while nobody's watching.

HOW IT WORKS

Up and running in 3 minutes.

No complicated setup. No learning curve. Install, configure, done.

01
STEP 01

Install the plugin

Drop SmartRestart.jar into your Paper, Spigot, or Purpur server's plugins folder and restart. That's it: no configuration required to get started.

Minecraft 1.16+ · Java 17+
02
STEP 02

Configure once

Open config.yml and set your restart times, TPS/RAM thresholds, Discord webhook, and message styles. Reload in-game with /sr reload.

MiniMessage · Webhooks · Scheduling
03
STEP 03

It runs itself

SmartRestart monitors your server 24/7. Players get countdown warnings in chat and action bar. You get Discord notifications for every event.

Zero maintenance · Full control

Know what's happening.
Before it's a problem.

SmartRestart posts rich Discord embeds for every server event. Each event has its own toggle, color, title, and description - all in config.yml.

  • Restart triggered, imminent, or cancelled
  • TPS drops & RAM spikes with live values
  • Maintenance mode changes
  • Custom bot username, avatar, and footer
# server-logsSmartRestart BOT

One file.
Total control.

Everything lives in config.yml. Reload in-game with /sr reload - no server restart needed.

Player messages use MiniMessage formatting - full color and style control over every piece of text players see in chat and action bar.

scheduled:
  enabled: true
  restarts:
    - time: "04:00"
      days: daily

    - time: "16:00"
      days: [MONDAY, WEDNESDAY, FRIDAY, SATURDAY, SUNDAY]

empty-server:
  enabled: true
  empty-minutes: 10

Frequently asked questions

Everything server owners ask before installing. Didn't find your answer? Ask on Discord.

  • SmartRestart works on Minecraft 1.16 through the latest 1.21.x release. It requires Java 17 or newer.

  • Yes. Paper is the primary target and gets the richest API support, but SmartRestart also runs on Spigot and Purpur without modification. Folia support is on the roadmap.

  • It's free forever. No premium tier, no paid features, no telemetry, no ads. Every feature on this page is included for every user.

  • No. SmartRestart was built performance-first - TPS and RAM monitoring run on a lightweight async schedule, not on the main thread. The plugin's own CPU and memory footprint is negligible even on large networks.

  • Yes. Discord is optional. Disable it in config.yml and SmartRestart still handles scheduled restarts, TPS/RAM-based restarts, countdowns, and in-game alerts.

  • Not by itself - SmartRestart only triggers restarts when you tell it to. If you're replacing another auto-restart plugin, remove it first to avoid double restarts.

  • Every message is fully configurable with MiniMessage formatting - full color, gradients, clickable/hoverable text, and placeholders for time, reason, and threshold values. Live-reload with /sr reload, no server restart needed.

  • Join our Discord at discord.gg/XxkRG9kYS3. Bug reports, feature requests, and configuration questions are all welcome - we answer there first.

Free forever.
No strings attached.

No premium tier. No paywalls. No telemetry.
Paper / Spigot / Purpur 1.16+ · Java 17+ · v1.0.0

Ash - Free Minecraft Plugins · SmartRestart auto-restart for Paper