Collapse Sidebar


This function sets the custom ScreenGui|teleport GUI that will be shown to the local user during teleportation, prior to the teleport being invoked.

Note, the ScreenGui|teleport GUI will not be used if the destination place is in a different game. It will also not persist across multiple teleports and will need to be set prior to each one.

This function should only be used on the client. If the teleportation function is called from the server (as is the case with TeleportService/TeleportPartyAsync) then this function should be called on the client prior to this. One way of doing this is listening to a RemoteEvent that fires several seconds before teleportation.

-- Client

local TeleportService = game:GetService("TeleportService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")

local localPlayer = Players.LocalPlayer
local teleportGui = Instance.new("ScreenGui") -- for demonstration purposes

-- this RemoteEvent needs to be created on the server and fired before teleporting
local teleportEvent = ReplicatedStorage:WaitForChild("TeleportPrepare")

-- set the teleport gui so we are ready

    -- show the gui prior to the teleport
    local playerGui = localPlayer:WaitForChild("PlayerGui")
    teleportGui.Parent = playerGui

Loading screen

During a teleport, whilst the destination place is loading, the customLoadingScreen is parented to the CoreGui. Once the place has loaded the ScreenGui|loading screen is Instance/Parent|parented to nil.

This ScreenGui can be fetched at the destination place using TeleportService/GetArrivingTeleportGui, allowing you to parent it to the PlayerGui and perform your own transitions.

You are advised to also Instance/Parent|parent the ScreenGui to the PlayerGui in the start place whilst the teleport is initiating.

Studio Limitation

This service does not work during playtesting in Roblox Studio — To test aspects of your game using it, you must publish the game and play it in the Roblox application.


Name Type Default Description


The loading ScreenGui that is to be displayed during teleportation


Return Type Summary

This function does not return anything!

Code Samples

Teleporting the local player

This snippet demonstrates how TeleportService can be used to teleport the Players/LocalPlayer|LocalPlayer from the client.

It also shows how TeleportService/SetTeleportGui can be used to define a custom loading GUI. Note, this ScreenGui will need to be retrieved at the destination place using TeleportService/GetArrivingTeleportGui and be parented to the PlayerGui.