Private print-profile comparison

Slicer Settings Diff from G-code / 3MF

Compare the settings evidence actually embedded in two slicer outputs or projects. The tool normalizes key spelling, groups differences by print concern, and keeps the original value and source beside every result.

Step 1

Choose two files or paste text G-code

Local only · 64 MiB per file
Before / baseline

No file selected; pasted text will be used.

After / candidate

No file selected; pasted text will be used.

Supported evidence: plain comment settings in UTF-8 G-code and readable INI/JSON settings documents inside bounded ZIP-based 3MF packages. Binary BGCODE and proprietary or encoded payloads are not decoded.

Loading the teaching comparison…

The files stay in this browser. Nothing is uploaded, no slicer or printer is contacted, and no configuration is generated or changed. The shared analytics tag may count the page visit but does not receive file contents.

What this comparison can prove

The comparison can prove that two readable embedded values differ, or that a supported key appears on only one side. It does not prove the slicer used every embedded value, that two differently named keys mean the same thing, or that absent metadata equals a default. For that reason, missing values are shown as added or removed—not guessed from a current slicer release.

Keys are normalized only for spelling mechanics: case, spaces, dots, slashes, hyphens, and JSON array indexes. Values receive conservative whitespace, boolean, and same-unit numeric normalization. There is no hidden unit conversion or version-specific defaults table.

Why 3MF settings vary

The 3MF Core specification defines a ZIP-based model package, but slicer application settings are commonly stored in application-specific metadata parts. Prusa-family projects may use Metadata/Slic3r_PE.config. Bambu Studio's source defines files such as Metadata/project_settings.config and Metadata/print_profile.config. A geometry-only 3MF can be perfectly usable while containing none of those parts.

This tool reads supported metadata documents, validates ZIP boundaries and CRCs, and lists which sources contributed settings. It does not render geometry, compare toolpaths, validate a complete 3MF schema, interpret every vendor extension, or certify project compatibility.

How plain G-code is handled

Only comment metadata is inspected; motion, temperature, and machine commands are never executed or interpreted as the active profile. Prusa-style ; key = value lines and a small set of common Cura header fields are supported. Cura SETTING_3 payloads and binary BGCODE are explicitly left uninterpreted rather than partially decoded.

Use the exact slicer versions and printer profile history for release decisions. The official CuraEngine export documentation explains how plans become G-code, while the Bambu Studio 3MF implementation is useful evidence for its metadata filenames.

Frequently asked questions

Why are there very few Cura settings?

Common Cura G-code headers expose summary fields, while complete settings can be stored in encoded application payloads. This bounded tool does not claim to decode those payloads.

Why is a setting “removed” instead of “default”?

The second file contains no supported evidence for that key. Defaults depend on the slicer, release, printer, inheritance, and profile, so assigning one would be a guess.

Can I compare G-code with 3MF?

Yes. The comparison is by normalized key, and every row still shows its original file, metadata part, and line when available.

Does unchanged mean identical output?

No. Unsupported metadata, model geometry, modifiers, toolpaths, firmware behavior, and slicer-version changes can still differ.

Check a Klipper configuration · Browse 3D-printing tools