What Is an MPP File? What It Stores and How It Differs from Project XML and XER
An MPP file is Microsoft Project's native plan file. What's inside it, how it differs from Project XML and XER, and what you can't tell until you open it.
The monthly progress report lands in your inbox, and attached to it is a file called something like Programme_Rev_C.mpp. The contractor’s covering email says the programme is on track. If you don’t have a Microsoft Project licence, that attachment is a black box: you can’t open it, can’t check the logic, and can’t see whether the completion date is being held up by the work or by the way the file was built.
That file is the most useful thing in the email. The PDF Gantt chart beside it shows you the bars; the MPP holds the logic that produced them, and it’s the starting point for any proper construction schedule analysis.
What Is an MPP File?
An MPP file is Microsoft Project’s native format for saving a project plan. The extension is .mpp, the registered MIME type is application/vnd.ms-project, and the format is a proprietary binary structure inside an OLE compound document, the same container family as the old .doc and .xls files. Microsoft doesn’t publish the specification.
Version matters less than it used to. Project 2010 and every later version save the same MPP format, so a file from a contractor on a newer release opens in an older one from that range. Files saved by Project 2007 and earlier use older variants, so if the programme has been carried forward from an old job, check that your tool opens it fully before you rely on it.
What an MPP File Actually Stores
An MPP is the scheduling tool’s memory written to disk. Everything Project knows about the programme sits in there:
| What the file holds | What it means when you’re reviewing |
|---|---|
| Tasks and WBS | Every activity, its ID, name and place in the work breakdown structure |
| Durations and dates | Original and remaining durations, early and late dates, actual starts and finishes |
| Logic links | Every relationship between activities, in all four types (finish-to-start, start-to-start, finish-to-finish, start-to-finish), with any lags |
| Calendars | The working-day patterns that turn durations into dates |
| Resources and assignments | Who and what is planned against each activity, where the scheduler bothered to fill it in |
| Progress | Percent complete and status as the contractor reported it |
| Float and critical path | Total float values and the critical path as Project calculated and stored them |
| Baseline | The saved plan of record, if the scheduler saved one, and the date they saved it |
When you open an MPP, the critical path you see is the one Project computed and wrote into the file. It’s a stored answer, and any tool reading the file faithfully will show you the same path. The same goes for the baseline: a baseline is either saved in the file or absent from it, and no reader can conjure one up after the fact.
A Gantt chart PDF is a picture of the plan. The MPP is the plan. The PDF shows you bars on a page. The MPP lets you interrogate the logic, float and calendars that produced those bars, which is why reviewers should always ask for the native file rather than the export.
MPP, Project XML and XER: Which File Carries What
MPP has two text-based cousins, and each carries different things:
| Format | What it is | Baseline behaviour |
|---|---|---|
| MPP | Microsoft Project’s binary plan file | Can carry a saved baseline, and records when it was saved |
| Project XML (MSPDI) | Microsoft’s text export of the same plan | Can carry baseline dates, but doesn’t record when the baseline was saved |
| XER | Primavera P6’s text export | Can’t carry a saved baseline at all |
Oracle’s own documentation is blunt on this point: “XER does not support the export of baselines.” An MPP, by contrast, can carry one, and the file records the date it was saved.
The practical consequence: if a P6 contractor sends you an XER and calls it the baseline, the file itself can’t prove that. A baseline out of P6 only travels as its own standalone project. On the Microsoft side, an MPP with a saved baseline gives you something an XER never can: the plan and its own reference point in one file. If you’re reviewing P6 submissions, our guide to XER file analysis covers what that format does and doesn’t give you.
What the Filename Can’t Tell You
Programme_Rev_C.mpp tells you almost nothing on its own. You can’t tell which version of Project wrote it, whether a baseline was ever saved into it, or whether the dates inside are driven by logic or pinned down by constraints. A programme where the completion milestone is held by hard constraints will show a perfectly plausible finish date that no amount of delay to the work will move. Opening the file is the only check.
If you don’t have Project, the free programme viewer opens an .mpp in the browser: the Gantt grouped by work breakdown structure, the logic links, and the critical path as Project stored it, with no Microsoft licence needed. ScheduleLens doesn’t recalculate that path; it shows the one in the file. The same viewer exports the activity list to Excel if you want to work the numbers yourself.
If you do have Project and want to know whether the schedule inside the file is any good, the MS Project schedule check walks an MPP through the DCMA 14-Point Assessment quality tests. They’re the checks we recommend for any contractor submission.
The next time a .mpp lands in your inbox, treat it as the primary document it is. Ask for the native file rather than settling for the PDF, check whether it carries a saved baseline, and read the critical path and float as Project recorded them. Everything else in the monthly report is commentary on what’s in that file.
Frequently asked questions
Is an MPP the same as Microsoft Project?
No. Microsoft Project is the scheduling application; an MPP file is the plan it saves. The file is the data (tasks, logic, calendars, resources, baseline if one was saved), and Project is one tool that can open it. Other tools can read the file without a Project licence.
Can a Mac open an MPP file?
Not with Microsoft Project itself: Project desktop runs on Windows. On a Mac, the practical options are a browser-based viewer that reads the .mpp directly, or asking the sender for a Project XML export instead.
Is MPP the same as MPT?
No. MPT is Microsoft Project's template format: a reusable starting point for building new plans. An MPP is a live project file holding an actual programme, with its own dates, progress and (if saved) baseline.
Does an MPP file contain the baseline?
Only if the scheduler saved a baseline into the file. When they did, the MPP carries the baseline dates and the file records when that baseline was saved. When they didn't, there is no baseline to read.