# Exporting and Importing Plans (https://yapl.app/en/docs/user-guides/plans/import-export-plans)

# Exporting and Importing Plans

Maintain data portability by exporting your project plans for reporting or backup, and easily transition existing schedules from other tools using the import feature.

<Callout type="info">
Import/export functionality requires a Professional tier subscription.
</Callout>

## Exporting Plans

YAPL supports multiple export formats to ensure your data is always accessible and shareable.

### Supported Export Formats

| Format | Extension | Best For |
|--------|-----------|----------|
| **Excel** | .xlsx | Detailed spreadsheet analysis and stakeholder reporting |
| **CSV** | .csv | Simple data extraction for external tools |
| **ZIP (Enhanced CSV)** | .zip | Complete plan backup including tasks and dependencies |
| **XML (MS Project)** | .xml | Cross-platform data exchange with Microsoft Project |
| **Markdown** | .md | Documentation, wikis, and text-based sharing |
| **Print View** | Browser | Generating PDF reports or physical handouts |

### Accessing Export

1. Open your plan and navigate to the **Tasks** view.
2. Click the **Export** button in the top toolbar.
3. Select your desired format from the dropdown menu.
4. The download will begin automatically once the processing is complete.

---

## Detailed Export Formats

### Excel Export (.xlsx)

**When to Use:**
- Detailed spreadsheet analysis and custom calculations.
- Sharing with business stakeholders who prefer formatted reports.
- Offline review of project status.

**Data Structure:**
| Column | Description |
|--------|-------------|
| **WBS** | Hierarchical task code (e.g., 1.1.2) |
| **Task Name** | The name of the work item |
| **Duration** | Task length (e.g., "5 days") |
| **Start / End** | Scheduled dates |
| **Predecessors** | Compact dependency list (e.g., "1.1FS", "1.2SS+2d") |
| **Effort** | Planned, Actual, and Remaining hours |
| **Assignments** | Comma-separated list of assigned users |

### CSV Export (.csv)

**When to Use:**
- Simple data extraction for ingestion into databases or BI tools.
- Integration with external scripts and custom automation.

**Format Notes:**
- Matches the internal **Supabase** table structure for easy re-import.
- Includes granular fields like `constraint_type`, `total_float`, and `metadata_json`.
- Uses UTF-8 encoding and standard comma delimiters.

### XML Export (MS Project)

**When to Use:**
- Migration to or from **Microsoft Project**.
- Data exchange with other PM tools supporting the **MSPDI** schema.

**Technical Details:**
- Implements the official Microsoft Project Data Interchange schema.
- Preserves WBS hierarchy, outline levels, and complex dependency types (FS, SS, FF, SF).
- Includes resource definitions and assignment mappings.

### ZIP (Tasks + Dependencies)

**When to Use:**
- Creating a complete, structural backup of a plan.
- Transferring plans between different YAPL workspaces.

**What's Included:**
- A compressed archive containing separate CSV files for **Tasks** and **Dependencies**. This ensures that relationship data (predecessors/successors) is preserved with high fidelity.

### Markdown Export (.md)

**When to Use:**
- Technical documentation or project wikis.
- Text-based sharing in Slack, Teams, or GitHub.

**Output Format:**
- Uses hierarchical headers (`##`, `###`) to represent WBS levels.
- Formats task details (dates, progress, status) as human-readable bullet points.

### Print View (Browser optimized)

**When to Use:**
- Generating physical handouts for on-site meetings.
- Creating high-contrast PDF reports.

**Features:**
- Removes UI elements (sidebar, headers, buttons) to focus on content.
- Optimizes table layout for standard A4/Letter paper sizes.

---

## Importing Plans

The import feature allows you to bring existing project schedules into YAPL. This is particularly useful when migrating from Microsoft Project or other spreadsheet-based tools.

### Supported Import Formats

You can import data from the following file types:
- **XML**: Native Microsoft Project export files.
- **Excel (.xlsx)**: Formatted spreadsheets.
- **CSV**: Plain text data.
- **ZIP**: Merged tasks and dependencies exported from YAPL.

### Import Workflow

1. Click the **Import** button in the plan toolbar.
2. Select your file (YAPL will automatically detect the format).
3. Review the **Pre-import Analysis** for any warnings regarding user assignments or id conflicts.
4. Select your **Import Strategies** (see below).
5. Click **Import to Draft** to review the changes before publishing.

### Import Strategies

When importing from external tools that may have different working hours or calendars, you must choose how YAPL handles task schedules:

| Strategy | Description |
|----------|-------------|
| **Preserve Duration** | Keeps the duration intent (e.g., "5 days") and recalculates hours based on the current plan's calendar. |
| **Preserve Hours** | Keeps the total effort hours and recalculates durations to fit the target calendar. |
| **Preserve Dates** | Forces the start and end dates to match exactly, potentially overriding duration and hours logic. |

### Baseline Handling

You can choose how to handle baseline data during import:
- **Clear Baseline**: Removes all baseline data (Recommended). You can set a new baseline after verification.
- **Recalculate**: Updates baseline values based on the recalculated schedule.
- **Preserve**: Attempts to keep original baseline values as they were in the source file.

### Assignment Warnings

If a task in the source file is assigned to a user who does not exist in your current workspace, the assignment will be cleared during import. You will see a warning list before proceeding, and you must acknowledge this behavior to finish the import.

## Best Practices

- **Import to Draft**: Always import into a draft version first. This allows you to verify WBS hierarchy and dates without affecting the "Live" version.
- **Regular Backups**: Use the **ZIP** export format for a complete structural backup of your tasks and their dependencies.
- **Clean Naming**: Ensure task names are clear before exporting for stakeholder review.

## Troubleshooting

- **Large Imports**: For plans with over 500 tasks, we recommend importing in sections if you encounter performance issues.
- **Permission Denied**: Ensure your role in the workspace has "Editor" or "Owner" permissions.
- **Recalculation Differences**: Minor date shifts (1 day) may occur if the source file's calendar differs significantly from your YAPL workspace calendar.

## Related Topics

- [Creating Plans](/docs/user-guides/plans/creating-plans) - Plan setup basics
- [Plan Versions](/docs/user-guides/plans/plan-versions) - Learn about Draft vs. Published
- [Offline Editing](/docs/user-guides/plans/offline-editing) - How YAPL saves your changes