diff --git a/src/mpgame/Game_local.cpp b/src/mpgame/Game_local.cpp
--- a/src/mpgame/Game_local.cpp
+++ b/src/mpgame/Game_local.cpp
@@ -667,11 +667,15 @@ void idGameLocal::Init( void ) {
 	botItemTable = FindEntityDef( "bot_itemtable", false );
 	if ( botItemTable == NULL ) {
 		common->Warning( "bot_itemtable decl not found. Bot support disabled.\n" );
 	} else {
+#if !defined( __EMSCRIPTEN__ )
+		// Browser multiplayer is a snapshot client. Bot AI and its configuration
+		// files belong only to the authoritative native server.
 		botCharacterStatsManager.Init();
 		botFuzzyWeightManager.Init();
 		botWeaponInfoManager.Init();
 		botGoalManager.BotSetupGoalAI();
+#endif
 	}
 
 	gamestate = GAMESTATE_NOMAP;
