---
title: "Germany Map Generator (Free Choropleth by State)"
description: "Use a free Germany map generator to shade all 16 states by any number. A one-line embed that refreshes on new data, plus an API for maps at scale."
url: "https://www.imejis.io/blogs/tutorials/germany-map-generator"
published: "2026-08-02"
---

# Germany Map Generator (Free Choropleth by State)

A [Germany map generator](/tools/germany-map-generator) takes a list of state values and paints a shaded map. You give each Bundesland a number, the tool colors it on a scale, and you download a PNG or SVG. It answers the "where" question in a report: sales by state, users by region, turnout by Land.

## What a Germany choropleth map shows

A [choropleth](https://en.wikipedia.org/wiki/Choropleth_map) shades each region by a value, so darker or more saturated means more. The eye reads the pattern before it reads any single number, which is the point. One glance tells you Bayern and Nordrhein-Westfalen carry your volume, or that growth clusters in the east.

The basemap covers all 16 [German states](https://en.wikipedia.org/wiki/States_of_Germany), the three city-states included: Berlin, Hamburg, and Bremen. The data model is small. Each state is one row:

- **id:** which state. A 2-letter code like `BY` or `NW`, the ISO-3166-2 form `DE-BY`, or the name in German or English, `Bayern` or `Bavaria`.
- **value:** the number to shade by. Sales, users, a survey score, a percentage, anything.

States you don't include render in a neutral "no data" color, so a partial dataset is fine. You bring the values, the map already knows the shapes.

## Make one free

Open the [Germany map generator](/tools/germany-map-generator). Add a row per state as an id and a value, choose a color scale, and download the map. There's no signup and no watermark. Export a PNG for emails and docs, or an SVG when you want it crisp at any size.

The tool doesn't care what the numbers are. Euros, signups, percentages. All the same to the shader. A state and a value gets you a shaded map. Two coloring styles cover most needs: a single-hue ramp from light to dark for totals, and a diverging scale that splits positive from negative for growth or change.

## Embed it anywhere

A map image embeds like any other image. One line of markdown or HTML and it renders inline:

```html
<img
  src="https://your-render-url"
  alt="Sales by German state choropleth map"
  width="800"
/>
```

Here's what makes it worth doing. Point at a **render URL** instead of a saved file and the map redraws whenever it loads. Push this month's numbers and the same URL returns an updated map. The doc stays as is, and nobody re-exports anything. A "sales by Bundesland" panel in a dashboard or a weekly email keeps itself current.

Save a static file when you want a fixed snapshot, like a map pinned to one quarter in a report. Use a render URL when the picture should follow new data.

## Generate at scale

One map by hand is easy. One per customer, or one every morning, is where the API earns its keep.

Because the map is [an API component](/components/map) you configure once, a single render call takes your list of `{id, value}` rows and returns the image. A few ways people wire it up:

- **On a schedule:** a cron job pulls the latest figures, hits the render URL, and drops the map into a morning report.
- **Per request:** your app renders a map on the fly for whatever state breakdown a user asks for.
- **Through an [AI agent over MCP](/agents):** the agent gathers the data and calls the render itself, with no plumbing on your side.

Working examples live in the [API docs](/apis), ready to copy, so you're not guessing the request shape. Draw the map once, then keep the data flowing.

## Start making Germany maps

State values in, a shaded map out.

- Build one now in the [Germany map generator](/tools/germany-map-generator), free, PNG or SVG.
- Configure it as an API [component](/components/map) and render on demand.
- Automate it through the [API](/apis) or an [AI agent](/agents).

The free plan covers [100 renders a month](/pricing), enough to stand up a live "by state" panel and watch it update before you ever upgrade.
