# What is BeerXML?

BeerXML is the file format that lets a recipe move between brewing programs. It is the reason you are never really locked into one piece of software — and it is worth understanding before you commit ten years of recipes to anything.

HTML version: https://brewgravity.com/guides/beerxml/

## FAQ

### What is a BeerXML file?

A plain-text XML file describing a beer recipe: the fermentables, hops, yeast, misc additions, mash profile, batch size, boil time and efficiency. It is the interchange format almost every brewing program reads and writes, which is what makes recipes portable between them.

### How do I open a BeerXML file?

Import it into brewing software rather than opening it directly. Brewgravity imports BeerXML on the free plan — create an account, open Import, and drop the file in. A text editor will show you the contents, but it is not designed to be read that way.

### What is the difference between BeerXML and BeerJSON?

BeerJSON is the modern successor: same idea, JSON instead of XML, with stricter units and a cleaner schema. Support is still patchier than BeerXML, so BeerXML remains the safest format for moving a recipe between two programs. Brewgravity reads and writes both.

### Will my recipe survive the round trip?

The recipe itself will. The grain bill, hop schedule, yeast, mash steps and batch parameters are all part of the standard. What does not always travel is program-specific extras — custom equipment profiles, water adjustments and brew day notes vary by implementation, so check those after an import.

### Why do the calculated numbers change after import?

Because gravity depends on your brewhouse efficiency and bitterness depends on which utilisation model the software uses. The ingredients are identical; the predictions are made differently. Set your efficiency to match what you were using before and the two line up.

---

Source: https://brewgravity.com — Explanation of the BeerXML recipe interchange format: what records it contains, how to export it from BeerSmith, Brewer's Friend, Brewfather, Brewtarget and ProMash, how to import it, what does not transfer, and how BeerJSON differs.
