# Free alternatives to Visby CF

Visby CF is a commercial geometric sans from Connary Fagen (https://connary.com/visby.html). Commercial; licensed from Connary Fagen / resellers. The name is used only to identify the typeface; BrandSweets does not host or embed it. Below: the 8 closest free, open-licensed families, ranked by a published deterministic score (https://brandsweets.com/fonts/alternatives/methodology).

## Reference profile

- Slug: `visby`
- Category: sans · Class: geometric
- Traits: geometric, bold, modern, clean, monoline
- Roles: heading, display
- Metrics: x-height 0.52, cap height 0.71, normal width, low contrast (approximate, publicly documented)
- Languages: latin, latin-ext · Variable: no
- Page: https://brandsweets.com/fonts/alternatives/visby

## Score

`score = 0.35·classification + 0.25·metrics + 0.20·traits + 0.10·useCase + 0.05·language + 0.05·variable`; every axis in [0, 1]. A family gate runs first: specialist families (blackletter, script, glyphic, stencil, monospace, pixel) only list same-family fonts; elsewhere a cross-family mismatch is capped at 0.2. Curated picks are listed first, then pure formula; ties break on popularity, then slug.

## Ranked alternatives

### 1. Montserrat — 95%

- Slug: `montserrat` · sans · OFL-1.1 · Julieta Ulanovsky, Sol Matas, Juan Pablo del Peral, Jacques Le Bailly · static
- Page: https://brandsweets.com/fonts/montserrat · font.md: https://brandsweets.com/fonts/montserrat/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.96 — x-height 0.53 vs 0.52 for Visby CF (near-identical); cap height 0.70 vs 0.71 for Visby CF (near-identical); both normal width; both low stroke contrast.
- Traits (×0.20): 0.80 — Shares bold, geometric, modern, monoline (4 of 5 traits).
- Role (×0.10): 1.00 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 2. Red Hat Display — 94%

- Slug: `red-hat-display` · sans · OFL-1.1 · MCKL · static
- Page: https://brandsweets.com/fonts/red-hat-display · font.md: https://brandsweets.com/fonts/red-hat-display/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.94 — x-height 0.50 vs 0.52 for Visby CF (near-identical); cap height 0.70 vs 0.71 for Visby CF (near-identical); both normal width; both low stroke contrast.
- Traits (×0.20): 0.80 — Shares clean, geometric, modern, monoline (4 of 5 traits).
- Role (×0.10): 1.00 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 3. Plus Jakarta Sans — 86%

- Slug: `plus-jakarta-sans` · sans · OFL-1.1 · Tokotype · static
- Page: https://brandsweets.com/fonts/plus-jakarta-sans · font.md: https://brandsweets.com/fonts/plus-jakarta-sans/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.88 — x-height 0.54 vs 0.52 for Visby CF (near-identical); cap height 0.74 vs 0.71 for Visby CF (close); both normal width; both low stroke contrast.
- Traits (×0.20): 0.80 — Shares clean, geometric, modern, monoline (4 of 5 traits).
- Role (×0.10): 0.33 — Both suit heading; Plus Jakarta Sans is not tagged for display.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 4. Space Grotesk — 86%

- Slug: `space-grotesk` · sans · OFL-1.1 · Florian Karsten · static
- Page: https://brandsweets.com/fonts/space-grotesk · font.md: https://brandsweets.com/fonts/space-grotesk/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.90 — x-height 0.49 vs 0.52 for Visby CF (close); cap height 0.70 vs 0.71 for Visby CF (near-identical); both normal width; both low stroke contrast.
- Traits (×0.20): 0.43 — Shares geometric, modern, monoline (3 of 7 traits).
- Role (×0.10): 1.00 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 5. Raleway — 86%

- Slug: `raleway` · sans · OFL-1.1 · Matt McInerney, Pablo Impallari, Rodrigo Fuenzalida · static
- Page: https://brandsweets.com/fonts/raleway · font.md: https://brandsweets.com/fonts/raleway/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 1.00 — x-height 0.52 vs 0.52 for Visby CF (near-identical); cap height 0.71 vs 0.71 for Visby CF (near-identical); both normal width; both low stroke contrast.
- Traits (×0.20): 0.29 — Shares geometric, monoline (2 of 7 traits).
- Role (×0.10): 1.00 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 6. Righteous — 85%

- Slug: `righteous` · display · OFL-1.1 · Astigmatic · static
- Page: https://brandsweets.com/fonts/righteous · font.md: https://brandsweets.com/fonts/righteous/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.96 — x-height 0.53 vs 0.52 for Visby CF (near-identical); cap height 0.70 vs 0.71 for Visby CF (near-identical); both normal width; both low stroke contrast.
- Traits (×0.20): 0.29 — Shares geometric, monoline (2 of 7 traits).
- Role (×0.10): 1.00 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 7. Funnel Display — 85%

- Slug: `funnel-display` · display · OFL-1.1 · static
- Page: https://brandsweets.com/fonts/funnel-display · font.md: https://brandsweets.com/fonts/funnel-display/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.87 — x-height 0.50 vs 0.52 for Visby CF (near-identical); cap height 0.68 vs 0.71 for Visby CF (close); both normal width; both low stroke contrast.
- Traits (×0.20): 0.40 — Shares geometric, monoline (2 of 5 traits).
- Role (×0.10): 1.00 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

### 8. Poppins — 84%

- Slug: `poppins` · sans · OFL-1.1 · Indian Type Foundry, Jonny Pinhorn, Ninad Kale · static
- Page: https://brandsweets.com/fonts/poppins · font.md: https://brandsweets.com/fonts/poppins/font.md
- Classification (×0.35): 1.00 — Same class: geometric.
- Metrics (×0.25): 0.91 — x-height 0.55 vs 0.52 for Visby CF (close); cap height 0.70 vs 0.71 for Visby CF (near-identical); both normal width; both low stroke contrast.
- Traits (×0.20): 0.50 — Shares geometric, modern, monoline (3 of 6 traits).
- Role (×0.10): 0.67 — Both suit display, heading.
- Language (×0.05): 1.00 — Covers all of Visby CF's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Visby CF.
- Family gate: pass — Same family: sans.

## Self-host Montserrat (woff2)

- 100 normal: https://fonts.brandsweets.com/montserrat/montserrat-100.woff2
- 200 normal: https://fonts.brandsweets.com/montserrat/montserrat-200.woff2
- 300 normal: https://fonts.brandsweets.com/montserrat/montserrat-300.woff2
- 400 normal: https://fonts.brandsweets.com/montserrat/montserrat-400.woff2
- 500 normal: https://fonts.brandsweets.com/montserrat/montserrat-500.woff2
- 600 normal: https://fonts.brandsweets.com/montserrat/montserrat-600.woff2
- 700 normal: https://fonts.brandsweets.com/montserrat/montserrat-700.woff2
- 800 normal: https://fonts.brandsweets.com/montserrat/montserrat-800.woff2
- 900 normal: https://fonts.brandsweets.com/montserrat/montserrat-900.woff2
- 100 italic: https://fonts.brandsweets.com/montserrat/montserrat-100i.woff2
- 200 italic: https://fonts.brandsweets.com/montserrat/montserrat-200i.woff2
- 300 italic: https://fonts.brandsweets.com/montserrat/montserrat-300i.woff2
- 400 italic: https://fonts.brandsweets.com/montserrat/montserrat-400i.woff2
- 500 italic: https://fonts.brandsweets.com/montserrat/montserrat-500i.woff2
- 600 italic: https://fonts.brandsweets.com/montserrat/montserrat-600i.woff2
- 700 italic: https://fonts.brandsweets.com/montserrat/montserrat-700i.woff2
- 800 italic: https://fonts.brandsweets.com/montserrat/montserrat-800i.woff2
- 900 italic: https://fonts.brandsweets.com/montserrat/montserrat-900i.woff2

## Connect an agent

Point any MCP client at the BrandSweets fonts endpoint to get this list with scores, or search the catalog:

- Endpoint: https://mcp.brandsweets.com/fonts/mcp
- Tools: `find_alternatives` (e.g. `find_alternatives({ commercialFont: "visby", limit: 8 })`), `list_commercial_fonts`, `list_fonts`, `suggest_fonts`.
