Version: Unity 6.6 Beta (6000.6)
Language : English
Build Analysis window reference
Cache location reference

Build history file reference

This section describes each file contained in the BuildHistory folder in more detail. The exact file formats and set of files might change between Unity versions, so don’t write code that depends on a specific schema unless otherwise stated.

The Build Analysis window uses the files in this folder to display the build history of your project. The following table describes the availability of each file for each build type:

File Description Availability
{guid}.buildreport Serialized build report with detailed build information. All builds.
BuildReportSummary.json Small JSON summary used to index and query the build history. All builds.
BuildLog.jsonl Structured log of the build process. All builds.
BuildPlayerTEP.json Profiling data for the Player build. Player builds only.
BuildContentTEP.json Profiling data for the content build. Content builds only.
ContentLayout.json Detailed layout of the content the build produced. Content builds only.
ScriptsOnlyCache.yaml Type usage information for code stripping. Content builds only.
ContentSizeSummary.txt Human-readable summary of content sizes. All builds.

BuildReport file

The {guid}.buildreport file is the serialized BuildReport for the build. It provides detailed information about the build process and its result. The file name is the build session GUID, which gives each report a unique name so that you can import several reports into external tools without conflicts.

Access this file in the Unity Editor through the BuildReport API, for example with BuildHistory.LoadBuildReport. External tools can read it with UnityDataTools.

The build report is a binary file that collects a broad range of information about the build. Some of this information overlaps with the JSON files in the build report directory, which are easier to parse from external tools. The availability of the data is as follows:

Member Description Availability
summary The overall result, target platform, timing, and total sizes. BuildReportSummary.json contains a subset of this data. All builds.
steps The build steps and the messages logged during each step. Similar to BuildLog.jsonl. All builds.
GetFiles() Every file the build wrote, including the files packed inside Unity archive files. All builds.
contentSummary Aggregate content statistics, such as total sizes and per-type and per-asset breakdowns. Summarized in ContentSizeSummary.txt. All builds.
packedAssets A per-object breakdown of each serialized file. Player and AssetBundle builds only.
GetRootAssetPaths() The root assets the build was made from. Content directory builds only.
scenesUsingAssets Which scenesA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary
reference each asset
Player builds, only when you set BuildOptions.DetailedBuildReport.
strippingInfo Managed code stripping information Player builds, on platforms that support code stripping.

For Player and AssetBundle builds, the build report describes only the content that the build actually produced:

  • A Player build that reuses content from a previous build, such as a scripts-only build, doesn’t include content information.
  • An incremental AssetBundle build reports only the AssetBundles that it rebuilt, not those it reused from a previous build.

Content directory builds always report the full content information, including incremental builds that reuse content from a previous build.

BuildReportSummary.json

BuildReportSummary is a small JSON file that summarizes the most important information about a build, such as the build session GUID, the build result, the build type, the target platform, and the build profileA set of customizable configuration settings to use when creating a build for your target platform. More info
See in Glossary
. It’s a subset of the information in the full build report.

This file acts as an index for the build history. Unity loads every BuildReportSummary.json into memory to drive listing and queries, so the file size is small. A build report directory must contain this file to be tracked in the build history. The file is also a convenient entry point for external tools, because it’s small and easy to parse.

BuildLog.jsonl

BuildLog.jsonl is a structured log of the build process in JSON Lines format. Each line is a complete, self-contained JSON object, which makes the file convenient to read incrementally or to filter line by line. For example:

{"timestamp":"2026-05-04T15:39:12.000123456Z","thread_id":"12345","log_level":"Info","message":"Building content for StandaloneWindows64"}

Profiling files

The profiling files record how long the individual steps of a build take. They use the Trace Event format, which you can view in a trace viewer such as Perfetto.

  • BuildContentTEP.json records profiling data for the content phase of a content directory build.
  • BuildPlayerTEP.json records profiling data for a Player build. It’s a copy of the Library/Bee/buildreport.json file that the Player build process writes, placed in the build report directory to make it easier to find and to facilitate comparison between builds.

ContentLayout.json

ContentLayout.json describes the content that a content directory build produced. Use it to find which source assets a build included and which serialized file each one ended up in, to inspect the dependencies between the files the build produced, and to understand what contributes to the size of the content.

ContentLayout.json is a superset of the build manifest that Unity ships with the content. The build manifest is a minimal summary that contains only what Unity needs to load the content at runtime. ContentLayout.json isn’t shipped, and adds additional information about the build, including a mapping from the built content back to the source assets in your project. It doesn’t describe packaging details, such as whether Unity stores the content inside Unity archive files, and it contains no per-object or type information. For object-level analysis, use UnityDataTools.

The schema might change between versions. When it does, Unity increments the version number recorded in the file. For a description of the file’s structure and the C# types that define its schema, refer to ContentLayout.json in the UnityDataTools documentation.

ScriptsOnlyCache.yaml

ScriptsOnlyCache.yaml records the types that the build uses. Unity uses it to make sure that the types a build relies on aren’t stripped out, and it’s the same file format that Player builds use to track type usage for incremental builds. For more information, refer to Managed code stripping for content builds.

ContentSizeSummary.txt

ContentSizeSummary.txt is a human-readable summary of the size of the content in the build. For the full statistics, use BuildReport.contentSummary. Unity doesn’t write this file for builds that don’t produce content, such as Player builds that reuse content from a previous build.

Additional resources

Build Analysis window reference
Cache location reference