How to Import and Fly Missions on Any Consumer DJI Drone

DJI Fly gives you basic waypoints. It does not give you survey grids, terrain follow, desktop planning, or KML import. Those features live in DJI Pilot 2 - available only on enterprise drones that cost $5,000 to $15,000.

But you do not need an enterprise drone to fly professional missions. The community has built a reliable workaround: the KMZ pipeline. Plan your mission on a desktop tool, export it as a KMZ file, transfer it to your controller, and fly it through DJI Fly.

This guide walks through the entire process - which tools to use, how to transfer files, and what works with which drone.

What DJI Fly Can and Cannot Do

DJI added waypoint support to the Fly app for most current consumer drones. You can set up to 200 waypoints with altitude, speed, heading, and camera angle per point. Missions are repeatable and stored on the controller.

That is where it ends. Here is what DJI Fly does not do:

  • No survey grid generation - cannot auto-generate lawnmower patterns for mapping
  • No terrain following - fixed altitude only, no DEM-based adjustment
  • No desktop planning - waypoints must be set after takeoff, on-device
  • No KML/KMZ import - cannot load a pre-planned mission file directly
  • No corridor mapping - no linear infrastructure flight mode
  • No overlap calculation - no automatic front/side overlap for photogrammetry
  • No breakpoint resume - cannot pick up where you left off after a battery swap

DJI maintains this gap deliberately to protect enterprise drone sales. The KMZ pipeline is how the drone community works around it.

The KMZ Pipeline: How It Works

KMZ is the universal bridge format. DJI Fly stores its own waypoint missions as KMZ internally. Third-party tools can generate DJI-compatible KMZ files. The pipeline is simple:

Plan on Desktop

WaypointMap, MavenRoute, etc.

Export KMZ

Universal mission format

Transfer to Controller

MavenBridge or manual copy

Fly in DJI Fly

Execute imported mission

This works with every consumer DJI drone that supports waypoints in DJI Fly: Mavic 4 Pro, Mavic 3 series, Air 3/3S, Mini 5 Pro, and Mini 4 Pro.

1

Plan Your Mission on Desktop

Several tools can generate DJI Fly-compatible KMZ files. Each has a different strength:

WaypointMap

Free

Web-based. Best for automated survey grids and photogrammetry missions. Draw an area, set overlap and altitude, and it generates a complete grid pattern as KMZ. Community-built specifically to fill the SDK gap.

MavenRoute

Web

Best for curved waypoint paths and photogrammetry grids. Supports simplified terrain follow and photo capture options. MavenRoute 2.0 (Feb 2026) added DJI Fly-style curved paths. Free KMZ export.

Litchi Hub

$25 one-time

Web-based mission planner from the makers of Litchi Pilot. Best for complex waypoint missions with POI (point of interest), curved turns, and camera triggers. Exports KMZ for DJI Fly import. Up to 99 waypoints per mission.

DJI Mapper

Free / Open Source

Desktop application (Windows/Mac/Linux). Creates automatic survey and photogrammetry missions. Exports for both DJI Fly and Litchi. Best for offline planning without a browser.

For a first mission, start with WaypointMap - it is free, requires no account, and generates a ready-to-fly KMZ in under a minute.

2

Export as KMZ

Once your mission is planned, export it as a KMZ file. Every tool listed above has a prominent export or download button. The KMZ file contains your waypoints, altitudes, speeds, and camera actions in DJI's format.

Key Limits

  • Maximum 200 waypoints per KMZ file (DJI Fly limit)
  • For large survey areas, split into multiple KMZ files / flights
  • The KMZ must follow DJI's specific schema - not all KMZ generators produce compatible output
  • Camera interval and overlap settings in the KMZ may not be honored by DJI Fly

Save the KMZ file somewhere easy to find - you will need it in the next step.

3

Create a Manual Mission in DJI Fly First

This is the step most guides skip. Before you can import a KMZ, you must create and save at least one waypoint mission manually in DJI Fly. This creates the directory structure on your controller that the import process needs.

  1. Connect your drone and controller
  2. Take off (or use the simulator if your model supports it)
  3. Open the waypoint flight mode in DJI Fly
  4. Place 2-3 waypoints anywhere
  5. Save the mission
  6. You can delete this mission later - it just needs to exist once

This only needs to be done once per controller. After the directory exists, all future imports work without this step.

Need to check airspace before you fly?

Check Your Airspace

Free - check TFRs, LAANC ceilings, and restricted areas

4

Transfer the KMZ to Your Controller

Two methods, pick whichever is easier for you:

Option A: MavenBridge (Recommended)

MavenBridge is a free desktop tool (macOS and Windows) from the Maven team. Connect your controller via USB, select your KMZ file, and it places the file in the correct directory automatically. No filesystem navigation required.

Option B: Manual File Transfer

Connect your controller to your computer via USB. Navigate to the waypoint mission storage directory on the controller's file system and copy your KMZ file there.

The exact path varies by controller model. On most DJI controllers, waypoint missions are stored in the DJI Fly app's internal storage under a waypoint directory. The file you saved in Step 3 shows you where this directory lives.

