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. |
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:
Content directory builds always report the full content information, including incremental builds that reuse content from a previous build.
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 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"}
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 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 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 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.