What is the TSCN file format?
A .tscn file is a text scene created by the Godot Engine, the free and open-source engine for building 2D and 3D games. TSCN stands for "text scene," and each file describes a single scene tree: the nodes that make up a level, character, UI screen, or reusable component, along with their properties and connections.
The format is INI-style and readable. A file opens with a descriptor line such as [gd_scene format=3 uid="uid://cecaux1sm7mo0"], followed by [ext_resource] entries that link to external assets, [sub_resource] entries that embed data like materials and collision shapes, [node] entries that build the tree, and [connection] entries that wire up signals. Godot 3.x saves format=2; Godot 4.x saves format=3 and adds string-based UIDs so a scene can be tracked even after it moves. Because the format is plain text, it diffs and merges cleanly in Git, which is one reason teams prefer it over the binary .scn variant.
Security & safety
RISK: LOWA .tscn is plain UTF-8 text, so it cannot execute on its own. Scenes can reference GDScript (.gd) files that do run inside Godot, so treat scenes from untrusted projects with the same caution as any downloaded source code. Opening a .tscn in a text editor is harmless.
Format details
in a nutshellPrograms that open TSCN files
Technical details
deep spec| Encoding | UTF-8 plain text |
| Byte order | Not applicable (text format) |
| Container | INI-style sections with bracketed headings and key = value property lines |
| Compression | None; the text file is uncompressed. Godot compiles it to a binary form on import for faster loading. |
| Encryption | None by default |
| Typical size | A few hundred bytes to several hundred KB depending on node count and embedded sub-resources |
| Structure | Five ordered parts: a single [gd_scene] descriptor line, [ext_resource] entries pointing to external files, [sub_resource] entries holding embedded data, [node] entries describing the scene tree, and [connection] entries for signal wiring. An optional [editable] section marks instanced sub-scenes as editable. |
| Integrity | None built in |
| Platforms | Windows, macOS, Linux, Android, Web |
| Notes | The descriptor carries format=2 for Godot 3.x and format=3 for Godot 4.x. Godot 4 replaced incremental integer resource IDs with string-based uid values (uid://...). References inside the file use ExtResource("id") and SubResource("id"). Single-line comments start with a semicolon and are stripped when the editor re-saves the file. The .escn export variant uses the identical format but signals that the file came from another program and should not be hand-edited in Godot. |
| Human Readable | Yes, this is a design goal of the format for version control diffing and merging |
| Released | 2016 (Godot 2.x era; format=2 in Godot 3.x, format=3 in Godot 4.x) |
| Latest version | format=3 (Godot 4.x) |
| Specification | docs.godotengine.org |
TSCN conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about TSCN files.
Frequently asked questions
How do I open a .tscn file?
Can I edit a .tscn file by hand?
What is the difference between .tscn and .scn?
.tscn is text and diffs well in version control, while .scn is the compiled binary form that loads faster and is smaller. Godot generates a binary version on import.Why does my .tscn start with [gd_scene format=3]?
format=3 means it was saved by Godot 4.x; format=2 means Godot 3.x.