.BSP

BSP File

Binary Space Partitioned Map File
Ask a question
QUICK ANSWER

A BSP file is a compiled 3D game map used by Quake, Half-Life, Counter-Strike 2, Team Fortress 2, and related engines. To play a custom map, place the .bsp in the game's maps folder and load it from the console. To view or edit it, use TrenchBroom (Quake family) or Hammer Editor with BSPSource decompiler (Source/CS2). BSP variants from different engines are not interchangeable.

Developer: id Software (original Quake BSP); Valve Corporation (GoldSrc/Source variants) Category: Game Files MIME: application/octet-stream
OPENS ON Windows macOS Linux
Related: .OBB · .PAK · .ROFL · .PACKAGE

On this page

19k+ extensions indexed
Last reviewed Jun 21, 2026

Not sure what your file is?

Drop any file into our identifier - we read just the first bytes to name the format.

Identify a file

What is the BSP file format?

A .bsp file is a compiled binary 3D game level, named after the Binary Space Partitioning algorithm used to recursively divide 3D space for efficient real-time rendering. The format was introduced in 1996 with id Software's Quake and has since branched into several closely related but mutually incompatible variants used by different game engines.

The file uses a lump-based binary container: a fixed header stores a magic number, a version integer, and a directory of numbered lumps. Each lump is a contiguous data block holding a specific category of data - BSP tree nodes, vertices, faces, edges, lightmaps, visibility (PVS) data, entity spawn-point definitions, and texture or material references. Entity data such as spawn points, triggers, and item pickups is stored as plain ASCII key-value pairs within a dedicated lump.

Major incompatible variants include:

  • Quake 1 (BSP29): version int = 29; id Software, 1996.
  • GoldSrc / Half-Life 1 (BSP30): version int = 30; Valve, 1998.
  • Quake 2 / Quake 3 (IBSP v38/v46): ASCII magic IBSP, then version integer.
  • Source Engine (VBSP): ASCII magic VBSP, versions 17-21 depending on game (CS:GO, TF2, L4D2).
  • Source 2 (VBSP2): VBSP magic, version 29; used in CS2 and Half-Life: Alyx.

.bsp files are compiled outputs, not source files. Level designers work in .vmf (Valve Map Format) or .map files and compile to .bsp using vbsp.exe (Source Engine) or q3map2 (Quake family).

Security & safety

RISK: MEDIUM

BSP files themselves are static data and cannot execute code. However, loading a maliciously crafted BSP in a vulnerable game engine could trigger buffer overflows or heap corruption bugs (historical CVEs exist for Quake-engine games). Risk is primarily relevant when downloading custom maps from untrusted sources for multiplayer games; official Steam Workshop maps are generally safer.

Format details

in a nutshell
FULL NAMEBinary Space Partitioned Map Fileaka BSP Map, Quake BSP
DEVELOPERid Software (original Quake BSP); Valve Corporation (GoldSrc/Source variants)since 1996 (Quake 1.0, id Software)
CATEGORYGame Files
MIME TYPEapplication/octet-stream
TYPEBinary compiled game level (3D map data with BSP tree, lightmaps, entities)
This extension is also used by…
  • Quake 1 BSP (BSP29) - Original 1996 id Software format, no ASCII magic, version number 29 at offset 0.
  • Quake 3 / Quake Live BSP (IBSP v46) - Uses 'IBSP' magic like Quake 2 but version 46; used by open-source engines (ioquake3, OpenArena).

Programs that open BSP files

Windows7 apps
Irrlicht Open-source 3D graphics engine SDK that can load and render Quake 2/3 BSP as a scene - developer/programming use, not an end-user tool.
Hammer Editor (CS2 / Source 2) Free Install via Steam → CS2 Tools. Open BSP for viewing map layout, or decompile to VMF first using BSPZIP/decompiler tools for editing.
GtkRadiant / NetRadiant Open-source Level editor for Quake-family BSP formats (Quake 2, Quake 3, RTCWolf, EF, etc.). Open BSP directly for reference.
TrenchBroom Open-source Modern cross-platform level editor for Quake 1/2/3 and GoldSrc. Open BSP for viewing; edit source .map files and compile to BSP.
QuArK (Quake Army Knife) Open-source Multi-format map editor/viewer; still available on SourceForge but development has stalled.
BSPEdit Free Lightweight viewer and entity editor for Quake BSP files (dead website - use TrenchBroom instead).
VMEX / BSP Decompiler Open-source BSPSource (modern replacement for VMEX) decompiles Source Engine BSP back to VMF for editing. Download from GitHub: nekonomicon/bspsource.
macOS1 app
TrenchBroom Open-source macOS build available; open Quake-family BSP files.
Linux2 apps
TrenchBroom Open-source Linux build available; best modern choice for Quake-family BSP editing.
NetRadiant / ZeroRadiant Open-source Active fork of GtkRadiant; supports Quake 2/3/ET BSP on Linux.

