Attribution Layer

Before publishing your app to users, you should credit any sources you use, according to their Terms of Service.
There are two built in methods to provide attribution, RichAttributionWidget and SimpleAttributionWidget, but you can also build your own using a simple Align widget. All of these should be inserted into the map's nonRotatedChildren.
You must comply to your tile server's ToS. Failure to do so may result in you being banned from their services.
The OpenStreetMap Tile Server (as used above) can be found here. Other servers may have different terms.
This package is not responsible for your misuse of another tile server.
Please consider crediting flutter_map. It helps us to gain more awareness, which helps make this project better for everyone!


An animated, interactive attribution layer that supports both logos/images (displayed permanently) and text (displayed in a popup controlled by an icon button adjacent to the logos).
It is heavily customizable (in both animation and contents), and designed to easily meet the needs of most ToSs out of the box.
An icon and a button displayed over a map, in the bottom right corner
Closed RichAttributionWidget
A white box with attribution text displayed over a map
Opened RichAttributionWidget, as in the example app
nonRotatedChildren: [
animationConfig: const ScaleRAWA(), // Or `FadeRAWA` as is default
attributions: [
'OpenStreetMap contributors',
onTap: () => launchUrl(Uri.parse('')),
For more information about configuration and all the many options this supports, see the in-code API documentation.


We also provide a more 'classic' styled box, similar to those found on many web maps. These are less customizable, but might be preferred over RichAttributionWidget for maps with limited interactivity.
SimpleAttributionWidget, as in the example app
nonRotatedChildren: [
source: Text('OpenStreetMap contributors'),
© flutter_map Authors & Maintainers