Icons

City icon

Compare 8 free city icons from 8 open-source libraries and pick the one that matches your design system. Every icon on this page downloads as an editable SVG or a transparent PNG at any size from 16px to 512px — no login, no account, no attribution required.

All 8 free city icons

Library comparison

Which library should you use?

LibraryStyleLicenseCity icon
Boxicons Bold MIT City
Fluent UI Icons Bold MIT City 16 Filled
Iconoir Outline MIT City
IconPark Outline Outline Apache 2.0 City
IconPark Solid Bold Apache 2.0 City
Material Design Icons Fill Apache 2.0 City
Phosphor Outline MIT City
Solar Icons Bold CC BY 4.0 City Bold

Outline sets such as Lucide, Tabler and Feather stay legible at 16px in dense interfaces. Material Symbols and Bootstrap Icons give you matched outline and filled pairs. Phosphor, Solar and Fluent add duotone, bold and weight-graded variants when you need more visual hierarchy.

Use this icon in your project

Inline SVG (copy & paste)

Paste this straight into HTML or JSX. It inherits currentColor, so it follows your theme.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" role="img" aria-label="city icon"><path fill="currentColor" d="M21 6h-4V3a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7H3a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1M6 18H4v-2h2zm0-4H4v-2h2zm5 4H9v-2h2zm0-4H9v-2h2zm0-4H9V8h2zm0-4H9V4h2zm4 12h-2v-2h2zm0-4h-2v-2h2zm0-4h-2V8h2zm0-4h-2V4h2zm5 12h-2v-2h2zm0-4h-2v-2h2zm0-4h-2V8h2z"/></svg>

React component

Install the package for the library you picked, then import the component.

npm install boxicons

import { City } from "boxicons";

export function Example() {
  return <City size={24} />;
}

Choosing the right city icon

Match the icon to the interface

A city icon has to read instantly at whatever size your interface uses. Below 20px, prefer outline artwork with a consistent stroke weight — heavy filled glyphs turn into blobs. For navigation bars and empty states above 32px, filled or duotone versions carry more visual weight and scan better.

Keep stroke weight consistent across every icon in a view. Mixing a 1.5px Lucide glyph with a 2px Tabler glyph in the same toolbar is the most common reason icon sets look unprofessional.

Accessibility

Decorative icons need aria-hidden="true" so screen readers skip them. If the city icon is the only thing labelling a control — an icon-only button, for example — give the button an aria-label such as "City" and leave the SVG itself hidden.

Never rely on the icon alone to convey state. Pair it with a tooltip or visible text wherever the meaning is not already obvious from context.

Related icon searches

Libraries on this page

Frequently asked questions

Where can I download a free city icon?

IconStash indexes 8 free city icons from 8 open-source libraries, including Boxicons, Fluent UI, Iconoir, IconPark Outline, IconPark Solid. Choose one on this page, set the exact size and colour, then copy the SVG markup or download a transparent PNG. No account and no login are required.

Are these city icons free for commercial use?

Yes. Every icon on this page comes from an open-source library published under a permissive licence (MIT, Apache-2.0, ISC, CC BY 4.0 and similar), all of which allow commercial use. The comparison table above lists the licence for each library so you can confirm the exact terms before shipping.

Can I download a city icon as a PNG?

Yes. Open any icon on this page, set an exact pixel size between 16px and 512px, choose any colour, and download a transparent PNG. Because every icon here is a vector, the exported PNG stays sharp at any resolution — IconStash also offers a ZIP pack containing 16, 24, 32, 48, 64, 128, 256 and 512px files.

Which library has the best city icon?

It depends on the design system you are matching. Outline libraries such as Lucide, Tabler and Feather suit dense product interfaces; Material Symbols and Bootstrap Icons ship matched outline and filled variants of the same glyph; Phosphor and Solar add duotone, bold and broken weights. The grid above shows all 8 options side by side so you can judge them at real size.

How do I add a city icon to a React app?

Copy the SVG markup for any icon on this page and paste it directly into JSX, or install the official npm package for the library you picked — lucide-react, @tabler/icons-react, @phosphor-icons/react, react-bootstrap-icons and react-icons are the most common. Both approaches are shown in the code samples above.

What sizes and styles do city icons come in?

All 8 icons on this page are vector artwork, so they scale cleanly to any size. The libraries represented here render the city concept in bold, outline, fill styles, and IconStash can export PNGs at 16, 24, 32, 48, 64, 128, 256 or 512px, or any custom value in between.

Can I change the colour of a city icon?

Yes. Icons are exported using currentColor, so they inherit the CSS colour of their parent element and follow your theme automatically. You can also pick an exact hex colour in the IconStash editor before downloading, or override the colour with a CSS rule such as .icon { color: #C1DD2D; }.