Technical details

deep spec
ContainerCustom lump-based binary; incompatible variants exist per game engine
EncodingBinary
Byte orderLittle-endian
Magic bytesEngine-dependent: IBSP (Quake 2/3), VBSP (Source/Source 2), raw int 29 or 30 (Quake 1/GoldSrc)
Version fieldInteger in header: 29=Quake 1, 30=GoldSrc/HL1, 38=Quake 2, 46=Quake 3, 17-21=Source Engine titles, 29=Source 2
Lump typesBSP tree nodes/leaves/planes, vertices, faces, edges, lightmaps, PVS visibility, entity definitions, material references
Entity dataStored as plain ASCII key-value pairs in the entities lump (spawn points, triggers, pickups, etc.)
Lightmap format24-bit RGB per luxel (Source Engine); 8-bit monochrome per luxel (Quake 1)
Coordinate range±32,768 units (Quake 1); ±16,384 usable for geometry (Source Engine)
CompressionNone at file level; Source 2 supports optional per-lump LZ4 compression
Typical size2 MB - 200 MB (Quake maps 1-20 MB; Source maps 5-100 MB; CS2 maps 50-200 MB)
Compiled outputBSP is compiler output; source is .vmf (Source) or .map (Quake), compiled with vbsp.exe or q3map2
Cross-engine compatibilityNone - each engine variant is mutually incompatible with others
Associated OSWindows, Linux, macOS
Released1996 (Quake 1.0, id Software)
Latest versionSource 2 VBSP2 (2020+, used in CS2 / Half-Life: Alyx); multiple incompatible lineages
Specificationdeveloper.valvesoftware.com

BSP conversions

Community Q&A

asked by users
Ask a quick question
Get help from people who work with BSP files. Be specific - include your system and software version.
No account needed · answers usually within a day

No questions yet - be the first to ask about BSP files.

Frequently asked questions

How do I install a BSP map in Counter-Strike 2?
Place the .bsp file in: Steam\steamapps\common\Counter-Strike 2\game\csgo\maps\. Then in-game, open the console and type: map mapname (without .bsp). Steam Workshop maps install automatically.
How do I install a BSP map in Half-Life or GoldSrc games?
Copy the .bsp to: Steam\steamapps\common\[Game]\[gamefolder]\maps\. Load with: map mapname in the console.
Can I edit a BSP file directly?
Not conveniently - BSP is a compiled format. For Source Engine maps, use BSPSource to decompile to VMF, edit in Hammer, then recompile. For Quake maps, use TrenchBroom with the original .map source if available.
Why are there different BSP formats that are incompatible?
Each game engine evolved the format independently. Quake 1, Quake 2, Half-Life, and Source Engine all use .bsp but with different headers, lump structures and data types. Check the header bytes (or ask which game the map is for) to determine which variant you have.
What's the difference between BSP and VMF/MAP files?
VMF (Source) and MAP (Quake) are the editable source files used by level designers. BSP is the compiled output optimized for the game engine. You design in VMF/MAP and compile to BSP - it's like code to executable.
How do I open a Quake 2 BSP specifically?
Use TrenchBroom (supports Quake 2) or NetRadiant. To actually play the map, install Quake 2 (Steam, 2023 remaster by Nightdive) and place the BSP in the baseq2/maps folder.

References

1Valve Developer Wiki - BSP (Source Engine)developer.valvesoftware.com
2Quake Wiki - Quake BSP Formatquakewiki.org

Keep exploring

across the database

Top extensions this week

1.AQQAQQ Instant Messenger File
2.BINCD/DVD Disc Image (BIN/CUE)
3.MDMarkdown Document
4.PARTPartial Download File
5.RPMSGRestricted Permission Message
6.CRDOWNLOADChrome Partial Download File
7.NOMEDIAAndroid No-Media Marker File
8.PRDXSoftMaker Presentations Document
9.PRO6XProPresenter 6 Bundle File
10.SWFSmall Web Format (Shockwave Flash)

Related extensions

.OBBAndroid Opaque Binary Blob (APK Expansion File)
.PAKGame Resource Package (PAK)
.ROFLLeague of Legends Replay
.PACKAGEThe Sims / Maxis DBPF Package (game content & mods) - dominant meaning
.XSBXACT Sound Bank
.SAVSaved Game File

Free file tools

An in-browser file identifier and image converter - everything runs on your device.

Open the toolbox

Browse file extensions A-Z