EDIT: My goal is NOT to use OpenStreetMap or cloudmade as a web map. I described exactly what I want ("a full, rasterized set of tiles for the entire world at zoom=10 (around 68 Gigapixels, water=black, land=white, no labels"). I only meant to use the cloudmade.com link as an example to illustrate what I'm shooting for. (As it is, the cloudmade style is only 90% of the way there.) I need the tiles offline. I need the image (68 Gpix) I described as a mask in a larger raster map task for a custom map I'm building using NASA and USGS data.

As an illustration

I made a custom style that sort of shows what I want:

(No labels, no roads, no features of any kind except all water features (rivers, lakes, oceans, you name it) as black with land being solid white, and the nice Mapnik antialiasing of values in between.)

What I really want

I would like a full, rasterized set of tiles for the entire world at zoom=10 (around 68 Gigapixels).

I considered downloading and installing Planet.osm (11 GB compressed) and running Mapnik (for days/weeks?) to get this data. However, Planet.osm looks like it will take 100GB or maybe even 1TB once the database and index are built. I don't have that kind of disk space on my laptop and since I don't need the full dataset, is there a smaller subset of the data I could download (it says here that the polygon data is only 700 MB)? Actually from what I can tell, the data has doubled in size in the last year so I would need a beefy machine to deal with this.

Is there an easier, direct way to get these tiles (level 10, black and white, just land on water) batched, or do I basically need a dedicated computer to do this?

  • that cloud map looks really nice. Simple but nice. The white on black with the light blue works really well.
    – Nathan W
    Sep 1, 2010 at 3:44
  • Followup (with some preliminary successful results from naturalearthdata.com): gis.stackexchange.com/questions/1917/… Sep 14, 2010 at 16:37

4 Answers 4


Do you have to use OSM? or would a similar but smaller vector dataset work for you? If so consider Natural Earth (http://naturalearthdata.com) which has nice 1:10M scale coastline, land area, ocean, river and lake layers. You could then use GeoServer or MapServer locally (or on a remote server) to create your tiles at any depth you need with any of the usual tile caches (TileCache, GeoWebCache etc.)

From your question it isn't even clear to me that you need tiles - if all you want is a mask then you can probably do this using GRASS - v.toRaster() (I think).

  • I think you mean naturalearthdata.com Sep 1, 2010 at 13:37
  • you are right - I've fixed it.
    – Ian Turton
    Sep 1, 2010 at 14:50

You don't need to download the entire dataset.

You can just download the polygon files from



Slightly more up-to-date (31/08/2010) http://download.geofabrik.de/osm/

dirty hack (not recommended)

A default tile (256x256px)


Note the 1=StyleID so if you replace the Style with your ID


http://b.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/22688/256/15/17599/10746.png your get the 256x256px tile in png format with your style. A script could be used to download all of the required.

Though I would sign up for the web lite api key and just use the api to embed in an iframe. (as cloudmade recommends)

source: http://developers.cloudmade.com/projects/tiles/documents


I don't understand why Mapperz thinks that using documented API is a "dirty hack", but anyway -- you can use it freely without any limits to download all the tiles you need. It'll be definitely easier to do than:

  • download the data
  • install and setup Mapnik
  • write the Mapnik style XML
  • try to run generate_tiles.py
  • most definitely run into obscure problems with any of these steps

So, the answer to OP's question is: just write the script that will use CloudMade's HTTP API to download the tiles.

EDIT: If you mean to actually do the rendering on your own, then I suggest you start with reading Mapnik installation and XML guides. To generate the tiles you'll have to use this utility from OpenStreetMap repo.

For any questions regarding Mapnik you're welcome to use mapnik-users mailing list or visit #mapnik IRC channel on FreeNode.

  • 2
    The in the Terms: cloudmade.com/terms_conditions You are to use the API - rather than direct 'tile scraping' Same terms apply to Google Maps API Important: Scraping the tile images from Google's servers for any reason is against the terms of service and is not advised.
    – Mapperz
    Sep 1, 2010 at 15:20
  • I think it would be pretty cool to get Mapnik set up and throw Planet.osm into it but it sounds like my current computer/hard disk are inadequate. But I will keep it on my list of options. On second thought it may be possible to get someone with Planet.osm already imported into Mapnik to make an OSM dump of just the layers (water/land) I need. I should at least ask on the IRC channel. That could be fruitful. Sep 4, 2010 at 6:57

If all you need is the coastlines, they can be had for just 260MB: http://hypercube.telascience.org/~kleptog/

I second the suggestion of Natural Earth above; you'll find it better-looking and faster to render for the lower levels. You only need to bother with OSM itself at zooms 8 and above, or so (try a few tests to see)

  • Does this have freshwater? (Lakes, resevoirs, rivers?) I can compute my own coastline from the 50m/500m SRTM elevation datasets. Truthfully I was hoping to get rasterized tiles of all water (fresh and salt) together because it would work uniformly in my current (custom) setup. The Cloudmade style I showed is within inches of being perfect, but it's not -- it's not truly black and white (not sure how to fix that) and for some reason there are random labels here and there, which I really don't want and can't figure out how to remove. Sep 10, 2010 at 19:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.