{"id":2909,"date":"2023-03-19T07:41:07","date_gmt":"2023-03-19T07:41:07","guid":{"rendered":"https:\/\/xgamingserver.com\/blog\/?p=2909"},"modified":"2026-06-15T19:21:52","modified_gmt":"2026-06-15T19:21:52","slug":"how-to-disable-the-joining-leaving-message-on-your-minecraft-server","status":"publish","type":"post","link":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/","title":{"rendered":"How to disable the Joining\/Leaving message on your Minecraft server"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Every time a player connects to your Minecraft server, the familiar yellow line appears in chat: &#8220;PlayerName joined the game.&#8221; When they disconnect, you get &#8220;PlayerName left the game.&#8221; For a small whitelisted SMP this is harmless, even friendly. But on a busy public server, an authentication-gated network, or a roleplay world where immersion matters, that constant stream of system spam can drown out actual conversation and look unprofessional. This guide explains exactly how to turn those messages off, why vanilla Minecraft cannot do it on its own, and how to fine-tune the behavior with EssentialsX so you can hide messages entirely, restore the defaults, customize the text, or silence them only for specific players.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The short answer: vanilla can&#8217;t, EssentialsX can<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Here is the reality that trips up most server owners: <strong>vanilla Minecraft has no setting to disable the join and leave messages.<\/strong> There is no key in <code>server.properties<\/code>, no <code>\/gamerule<\/code>, and no in-game command that suppresses them. Those messages are generated directly by the server software whenever a player&#8217;s connection state changes, and Mojang has never exposed a toggle for it. If you are running the plain <code>server.jar<\/code> straight from Mojang, you are stuck with them.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To gain control, you need a plugin-capable server fork \u2014 <strong>Paper<\/strong>, Spigot, Bukkit, or Purpur \u2014 running the <strong>EssentialsX<\/strong> plugin. EssentialsX intercepts the join and quit broadcasts and lets you decide what (if anything) gets shown. The relevant settings live in EssentialsX&#8217;s <code>config.yml<\/code> under two keys: <code>custom-join-message<\/code> and <code>custom-quit-message<\/code>. Get these right and you can hide the messages completely, change their text, or keep them visible for everyone except staff.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you are still on the vanilla jar and want plugin support, you&#8217;ll first need to switch your server type. Paper is the standard choice because it is fast, stable, and fully compatible with EssentialsX. Hosts that let you flip the server jar from a dropdown make this a two-minute job; on <a href=\"https:\/\/xgamingserver.com\/minecraft-server-hosting\">a managed Minecraft server plan<\/a> you can swap to Paper and reinstall EssentialsX without touching the command line.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why the vanilla messages exist and can&#8217;t be toggled<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The join\/leave messages are part of Minecraft&#8217;s core player-connection lifecycle. When a client finishes the login handshake and is added to the player list, the server broadcasts a translatable chat component (<code>multiplayer.player.joined<\/code>) to everyone online. The disconnect path broadcasts <code>multiplayer.player.left<\/code>. Because these are baked into the server&#8217;s connection handling rather than read from a config file, there is no flag to switch them off in vanilla. This is also why you&#8217;ll see them duplicated or behave oddly across proxy networks (BungeeCord, Velocity) \u2014 each backend server and the proxy itself can emit their own connection events. The clean solution is to suppress them at one layer (usually the backend, via EssentialsX) so the player only sees one message, or none at all.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Setting up EssentialsX to control join\/leave messages<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">EssentialsX is the most widely used utility plugin in the Minecraft ecosystem. Beyond join\/leave control it provides homes, warps, kits, an economy, and moderation tools, so it&#8217;s likely already on your server. If not, download the latest build from the official site (essentialsx.net) and drop the jar into your <code>plugins<\/code> folder, then restart. After the first start, EssentialsX generates its config files; the one you want is <code>plugins\/Essentials\/config.yml<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The two keys that matter<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Open <code>config.yml<\/code> and find (or add) these two keys. Their values determine everything:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Value<\/th><th>Behavior<\/th><\/tr><\/thead><tbody><tr><td><code>\"none\"<\/code><\/td><td>Use the default Minecraft message (&#8220;Player joined\/left the game&#8221;). This is the default value if you never touch the key.<\/td><\/tr><tr><td><code>\"\"<\/code> (empty string)<\/td><td>Hide the message entirely \u2014 nothing is broadcast.<\/td><\/tr><tr><td><code>\"custom text with placeholders\"<\/code><\/td><td>Show your own message instead of the vanilla one.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">This is the single most important distinction in the entire guide, and the one people get wrong: <strong><code>\"none\"<\/code> is not the same as <code>\"\"<\/code><\/strong>. The word <code>none<\/code> tells EssentialsX to fall back to the normal Minecraft message \u2014 it does <em>not<\/em> hide anything. To actually disable a message you must use an <strong>empty string<\/strong>: two double-quote characters with nothing between them.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Disabling both messages completely<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">To silence both the join and the leave broadcasts, set both keys to an empty string:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># plugins\/Essentials\/config.yml\n\n# Hide the join message entirely\ncustom-join-message: \"\"\n\n# Hide the leave (quit) message entirely\ncustom-quit-message: \"\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Save the file, then reload EssentialsX with <code>\/essentials reload<\/code> in console or in-game, or simply restart the server. From that point on, players will connect and disconnect silently \u2014 no yellow lines in chat at all.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Disabling only one of them<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You don&#8217;t have to disable both. A common setup is to keep the join message (so players know who arrived) but hide the leave message (which often spams during lag-driven disconnects or server restarts). Just set the one you want to hide to <code>\"\"<\/code> and leave the other at <code>\"none\"<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Keep the normal join message, hide the leave message\ncustom-join-message: \"none\"\ncustom-quit-message: \"\"<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Customizing the messages instead of hiding them<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sometimes you don&#8217;t want silence \u2014 you want better-looking, branded messages. EssentialsX supports placeholders inside <code>custom-join-message<\/code> and <code>custom-quit-message<\/code>, so you can build something far more useful than the plain default. The most common placeholders are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>{PLAYER}<\/code> \u2014 the player&#8217;s display name (includes nickname\/prefix if set)<\/li>\n<li><code>{USERNAME}<\/code> \u2014 the player&#8217;s raw account username<\/li>\n<li><code>{ONLINE}<\/code> \u2014 number of players currently online<\/li>\n<li><code>{UNIQUE}<\/code> \u2014 number of unique players who have ever joined<\/li>\n<li><code>{UPTIME}<\/code> \u2014 how long the server has been running<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s a polished example using color codes (the <code>&<\/code> prefix) and placeholders:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Branded, colored custom messages\ncustom-join-message: \"&a[+] &f{PLAYER} &7joined &8(&7{ONLINE} online&8)\"\ncustom-quit-message: \"&c[-] &f{PLAYER} &7left the server\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">After editing, run <code>\/essentials reload<\/code> and test by reconnecting. If a color code doesn&#8217;t render, double-check you used the ampersand format EssentialsX expects and that the value is wrapped in quotes (YAML can misinterpret unquoted strings that start with special characters).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The first-join message is separate: announce-format<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">One detail that surprises a lot of admins: hiding the regular join message does <strong>not<\/strong> hide the special first-time-join announcement. When a brand-new player connects for the very first time, EssentialsX broadcasts a separate &#8220;newbie&#8221; message \u2014 by default something like &#8220;Welcome PlayerName to the server!&#8221; This is controlled by its own block in <code>config.yml<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>newbies:\n  # Set to '' (empty) to disable the first-join broadcast entirely\n  announce-format: ''\n  # Optional welcome message sent privately to the new player\n  # spawnpoint, kit, etc. live in this section too<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;ve disabled <code>custom-join-message<\/code> but new players are still triggering a welcome line, the <code>newbies: announce-format:<\/code> key is the culprit. Set it to an empty string (<code>''<\/code>) to silence it. If you actually like the welcome announcement and only want to disable repeat join spam, leave <code>announce-format<\/code> alone and just blank out <code>custom-join-message<\/code> \u2014 the two operate independently.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Silent join\/leave for specific players (staff vanish)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Disabling messages server-wide is one approach. But often you want everyone&#8217;s join\/leave visible <em>except<\/em> for staff who are hopping on and off to moderate. EssentialsX handles this with two permission nodes:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Permission node<\/th><th>Effect<\/th><\/tr><\/thead><tbody><tr><td><code>essentials.silentjoin<\/code><\/td><td>The player&#8217;s join message is suppressed for everyone<\/td><\/tr><tr><td><code>essentials.silentquit<\/code><\/td><td>The player&#8217;s leave message is suppressed for everyone<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Assign these through your permissions plugin (LuckPerms is the standard). For example, granting both nodes to a &#8220;staff&#8221; group lets moderators slip in and out invisibly while normal players still get the usual broadcasts. Note that EssentialsX permission nodes use the <code>essentials.<command><\/code> format and are <strong>not auto-inclusive<\/strong> \u2014 granting a parent node does not automatically grant children, so add each node you need explicitly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This selective approach is usually the best of both worlds: regular players keep the social cue of seeing friends arrive, while staff get the clean, unannounced access they need for moderation. For the exact, current spelling of any permission node, check the EssentialsX wiki before deploying \u2014 node names occasionally shift between major versions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Proxy networks: where to put the config<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">If you run a multi-server network behind BungeeCord, Waterfall, or Velocity, join\/leave messages get complicated because both the proxy and each backend server can emit them. A player connecting to the network might trigger one message from the proxy and another from the lobby server, then more each time they switch servers. The cleanest fix is to decide on a single source of truth: typically you disable the messages on every backend (with the EssentialsX <code>\"\"<\/code> trick above) and let a network-wide plugin handle a single, coherent &#8220;joined the network&#8221; broadcast \u2014 or disable them everywhere if you want total silence. Applying the empty-string config to every backend&#8217;s <code>config.yml<\/code> stops the per-server spam that players find most annoying.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step-by-step checklist<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Confirm your server runs <strong>Paper<\/strong> (or Spigot\/Bukkit\/Purpur). Vanilla cannot do this.<\/li>\n<li>Install <strong>EssentialsX<\/strong> if it isn&#8217;t already present, then restart to generate config files.<\/li>\n<li>Open <code>plugins\/Essentials\/config.yml<\/code>.<\/li>\n<li>Set <code>custom-join-message: \"\"<\/code> and\/or <code>custom-quit-message: \"\"<\/code> to hide messages. Use <code>\"none\"<\/code> to keep the default.<\/li>\n<li>If new players still get announced, set <code>newbies: announce-format: ''<\/code>.<\/li>\n<li>For staff-only silence, grant <code>essentials.silentjoin<\/code> and <code>essentials.silentquit<\/code> instead of (or alongside) the global config.<\/li>\n<li>Run <code>\/essentials reload<\/code> or restart the server.<\/li>\n<li>Reconnect to verify the behavior.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;d like a refresher on installing plugins, switching to Paper, or editing config files through a control panel, our <a href=\"https:\/\/xgamingserver.com\/docs\/minecraft\">Minecraft server documentation<\/a> walks through the panel workflow with screenshots. And while you&#8217;re tuning chat behavior, you may also want to <a href=\"https:\/\/xgamingserver.com\/blog\/how-to-disable-animals-spawning-on-your-minecraft-server\/\">control which mobs spawn<\/a> or <a href=\"https:\/\/xgamingserver.com\/blog\/how-to-temp-mute-a-player-in-your-minecraft-server\/\">temporarily mute a disruptive player<\/a> \u2014 both use the same EssentialsX configuration approach you&#8217;ve just learned.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently asked questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Can I disable join\/leave messages without any plugins?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">No. Vanilla Minecraft offers no setting \u2014 no <code>server.properties<\/code> key, no game rule, and no command \u2014 to disable the join and leave messages. They are generated directly by the server&#8217;s connection-handling code. To control them you must run a plugin-capable fork such as Paper or Spigot together with EssentialsX (or another chat plugin that intercepts the events). If you&#8217;re on the stock Mojang <code>server.jar<\/code>, switching to Paper is the prerequisite, and it&#8217;s a drop-in replacement that keeps your existing world.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What&#8217;s the difference between &#8220;none&#8221; and &#8220;&#8221; in custom-join-message?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This is the trap that catches most people. <code>\"none\"<\/code> tells EssentialsX to use the <em>default<\/em> Minecraft message \u2014 &#8220;Player joined the game&#8221; \u2014 and is the value the key holds if you never edit it. An empty string <code>\"\"<\/code> (two quotes with nothing between) tells EssentialsX to broadcast <em>nothing<\/em>, hiding the message entirely. So if you set the value to <code>none<\/code> expecting silence, you&#8217;ll still see the vanilla message. Always use <code>\"\"<\/code> to actually disable it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How do I hide the leave message but keep the join message?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Set the two keys independently. Use <code>custom-join-message: \"none\"<\/code> to keep the normal join broadcast, and <code>custom-quit-message: \"\"<\/code> to hide the leave message. This is a popular configuration because leave messages tend to spam the most \u2014 every lag spike, restart, or kicked connection produces one \u2014 while join messages remain a useful social signal. Run <code>\/essentials reload<\/code> after saving so the change takes effect immediately.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Why do new players still trigger a welcome message after I disabled join messages?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Because the first-join announcement is a separate feature. EssentialsX broadcasts a one-time &#8220;welcome&#8221; message for brand-new players via the <code>newbies:<\/code> section of <code>config.yml<\/code>, controlled by the <code>announce-format<\/code> key \u2014 completely independent of <code>custom-join-message<\/code>. To stop it, set <code>announce-format: ''<\/code> (an empty string). If you want to keep welcoming newcomers but silence repeat joins, do the opposite: blank out <code>custom-join-message<\/code> and leave <code>announce-format<\/code> as it is.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can I make only my staff join and leave silently?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Yes \u2014 use the <code>essentials.silentjoin<\/code> and <code>essentials.silentquit<\/code> permission nodes. Grant them to your staff group through a permissions plugin like LuckPerms, and those players will connect and disconnect without any broadcast, while everyone else&#8217;s messages still show normally. Remember that EssentialsX nodes are not auto-inclusive, so you must grant each node explicitly. This is the standard way moderators stay invisible while keeping the community-friendly broadcasts for regular players.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Does this work the same on a BungeeCord or Velocity network?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The EssentialsX config works per-backend, so you&#8217;d apply the <code>custom-join-message: \"\"<\/code> and <code>custom-quit-message: \"\"<\/code> settings to each backend server&#8217;s <code>config.yml<\/code>. On a proxy network, both the proxy and the individual servers can emit connection messages, so you may see duplicates if you only disable them in one place. The cleanest result comes from suppressing them on every backend and, if you want a single network-wide announcement, handling that through a dedicated proxy-level plugin instead. For a deeper look at server-level configuration like world types and other settings, see our guide on <a href=\"https:\/\/xgamingserver.com\/blog\/how-to-change-the-level-type-of-your-minecraft-server\/\">changing your server&#8217;s level type<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Wrapping up<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Disabling Minecraft&#8217;s join and leave messages comes down to one fact and one plugin: vanilla can&#8217;t do it, and EssentialsX can. Set <code>custom-join-message<\/code> and <code>custom-quit-message<\/code> to an empty string <code>\"\"<\/code> to hide them, use <code>\"none\"<\/code> to restore the defaults, add placeholders for branded custom text, blank out <code>newbies: announce-format<\/code> to stop first-join welcomes, and reach for the <code>essentials.silentjoin<\/code> \/ <code>essentials.silentquit<\/code> nodes when you only want staff to come and go quietly. With those four levers you have complete, granular control over connection chat \u2014 whether you want total silence or a polished, professional welcome.<\/p>\n\n\n<!-- xg-tools-mesh -->\n\n<div class=\"wp-block-group xg-tools-box is-layout-flow wp-block-group-is-layout-flow\" style=\"border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:18px 22px;margin-top:8px;background:rgba(76,175,80,.04);\">\n<h3 class=\"wp-block-heading\">Free Minecraft Tools<\/h3>\n<p class=\"wp-block-paragraph\">Speed up your server with our free Minecraft tools:<\/p>\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/xgamingserver.com\/tools\/minecraft\/give-command\">Give Command Generator<\/a><\/li><li><a href=\"https:\/\/xgamingserver.com\/tools\/minecraft\/ore-distribution\">Ore Distribution Chart<\/a><\/li><li><a href=\"https:\/\/xgamingserver.com\/tools\/minecraft\/enchantment-calculator\">Enchantment Calculator<\/a><\/li><li><a href=\"https:\/\/xgamingserver.com\/tools\/minecraft\/achievement-generator\">Achievement Generator<\/a><\/li><\/ul>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>Every time a player connects to your Minecraft server, the familiar yellow line appears in chat: &#8220;PlayerName joined the game.&#8221; When they disconnect, you get &#8220;PlayerName left the game.&#8221; For a small whitelisted SMP this is harmless, even friendly. But on a busy public server, an authentication-gated network, or a roleplay world where immersion matters, [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":2910,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_gspb_post_css":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[19,66],"tags":[],"class_list":["post-2909","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-minecraft-server-docs","category-plugins-mods"],"blocksy_meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.5 (Yoast SEO v26.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to disable the Joining\/Leaving message on your Minecraft server - XGamingServer<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to disable the Joining\/Leaving message on your Minecraft server\" \/>\n<meta property=\"og:description\" content=\"Every time a player connects to your Minecraft server, the familiar yellow line appears in chat: &#8220;PlayerName joined the game.&#8221; When they disconnect, you get &#8220;PlayerName left the game.&#8221; For a small whitelisted SMP this is harmless, even friendly. But on a busy public server, an authentication-gated network, or a roleplay world where immersion matters, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\" \/>\n<meta property=\"og:site_name\" content=\"XGamingServer\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/web.facebook.com\/xgamingserver69\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-03-19T07:41:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-15T19:21:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png\" \/>\n\t<meta property=\"og:image:width\" content=\"770\" \/>\n\t<meta property=\"og:image:height\" content=\"433\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Youssef Ayman\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@xgamingserver\" \/>\n<meta name=\"twitter:site\" content=\"@xgamingserver\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Youssef Ayman\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\"},\"author\":{\"name\":\"Youssef Ayman\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e\"},\"headline\":\"How to disable the Joining\/Leaving message on your Minecraft server\",\"datePublished\":\"2023-03-19T07:41:07+00:00\",\"dateModified\":\"2026-06-15T19:21:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\"},\"wordCount\":2053,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png\",\"articleSection\":[\"Minecraft\",\"Plugins &amp; Mods\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\",\"url\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\",\"name\":\"How to disable the Joining\/Leaving message on your Minecraft server - XGamingServer\",\"isPartOf\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png\",\"datePublished\":\"2023-03-19T07:41:07+00:00\",\"dateModified\":\"2026-06-15T19:21:52+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage\",\"url\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png\",\"contentUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/xgamingserver.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Minecraft\",\"item\":\"https:\/\/xgamingserver.com\/blog\/category\/minecraft-server-docs\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to disable the Joining\/Leaving message on your Minecraft server\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#website\",\"url\":\"https:\/\/xgamingserver.com\/blog\/\",\"name\":\"XGamingServer\",\"description\":\"Dedicated Game Server Hosting\",\"publisher\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/xgamingserver.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#organization\",\"name\":\"XGamingServer\",\"url\":\"https:\/\/xgamingserver.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg\",\"contentUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg\",\"width\":\"1024\",\"height\":\"1024\",\"caption\":\"XGamingServer\"},\"image\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/web.facebook.com\/xgamingserver69\/\",\"https:\/\/x.com\/xgamingserver\",\"https:\/\/www.instagram.com\/xgamingserver\/\",\"https:\/\/www.linkedin.com\/company\/xgamingserver\/\",\"https:\/\/www.pinterest.com\/xgamingserver\/\",\"https:\/\/www.youtube.com\/channel\/UCHnOtWxpzaL2r3jM9Jm40EQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e\",\"name\":\"Youssef Ayman\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g\",\"caption\":\"Youssef Ayman\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to disable the Joining\/Leaving message on your Minecraft server - XGamingServer","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/","og_locale":"en_US","og_type":"article","og_title":"How to disable the Joining\/Leaving message on your Minecraft server","og_description":"Every time a player connects to your Minecraft server, the familiar yellow line appears in chat: &#8220;PlayerName joined the game.&#8221; When they disconnect, you get &#8220;PlayerName left the game.&#8221; For a small whitelisted SMP this is harmless, even friendly. But on a busy public server, an authentication-gated network, or a roleplay world where immersion matters, [&hellip;]","og_url":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/","og_site_name":"XGamingServer","article_publisher":"https:\/\/web.facebook.com\/xgamingserver69\/","article_published_time":"2023-03-19T07:41:07+00:00","article_modified_time":"2026-06-15T19:21:52+00:00","og_image":[{"url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png","width":770,"height":433,"type":"image\/png"}],"author":"Youssef Ayman","twitter_card":"summary_large_image","twitter_creator":"@xgamingserver","twitter_site":"@xgamingserver","twitter_misc":{"Written by":"Youssef Ayman","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#article","isPartOf":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/"},"author":{"name":"Youssef Ayman","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e"},"headline":"How to disable the Joining\/Leaving message on your Minecraft server","datePublished":"2023-03-19T07:41:07+00:00","dateModified":"2026-06-15T19:21:52+00:00","mainEntityOfPage":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/"},"wordCount":2053,"commentCount":0,"publisher":{"@id":"https:\/\/xgamingserver.com\/blog\/#organization"},"image":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage"},"thumbnailUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png","articleSection":["Minecraft","Plugins &amp; Mods"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/","url":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/","name":"How to disable the Joining\/Leaving message on your Minecraft server - XGamingServer","isPartOf":{"@id":"https:\/\/xgamingserver.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage"},"image":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage"},"thumbnailUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png","datePublished":"2023-03-19T07:41:07+00:00","dateModified":"2026-06-15T19:21:52+00:00","breadcrumb":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#primaryimage","url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png","contentUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/xgamingserver.com\/blog\/how-to-disable-the-joining-leaving-message-on-your-minecraft-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/xgamingserver.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Minecraft","item":"https:\/\/xgamingserver.com\/blog\/category\/minecraft-server-docs\/"},{"@type":"ListItem","position":3,"name":"How to disable the Joining\/Leaving message on your Minecraft server"}]},{"@type":"WebSite","@id":"https:\/\/xgamingserver.com\/blog\/#website","url":"https:\/\/xgamingserver.com\/blog\/","name":"XGamingServer","description":"Dedicated Game Server Hosting","publisher":{"@id":"https:\/\/xgamingserver.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/xgamingserver.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/xgamingserver.com\/blog\/#organization","name":"XGamingServer","url":"https:\/\/xgamingserver.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg","contentUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg","width":"1024","height":"1024","caption":"XGamingServer"},"image":{"@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/web.facebook.com\/xgamingserver69\/","https:\/\/x.com\/xgamingserver","https:\/\/www.instagram.com\/xgamingserver\/","https:\/\/www.linkedin.com\/company\/xgamingserver\/","https:\/\/www.pinterest.com\/xgamingserver\/","https:\/\/www.youtube.com\/channel\/UCHnOtWxpzaL2r3jM9Jm40EQ"]},{"@type":"Person","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e","name":"Youssef Ayman","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g","caption":"Youssef Ayman"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/03\/blog-background-37.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts\/2909","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/comments?post=2909"}],"version-history":[{"count":3,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts\/2909\/revisions"}],"predecessor-version":[{"id":22514,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts\/2909\/revisions\/22514"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/media\/2910"}],"wp:attachment":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/media?parent=2909"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/categories?post=2909"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/tags?post=2909"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}