All users should also install 'latlong2' to work with coordinates in 'flutter_map'.

In the event that the LatLng object provided by that library conflicts with another, for example the one provided by Google Maps, you may need to use the 'as' suffix.


Just import the package as you would normally, from the command line:

flutter pub add flutter_map latlong2
flutter pub add  # OPTIONAL

Commits available from Git (GitHub) may not be stable. Only use this method if you have no other choice.

If you urgently need the latest version, a specific branch, or a specific fork, you can use this method.

First, use From, then add the following lines to your pubspec.yaml file, as a root object:

            # ref: master (or commit hash, branch, or tag)

Additional Setup



Always force usage of the CanvasKit renderer instead of the HTML renderer, even on mobile devices.

The HTML renderer causes performance issues, and may also cause other bugs. Although the CanvasKit renderer does require slightly more Javascript (and therefore a longer download time), it works much better with flutter_map.

For more information about web renderers, see


On the web platform, CORS restrictions designed to protect resources on websites and control where they can be loaded from. Some tile servers may not be intended for external consumption, or may be incorrectly configured, which could prevent tiles from loading. If tiles load correctly on platforms other than the web, then this is likely the cause.


flutter_map needs to access the Internet to load tiles, in most cases. On Android, apps must include the INTERNET permission in their manifest. Add the following line to all manifests:

<uses-permission android:name="android.permission.INTERNET"/>


flutter_map needs to access the Internet to load tiles, in most cases. On MacOS, apps must include a dedicated entitlement. Add the following lines to 'macos/Runner/DebugProfile.entitlements' and 'macos/Runner/Release.entitlements':



After installing the package, import it into the necessary files in your project:

import 'package:flutter_map/flutter_map.dart';
import 'package:latlong2/latlong.dart';

You must comply with the appropriate restrictions and terms of service set by your tile server. Failure to do so may lead to any punishment, at the tile server's discretion.

This library and/or the creator(s) are not responsible for any violations you make using this package.

The OpenStreetMap Tile Server (as used in this documentation) ToS can be found here. Other servers may have different terms.

Last updated

© flutter_map Authors & Maintainers