diff --git a/search.lua b/search.lua
index 87cbf19a6ac08bd5036bb579751d593a8c21e6ff..b58a1c74697d5641aefe55e956ba0647c58851d0 100644
--- a/search.lua
+++ b/search.lua
@@ -124,11 +124,18 @@ local function show_formspec(playername, data)
 
 	list = list .. ";]"
 
+	local teleport_button = ""
+
+	-- show teleport button
+	if minetest.check_player_privs(playername, "teleport") then
+		teleport_button = "button_exit[4,11;4,1;teleport;Teleport]"
+	end
+
 		local formspec = [[
 				size[16,12;]
 				label[0,0;Search results (]] .. #data .. [[)]
 				button_exit[0,11;4,1;show;Show]
-				button_exit[4,11;4,1;teleport;Teleport]
+				]] .. teleport_button .. [[
 				button_exit[12,11;4,1;exit;Exit]
 				tablecolumns[color;text;text;text;text]
 				table[0,1;15.7,10;items;#999,Distance,Owner,Coords,Description]] .. list