Skip to main content

Export data

This article describes how to export player and event data from PlayFab.

Export player account data

When you make a request to export a player’s data, the request is sent to a Queue Processing Agent (similar to deleting a player). The ExportMasterPlayerData API exports all data associated with the given PlayFabId, including data across all your titles, such as:
  • Statistics
  • Custom Data
  • Inventory
  • *Purchases *
  • Player-Created Items/UGC
  • Transaction History
  • Virtual Currency Balances
  • Characters
  • Group Memberships
  • Publisher Data
  • Credential Data
  • Account Linkages
  • Friends List
  • PlayStream Event History.
Please read Make sure you find all the data, which details how to make sure you have all of a player’s PlayFabIds. This API immediately returns a JobReceiptId, which you should store in your records for future reference. It may take some time before the export is available for download. Upon completion of the export, an email containing the export download link will be sent to the notification email address configured for the title. The completion of the task will also trigger a player_data_exported PlayStream event. The event contains the JobReceiptId as a property, as well as the ExportDownloadUrl property, which provides access to the exported data. Using either Automation Rules with Azure Functions or Webhooks, you can register to receive these events on an endpoint of your choosing and process as needed. The following example is how to use the Admin API with the C# SDK. If you would like to use a different SDK, select one from the list of PlayFab SDKs.
The URL will be available for up to 30 days after the export has completed. After this time, the file will be deleted, and you will need to initiate a new export request.

Format of exported data

The exported data is packaged in a ZIP archive whose name contains the JobReceiptId and the time of the export. The archive contains multiple files organized into a directory structure.

Export event data

PlayFab provides several types of event data—Custom Data, Entity Objects, and Entity Files.

Export Custom Data

Custom Data refers to a broad category of features that allow you to associate arbitrary data with a player. PlayFab provides methods to interact with the data from your game logic but doesn’t otherwise interpret or understand the data.

Legacy Player Data

When using the ExportMasterPlayerData API (as referenced in the Exporting PlayFab Data section), all Player Data properties can be found in the master_player_export.json file at the root of the ZIP archive:
  • “Publisher” data can be found at JSONPath: $.PublisherData
  • Per-title data can be found at JSONPath: $.Titles[*].CustomData
These values can also be retrieved via dedicated “get” APIs, should you only need to export these values. The advantage to the dedicated APIs is that they’ll return immediately. However, per this feature’s design, the right API will need to be called based on the specific type of data needed: GetUserData, GetUserInternalData, GetUserReadOnlyData, GetUserPublisherData, GetUserPublisherInternalData, GetUserPublisherReadOnlyData

Export Entity Objects

When using the ExportMasterPlayerData API, all Entity Objects can be found in the master_player_export.json file at the root of the ZIP archive: For master_player_account entity objects at JSONPath: $.CustomObjects For title_player_account entity objects at JSONPath: $.Titles[*].CustomObjects For character entity objects at JSONPath: $.Titles[].Characters[].CustomObjects Entity Objects can also be retrieved via the GetObjects API. If you already know which entities’ objects you’re looking for, using the dedicated APIs can be easier since it will return the objects immediately. However, the disadvantage is that the API will need to be called separately for the player’s master_player_account entity, each title_player_account entity, and each character entity.

Export Entity Files

When using the ExportMasterPlayerData API, all Entity Files associated with the player are added as-is to the ZIP archive in the /CustomFiles/ directory, specifically: For the player’s master_player_account entity, the files are under /CustomFiles/MasterPlayerFiles/* For title_player_account, the files are under /CustomFiles/TitlePlayerFiles/<TitlePlayerAccountId>/*
One subdirectory exists for each entity, with the title_player_account entity ID as the directory name.
Entity Files can also be downloaded directly. First, call the GetFiles API to get metadata about the entity’s files. Each file metadata document includes a DownloadUrl property, which can be used to download the file directly.
Last modified on August 10, 2026