How to Give Attribution
Why should I use attribution?
When you create a map or analyze data in CARTO, you are using a variety of technologies and service providers that are part of the CARTO platform. They require attribution. Please visit this page for more specifics about which elements of your project require attribution, and what type of attribution they should use.
In some cases CARTO automatically adds the attribution. In others you will need to add it. This guide outlines both cases, and gives examples of how to implement attribution yourself.
Datasets
Attribution is not automatically added to datasets. You can easily include it this way:
-
Log into your CARTO dashboard and enter part of your dataset’s name into the Search field. Click on the appropriate result to open the dataset.
-
Click the three dots next to the dataset title and select
Edit metadata
. That will open aDataset metadata
screen. -
Enter the appropriate attribution text in the
ATTRIBUTIONS
field. You can also choose a license type in theLICENSE
field, and enter a url or text in theSOURCE
field. ClickSAVE
.
Tip: You can also access the metadata screen by mousing over your dataset title in the dashboard Home screen’s Data section, or the dashboard Data panel. That will reveal a button with three dots. Click on it, and select Edit name & description
.
This custom attribution will automatically appear in Builder maps that use CARTO basemaps, next to the basemap attribution text.
Basemaps
Attribution is added automatically for CARTO basemaps. Since CARTO basemaps incorporate OpenStreetMap data, OpenStreetMap attribution is automatically included.
Attribution is also automatically added for Stamen, Nokia HERE, Mapbox, and NASA basemaps in Builder maps.
This attribution is visible when you click on a Builder map’s question mark icon.
It also appears automatically when the Builder map is exported as an image.
Builder
Builder maps automatically show the basemap attributions described above. Builder maps that use CARTO basemaps also show dataset attribution.
CARTO.js
Attribution is automatically added for CARTO.js maps that use CARTO basemaps in a Leaflet map object or Google basemaps in a Google map object. Other attributions need to be inserted manually in the code.
Here’s an example showing where to add custom attribution in a Leaflet Map Object:
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {
foo: 'bar',
attribution: 'Map data © <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>'
}).addTo(map);
Note: See more information about Leaflet attribution here.
CARTO VL
Attribution for CARTO basemaps is automatically included in CARTO VL maps.
Since CARTO VL maps incorporate Mapbox GL technology, it is also possible to add custom attribution.
That can be included in the Mapbox GL map object this way:
const map = new mapboxgl.Map({
container: 'map',
style: carto.basemaps.darkmatter,
center: [-3.6908, 40.4297],
zoom: 14,
customAttribution:[
"my custom attribution 1",
"my custom attribution 2",
]
});
Note: See the Mapbox GL JS API documentation for additional attribution display options using their AttributionControl.
Printed Maps
In Builder there is an option to Export your map as an image. When a map is exported, the attributions mentioned in the Builder section above are automatically added.
Maps created with the carto-print Python library do not include attribution automatically. The attribution needs to be included in your printed publication.