If you are using an Android phone with RC-N2, you can also download the KMZ directly to the phone from cloud storage or email, then import from the file manager.

5

Fly the Mission in DJI Fly

Open DJI Fly and go to the waypoint flight mode. Your imported mission should appear in the saved missions list. Select it, review the waypoints on the map, and execute.

Pre-flight Checks

  • Verify all waypoints are in the correct positions on the map
  • Confirm altitude settings are appropriate for the terrain
  • Check estimated flight time against your battery level
  • Verify airspace authorization - use the Dronelytics airspace map or check your LAANC authorization
  • Ensure clear line of sight for the entire mission area

Important: DJI Fly waypoint missions are signal-dependent. If the controller loses connection to the drone, the mission pauses and the drone hovers in place. This is different from MSDK-based apps where the mission continues on the drone itself.

Drone Compatibility Matrix

Not every method works with every drone. Here is what you can use:

DroneDJI Fly WaypointsKMZ PipelineMSDK Apps
Mavic 4 ProYesYesNo
Mavic 3 / Classic / ProYesYesNo
Air 3 / Air 3SYesYesNo
Mini 5 ProYesYesTBD
Mini 4 ProYesYesYes (RC-N2 + Android)
Mini 3 ProNoNoYes (RC-N1 + Android)
Mini 3NoNoYes (RC-N1 + Android)
Mini 2 SENoNoNo

MSDK Apps = third-party flight apps like Litchi Pilot and Dronelink that fully replace DJI Fly. They offer more features (survey grids, terrain follow, autonomous flight on signal loss) but only work on drones where DJI has released the Mobile SDK. The DJI RC 2 (built-in screen controller) does not support MSDK apps - you need the RC-N2 (phone-holder style) with an Android device.

What About Full Third-Party Apps?

If you own a Mini 4 Pro with the RC-N2 controller and an Android device, you have another option: MSDK-based flight apps that completely replace DJI Fly.

Litchi Pilot

Full autonomous flight with up to 99 waypoints, curved turns, POI orbits, and camera scheduling. Missions continue flying even if the controller loses signal. Android only. $25 one-time purchase.

Dronelink

Full MSDK control with survey grid generation, facade scanning, terrain following (AGL), and multi-battery mission continuation. The most feature-complete option for Mini 4 Pro. Android only. Subscription from $15/month.

These apps do not work with the Air 3, Mavic 3 series, or Mavic 4 Pro because DJI has not released the Mobile SDK for those drones. For those models, the KMZ pipeline described above is your only option for advanced missions.

For a detailed comparison, see Dronelytics vs Litchi vs Dronelink.

Limitations to Know

The KMZ pipeline is the best available workaround, but it is not perfect:

200 Waypoint Cap

DJI Fly limits each mission to 200 waypoints. Large survey areas need to be split across multiple flights.

No Terrain Follow

DJI Fly flies at fixed altitude. The KMZ cannot include terrain-adjusted altitude data that DJI Fly will honor. Fly over flat terrain or add manual altitude adjustments.

Signal-Dependent Flight

If your controller loses connection, the drone hovers. It does not continue the mission autonomously like MSDK-based apps.

Camera Interval Not Honored

Photo interval and overlap settings in the KMZ may be ignored by DJI Fly. Set camera to interval shooting manually before starting the mission.

No Breakpoint Resume

If you need to swap batteries mid-mission, you cannot resume where you left off. Plan missions to fit within a single battery.

Planning Tool Quick Comparison

All of these output DJI Fly-compatible KMZ:

ToolPriceSurvey GridsBest For
WaypointMapFreeYesQuick mapping missions
MavenRouteFreeYesCurved paths + grids
Litchi Hub$25NoComplex waypoints + POI
DJI MapperFreeYesOffline desktop planning
Map Pilot Pro$50YesiOS + professional surveys

Check Airspace Before You Fly

Before executing any mission - imported or manual - you need to know your airspace. Dronelytics shows you all 12 FAA airspace layers in one view: controlled airspace classes, LAANC authorization ceilings, TFRs, SUAs, stadiums, and national parks.

Use the airspace map to verify your mission area, then plan your grid in one of the tools above and fly with confidence.

Need a pre-flight workflow? Download the free mission planning checklist.

Frequently Asked Questions

Can I import KML files into DJI Fly?

No. DJI Fly does not support KML import on consumer drones. Convert your mission to KMZ using one of the planning tools above, then transfer it to your controller.

Can I use QGroundControl with a DJI drone?

No. QGroundControl uses the MAVLink protocol. DJI consumer drones use a proprietary protocol. They are not compatible.

Will my DJI RC 2 work with Litchi or Dronelink?

No. The DJI RC 2 (built-in screen controller) does not support third-party MSDK apps. You need the RC-N2 (phone-holder controller) with an Android device. However, the KMZ pipeline works regardless of which controller you have.

What happens if I lose signal during an imported mission?

The drone hovers in place and waits for reconnection. DJI Fly waypoint missions are signal-dependent - they do not continue autonomously. This is different from MSDK-based apps where missions run on the drone itself.

Plan Your Mission

Start with airspace. Check your flight area, verify restrictions, and plan with confidence.

Free — no credit card required.

Sign Up