Join our forum to talk about printed guns, ask for help, and more.

Bambu Slicer and its forks save information in "projects" in 3MF format. Included in each project file is a large amount of unnecessary metadata that can, under certain circumstances, tie them directly to a Bambu Lab account.

For this reason, Bambu Slicer and Orca project files should not be redistributed. They are still safe for private use.

See the Conclusion section if you're short on time or don't care for the details.

Overview[edit]

This look at 3MF project files does not analyze them in-transit or as they sit on a Bambu printer. It is concerned solely with how they sit on a PC after being saved by the slicer (File -> Save) and potentially redistributed thereafter.

A 3MF project file is one of those file formats that's just a zip file with a bunch of data inside. An example project with a 3dbenchy in it might look something like this when extracted:

3dbenchy.3mf
├── 3D/
│   ├── Objects/
│   │   ├── 3dbenchy.stl_1.model
│   ├── _rels/
│   │   └── 3dmodel.model.rels
│   └── 3dmodel.model
├── Metadata/
│   ├── cut_information.xml
│   ├── model_settings.config
│   ├── pick_1.png
│   ├── plate_1.json
│   ├── plate_1.png
│   ├── project_settings.config
│   ├── slice_info.config
│   ├── top_1.png
├── _rels/
└── [Content_Types].xml

The file 3D/3dmodel.model is an XML file containing metadata about the project. The following metadata tags within the root model tag are of interest:

  • Application - The exact version of the slicer used. On Orca, this may be the dev branch of Bambu Slicer that they're currently based on
  • CreationDate - The initial creation date of the file
  • ModificationDate - The last modification date of the file
  • DesignerUserId - The Bambu Lab user ID (which is an integer) of the user who created this project

The file Metadata/slice_info.config contains version information about the slicer used.

Additionally, some more benign info is included:

  • Various images are included in the 3MF that correspond to renders of the build plates
  • The file [Content Types].xml contains basic metadata about the type of file (3MF) and is held almost entirely constant
  • Filenames of meshes are preserved, but not their paths of origin. This information is considered largely non-compromising, but the inclusion of filenames with characters that are illegal on certain filesystems (such as :) may fingerprint the author as running a non-Windows operating system. This information is readily presented in the slicer when a model is selected

Risk Analysis[edit]

Information Always Included[edit]

Information included in every 3MF constitutes a minor fingerprinting risk.

Regardless of circumstance, the fields Application, CreationDate, and ModificationDate are included in 3D/3dmodel.model. The Application field is of only mild concern on its own, but contributes to a fingerprint, especially if the user is running a bleeding-edge build of a slicer, a niche fork of a slicer, or has vocally refused to update past a particular version.

The CreationDate and ModificationDate fields can be a concern if the 3MF's original file modification timestamp is known. Paired together and with multiple samples created at different times of day, the user's timezone could potentially be inferred. In addition to fingerprinting risk, this could be used to help deduce a user's country of origin and thus the local legality of their activities.

Information Included if You're Signed In[edit]

Information included if you're signed in constitutes a major privacy risk.

If you have downloaded the Bambu network plug-in and have signed in, the field DesignerUserId is included with every 3MF you save and contains your Bambu Lab user ID.

Unprivileged users cannot resolve this ID into any compromising account information, but Bambu can, as well as any actors they could potentially cooperate with. Should Bambu suffer data leakage, this information could be available to unprivileged users.

Your Bambu Lab user ID is immediately correlated with your account's email address, its name, and your country of origin. An actor with access to Bambu's invoicing history (such as Bambu themselves) could also potentially correlate this account with a purchase order of a Bambu printer, which may include PII, shipping address, and partially-redacted payment information.

Additional Concerns for MakerWorld Users[edit]

3MFs uploaded to MakerWorld contain even more metadata in 3D/3dmodel.model:

  • Designer - Your MakerWorld username
  • DesignRegion - Your country of origin
  • Description - The description of the MakerWorld release

Note that this information is only included when downloaded from MakerWorld. For this reason, if you intend to crosspost between the site and elsewhere, never download and share the MakerWorld 3MF. Always use a project file that has not seen the website.

Additionally, if you use the same Bambu account to create a project file for GunCAD while also using that Bambu account for benign things on MakerWorld, the two activities could be correlated. Always use a separate account for GunCAD activities.

Response[edit]

Here's what you should do:

Remove 3MF Project Files from Public Releases[edit]

If you have released a file with a 3MF in it:

  • If you have a Bambu account, redact the 3MF as soon as possible; otherwise
  • If you do not have a Bambu account, redacting the 3MF is still advisable, but not an immediate concern

Exporting Meshes from Project Files[edit]

If you load the project file into the slicer, you can right-click it and export it to an STL. Doing so does not carry over any of the problematic metadata the project file contains, at least visibly.

As a note: meshes that were converted from STEP are original renders done by the slicer, but STLs imported into the project are simply copied into the 3MF and will be copied out unmodified.

(No Longer Advised) Advanced Alternative: Redacting Metadata Manually[edit]

NOTICE: This method of redacting information from a 3MF still leaves you reliant on a file format in which information may still be easily smuggled in the future. In the general case, I would highly advise you remove 3MFs entirely from your releases. Only attempt this if you absolutely cannot go without them.

If you are so inclined, you can peer into the 3MF with an archiving tool (like 7zip), edit 3D/3dmodel.model, and redact the DesignerUserId field. Verify that the 3MF loads successfully into your slicer before redistributing.

Conclusion[edit]

DO NOT include Bambu Studio project files in your releases. Though they offer many benefits, such as preorienting meshes, painting supports, and including settings, the format contains way too much metadata for the risk to be worth it.

In layman's terms, the concerns are:

  • If you sign into the slicer, Bambu can unmask you given just one project file
  • If you post on MakerWorld under a Bambu account, do not use that same account for GunCAD
  • Given enough of these project files, even if you're signed out, someone could potentially fingerprint you

None of these concerns are an issue if you're just using project files locally. If you're just using them personally and not redistributing them, you're fine. This is only a problem for devs.

This article was last modified: June 8, 2025, 11:17 PM