# Free alternatives to Chronicle

Chronicle is a commercial scotch serif from Hoefler&Co. (https://www.typography.com/fonts/chronicle-text/overview). Commercial; licensed from Hoefler&Co. 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: `chronicle`
- Also searched as: Chronicle Text, Chronicle Display
- Category: serif · Class: scotch, transitional
- Traits: editorial, classic, refined, warm
- Roles: body, longform, heading, display
- Metrics: x-height 0.46, cap height 0.68, normal width, medium contrast (approximate, publicly documented)
- Languages: latin, latin-ext · Variable: no
- Page: https://brandsweets.com/fonts/alternatives/chronicle

## 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. Source Serif 4 — 94%

- Slug: `source-serif-4` · serif · OFL-1.1 · Frank Grießhammer · static
- Page: https://brandsweets.com/fonts/source-serif-4 · font.md: https://brandsweets.com/fonts/source-serif-4/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.94 — x-height 0.47 vs 0.46 for Chronicle (near-identical); cap height 0.67 vs 0.68 for Chronicle (near-identical); both normal width; both medium stroke contrast.
- Traits (×0.20): 1.00 — Shares classic, editorial, refined, warm (4 of 4 traits).
- Role (×0.10): 0.50 — Both suit body, longform; Source Serif 4 is not tagged for heading, display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 2. Lora — 92%

- Slug: `lora` · serif · OFL-1.1 · Cyreal · static
- Page: https://brandsweets.com/fonts/lora · font.md: https://brandsweets.com/fonts/lora/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.87 — x-height 0.50 vs 0.46 for Chronicle (close); cap height 0.70 vs 0.68 for Chronicle (near-identical); both normal width; both medium stroke contrast.
- Traits (×0.20): 1.00 — Shares classic, editorial, refined, warm (4 of 4 traits).
- Role (×0.10): 0.50 — Both suit body, longform; Lora is not tagged for heading, display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 3. Gelasio — 86%

- Slug: `gelasio` · serif · OFL-1.1 · static
- Page: https://brandsweets.com/fonts/gelasio · font.md: https://brandsweets.com/fonts/gelasio/font.md
- Classification (×0.35): 1.00 — Same class: scotch, transitional.
- Metrics (×0.25): 0.92 — x-height 0.48 vs 0.46 for Chronicle (near-identical); cap height 0.69 vs 0.68 for Chronicle (near-identical); both normal width; both medium stroke contrast.
- Traits (×0.20): 0.50 — Shares classic, editorial (2 of 4 traits).
- Role (×0.10): 0.75 — Both suit body, heading, longform; Gelasio is not tagged for display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 4. Spectral — 85%

- Slug: `spectral` · serif · OFL-1.1 · Production Type · static
- Page: https://brandsweets.com/fonts/spectral · font.md: https://brandsweets.com/fonts/spectral/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.93 — x-height 0.45 vs 0.46 for Chronicle (near-identical); cap height 0.66 vs 0.68 for Chronicle (close); both normal width; both medium stroke contrast.
- Traits (×0.20): 0.60 — Shares classic, editorial, refined (3 of 5 traits).
- Role (×0.10): 0.50 — Both suit body, longform; Spectral is not tagged for heading, display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 5. IBM Plex Serif — 83%

- Slug: `ibm-plex-serif` · serif · OFL-1.1 · Mike Abbink, Bold Monday · static
- Page: https://brandsweets.com/fonts/ibm-plex-serif · font.md: https://brandsweets.com/fonts/ibm-plex-serif/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.84 — x-height 0.52 vs 0.46 for Chronicle (close); cap height 0.70 vs 0.68 for Chronicle (near-identical); both normal width; both medium stroke contrast.
- Traits (×0.20): 0.60 — Shares classic, editorial, warm (3 of 5 traits).
- Role (×0.10): 0.50 — Both suit body, longform; IBM Plex Serif is not tagged for heading, display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 6. Roboto Serif — 83%

- Slug: `roboto-serif` · serif · OFL-1.1 · Commercial Type, Greg Gazdowicz · static
- Page: https://brandsweets.com/fonts/roboto-serif · font.md: https://brandsweets.com/fonts/roboto-serif/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.80 — x-height 0.52 vs 0.46 for Chronicle (close); cap height 0.71 vs 0.68 for Chronicle (close); both normal width; both medium stroke contrast.
- Traits (×0.20): 0.50 — Shares classic, editorial (2 of 4 traits).
- Role (×0.10): 0.75 — Both suit body, heading, longform; Roboto Serif is not tagged for display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 7. Brygada 1918 — 82%

- Slug: `brygada-1918` · serif · OFL-1.1 · static
- Page: https://brandsweets.com/fonts/brygada-1918 · font.md: https://brandsweets.com/fonts/brygada-1918/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.97 — x-height 0.46 vs 0.46 for Chronicle (near-identical); cap height 0.67 vs 0.68 for Chronicle (near-identical); both normal width; both medium stroke contrast.
- Traits (×0.20): 0.25 — Shares classic (1 of 4 traits).
- Role (×0.10): 0.75 — Both suit body, heading, longform; Brygada 1918 is not tagged for display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

### 8. PT Serif — 82%

- Slug: `pt-serif` · serif · OFL-1.1 · ParaType · static
- Page: https://brandsweets.com/fonts/pt-serif · font.md: https://brandsweets.com/fonts/pt-serif/font.md
- Classification (×0.35): 1.00 — Same class: transitional.
- Metrics (×0.25): 0.87 — x-height 0.50 vs 0.46 for Chronicle (close); cap height 0.70 vs 0.68 for Chronicle (near-identical); both normal width; both medium stroke contrast.
- Traits (×0.20): 0.50 — Shares classic, editorial (2 of 4 traits).
- Role (×0.10): 0.50 — Both suit body, longform; PT Serif is not tagged for heading, display.
- Language (×0.05): 1.00 — Covers all of Chronicle's subsets (latin, latin-ext).
- Variable (×0.05): 1.00 — Static instances, like Chronicle.
- Family gate: pass — Same family: serif.

## Self-host Source Serif 4 (woff2)

- 200 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-200.woff2
- 300 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-300.woff2
- 400 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-400.woff2
- 500 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-500.woff2
- 600 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-600.woff2
- 700 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-700.woff2
- 800 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-800.woff2
- 900 normal: https://fonts.brandsweets.com/source-serif-4/source-serif-4-900.woff2
- 200 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-200i.woff2
- 300 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-300i.woff2
- 400 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-400i.woff2
- 500 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-500i.woff2
- 600 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-600i.woff2
- 700 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-700i.woff2
- 800 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-800i.woff2
- 900 italic: https://fonts.brandsweets.com/source-serif-4/source-serif-4-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: "chronicle", limit: 8 })`), `list_commercial_fonts`, `list_fonts`, `suggest_fonts`.
