Convert glTF to X3D
Free, in your browser, with nothing uploaded. Drop your .gltf file in and take the .x3d away.
Drop your glTF file here
.gltf in, .x3d out. Bring its textures and sidecar files too
Choose filesNothing is uploaded No account, no email No file size limit
How to convert glTF to X3D
- 01
Add your .gltf file
Drag your glTF 2.0 (JSON) file onto the drop zone, or click it to browse. Bring its textures and sidecar files in the same drop and they get wired back up.
- 02
Check the preview
The model is parsed on your machine and drawn in the viewport, so a wrong axis or a missing texture shows up before you commit rather than downstream.
- 03
Save the .x3d file
Press convert. The Extensible 3D file is written in the tab and lands in your downloads folder. No link, no expiry, no account.
What carries over, and what does not
A format conversion is a translation, and translations lose things. Here is what actually happens when a glTF file becomes an X3D file.
| Data | glTF | X3D | Survives |
|---|---|---|---|
| Geometry | Yes | Yes | Yes |
| Materials & colour | Yes | Yes | Yes |
| Texture maps | Yes | Yes | Yes |
| Animation & rigs | Yes | No | Dropped |
| Scene hierarchy | Yes | Yes | Yes |
Expect to lose
- X3D stores no animation, so rigs and takes in your glTF file are not carried over.
None of this is a defect in the conversion; it is what X3D is specified to hold. If you need the missing data, convert to GLB instead, which carries geometry, PBR materials, textures and animation in a single file.
What our X3D writer puts in the file
Geometry, normals and per-mesh material colour. Texture images are not written, for the same reason as VRML: X3D references them by filename rather than carrying them.
Bring the sidecar files
Drop the .bin buffer and texture images in together with the .gltf.
About glTF 2.0 (JSON)
glTF 2.0 is the Khronos Group’s royalty-free runtime format, often described as "the JPEG of 3D". The .gltf flavour is human-readable JSON that describes the scene graph, and points at binary buffers and image files sitting next to it. It defines a single physically based material model, so a glTF file looks the same in every conforming renderer, which is rare in 3D. Use .gltf when you want to inspect or hand-edit the file, and .glb when you want to ship it.
Commonly seen in: three.js, Babylon.js, Godot, Blender, Adobe Substance 3D. More on the glTF format page.
About Extensible 3D
X3D is the ISO standard that replaced VRML, and it describes a scene as an XML document: a tree of Transform nodes holding Shape nodes, each pairing an Appearance with a geometry node such as IndexedFaceSet, IndexedTriangleSet or a primitive. It is the archival format for a great deal of scientific, medical and museum 3D work, and because it is XML it is one of the few 3D formats you can usefully read in a text editor.
Commonly seen in: Web3D Consortium tooling, scientific visualisation, museum and heritage archives, BlenderX3D. More on the X3D format page.
How the conversion works
When you drop a file in, the bytes are handed to a parser compiled to run in your browser. The glTF data is decoded into an in-memory scene graph of meshes, materials and transforms, which is what the preview is drawing. Pressing convert walks that scene graph back out through a X3D writer and hands you the resulting bytes as a download.
The whole round trip is local. The page itself is static: it is delivered once and then does its work offline. That is why the privacy claim is checkable rather than a promise.
glTF to X3D: common questions
Is my glTF file uploaded anywhere?
No. The file is read by code running inside this browser tab and never crosses the network. You can prove it by disconnecting from the internet before you convert, the page keeps working, or by watching the Network tab in your browser's developer tools while you drop a file in.
How large a glTF file can I convert?
There is no server-side limit because there is no server. The practical ceiling is your own machine's memory: a browser tab can usually handle models up to a few hundred megabytes. Very dense scans or scenes with millions of triangles will take a few seconds and a lot of RAM.
Why does my converted X3D file look untextured?
Because this writer leaves them out. X3D references an image by filename rather than storing it inside the file, so the images would have to travel separately and land where the file expects them, which is how a converted model arrives broken. Convert to GLB, FBX or USDZ instead if the textures need to stay with the model.
Does it cost anything?
No. There is no fee, no account, no watermark and no per-file limit. Since the conversion runs on your hardware rather than ours, serving this page costs about as much as serving a blog post.
Does it work on a Mac, on Windows or on a phone?
All of them. There is nothing to install: any browser with WebGL 2 will do, which covers current Chrome, Edge, Firefox and Safari on desktop, and Safari and Chrome on mobile. A phone has less memory than a laptop, so a very heavy scene may be the one thing it cannot finish.
Related conversions
Other things to do with the same file.
From glTF:
Other ways to get to X3D:
Or do something else with it: