What is the GGB file format?
A file with the .ggb extension contains a GeoGebra worksheet document compressed using the ZIP algorithm. .ggb is a mathematical project format used mainly in education for teaching geometry, algebra, statistics, and mathematical analysis. Because it is a ZIP archive, you can rename any .ggb file to .zip to inspect or extract its contents. A typical .ggb archive consists of files such as:
geogebra.xml- stores complete information in XML-based format about the given GeoGebra projectgeogebra_thumbnail.png- a small preview image of the constructiongeogebra_javascript.js- global JavaScript definitions for the.ggbfilegeogebra_defaults2d.xml,geogebra_defaults3d.xml- definitions for default elements of 2D and 3D constructions
.ggb constructions can be exported into HTML5 applets and image files - .png, .jpg, and others. XML files that are part of a .ggb file can be edited outside of GeoGebra, but this should be done by following the specification included in ggb.xsd to avoid corrupting the file and making it unreadable. GeoGebra was developed in 2001 by Markus Hohenwarter as his master's thesis project and is maintained by the International GeoGebra Institute. GeoGebra software is available for PC systems (Windows, macOS, and Linux) and mobile devices (Android and iOS). The free GeoGebra HTML5 web platform is also available, requiring no installation.
Security & safety
RISK: LOWA .ggb is data (XML in a ZIP), not an executable, so opening one is safe. The only active content is optional worksheet JavaScript that runs inside GeoGebra's sandbox; open files from unknown sources in the latest GeoGebra version. No known malware uses this format.
Format details
in a nutshellPrograms that open GGB files
Technical details
deep spec| MIME type | application/vnd.geogebra.file |
| Container format | ZIP archive; magic bytes 50 4B 03 04 ("PK") at offset 0 |
| Primary data file | geogebra.xml - XML document encoding the full construction |
| Preview image | geogebra_thumbnail.png - embedded PNG snapshot of the construction |
| Scripting file | geogebra_javascript.js - optional global JavaScript definitions for dynamic behavior |
| Default settings files | geogebra_defaults2d.xml and geogebra_defaults3d.xml - default element properties for 2D and 3D views |
| XML schema | ggb.xsd defines the valid structure of geogebra.xml; hand-editing must conform to this schema |
| Subject areas | Geometry, algebra, calculus, statistics, spreadsheet, and 3D graphics in a single file |
| Export targets | HTML5 applet, PNG, JPEG, SVG, PDF, and animated GIF |
| Identification tip | Rename .ggb to .zip to open in any archive tool; presence of geogebra.xml entry distinguishes it from generic ZIPs |
| Platform support | Windows, macOS, Linux (desktop); Android, iOS (mobile); web browser (HTML5, no installation) |
| Related formats | .ggt (GeoGebra Tool file), .ggs (GeoGebra Script file) |
| Internal encoding | XML payload stored as UTF-8 text; PNG thumbnail stored as binary; both compressed with ZIP Deflate |
| App compatibility | GeoGebra Classic, GeoGebra Geometry, GeoGebra 3D Calculator, GeoGebra Graphing Calculator |
| Released | 2001 (GeoGebra 1.0, originated as Markus Hohenwarter's master's thesis) |
| Open standard | Yes · royalty-free |
| Specification | geogebra.github.io |
GGB conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about GGB files.