Lo que el sector recomienda en realidad
Antes de discutir sobre gustos, conviene contar. Capturamos los resultados para esta consulta y analizamos cada página con contenido accesible, contando qué familias recomienda cada una.
| Páginas que la recomiendan | |
|---|---|
| Inter | 4 / 5 |
| Plus Jakarta Sans | 4 / 5 |
| Geist | 2 / 5 |
| Lato | 2 / 5 |
| Space Grotesk | 2 / 5 |
| Outfit | 2 / 5 |
La convergencia es real, y leerla como pereza es no entender el punto. Estas fuentes siguen apareciendo porque satisfacen una lista específica de restricciones que la mayoría de las tipografías no cumplen; y una vez que se conoce la lista, tanto la convergencia como la forma de evitarla resultan evidentes.
En un producto, una combinación suele ser una sola familia
Los consejos sobre combinaciones tipográficas provienen mayoritariamente del diseño editorial y de marca, donde lo clásico es una serif de display sobre una sans de cuerpo. Las interfaces de producto funcionan de otro modo. La mayor parte del texto en la pantalla de un producto tiene entre 12 y 16 píxeles: etiquetas, celdas de tablas, sugerencias de formularios, elementos de navegación, estados vacíos. Hay muy poco "display" y una gran cantidad de texto funcional, pequeño y denso.
Así que la respuesta habitual es una sola familia utilizada en dos funciones —una configuración más pesada y compacta para los encabezados, y una regular para el cuerpo— donde la diferencia se establece mediante el peso, el tamaño y el espaciado entre letras, en lugar de recurrir a un segundo diseño. Esto no es un compromiso. Es lo que logra que una interfaz densa se sienta calmada y elimina toda una clase de desajustes casi imperceptibles.
Token specimen · real values
Ambient Sage
Live renderAmbient Sage's actual tokens — the same values its exports use.
Typography
Ambient Sage
Scale: compact-product
Density: balanced
Heading · Plus Jakarta Sans · 1.875rem
Sample headline
Subheading · Plus Jakarta Sans · 1.375rem
A warm-sage neutral-surface mobile kit with a single vivid yellow accent, flat tonal cards, and oversized display numerals.
Body · Plus Jakarta Sans · 1rem
Ambient Sage uses a near-white warm-sage canvas (#f3f4ef) with card panels distinguished only by a tonal shift to #e5e6e0, never by shadows or borders. A single vivid yellow (#fee951) is the only saturated color and appears sparingly at component scale as orbs, button fills, and focus rings. Primary data values render as oversized bold hero numerals with a small superscript unit. Typography is a friendly rounded geometric (Plus Jakarta Sans) with no uppercase and no tight tracking, while JetBrains Mono is reserved for hex codes and technical strings. Generous rounding and luminance-only contrast give the whole system a calm, minimal feel.
Mono · JetBrains Mono · 0.8125rem
npx shadcn add ambientsage.json
Aa
Plus Jakarta Sans · Heading
Aa
Plus Jakarta Sans · Body
ABCDEFGHIJKLM NOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
0123456789 & @ # % →
Dos tipografías que son casi iguales se leen como un error. Dos que son obviamente distintas se leen como una decisión.
Las cinco cosas que una tipografía de producto debe cumplir
- Numerales tabulares. En el momento en que tienes una tabla, una factura, una lista de precios o una métrica que se actualiza, los dígitos proporcionales hacen que las columnas vibren y que los números cambien de ancho al cambiar de valor. Una fuente sin cifras tabulares —o una UI que nunca las habilita— produce esos dashboards erráticos que todo el mundo ha visto y nadie sabe explicar por qué.
- Separación real entre pesos adyacentes. La jerarquía de un producto suele residir entre 400 y 600 en tamaños pequeños. Si el 400 y el 500 son casi idénticos a 14px, todas las etiquetas parecen tener el mismo peso y la jerarquía deja de existir silenciosamente. Comprueba esto en tu tamaño de cuerpo real, no a 48px, donde todas las familias lucen bien.
- Una altura de x (x-height) elevada. El texto pequeño constituye la mayor parte de un producto. Las fuentes con una x-height generosa y aperturas abiertas mantienen la legibilidad a 12–13px; las fuentes elegantes con x-heights pequeñas se vuelven ilegibles y terminas compensándolo aumentando el tamaño, lo que rompe tu densidad.
- Caracteres inequívocos.
1,leI;0yO;rnym. Los productos muestran IDs, claves de API, códigos de error y nombres de usuario. Una fuente donde estos se confundan genera tickets de soporte, y esto es invisible en una muestra de lorem ipsum. - Una licencia que cubra una web app. Self-hosting, incrustación de la app y el nivel de tráfico que esperas. Esta es la restricción que se descubre al final y la que más duele, lo cual es gran parte de la razón por la que las Google fonts de licencia abierta dominan todas las listas.
Esas cinco condiciones descartan la mayoría de las tipografías, que es precisamente por lo que los mismos nombres se repiten constantemente. Pero fíjate en lo que *no* está en la lista: nada sobre el estilo, la época o la personalidad. Las restricciones reducen el campo a unas pocas docenas de familias, no a cuatro; y la elección restante es genuinamente tuya.
De dónde proviene realmente la distinción
Si la fuente del cuerpo de todo el mundo es una grotesk neutra, igualarla no te cuesta nada y diferenciarla te aporta poco —el lector no se queda mirando las celdas de tu tabla admirando la tipografía. Otros dos mecanismos hacen mucho más trabajo:
- Un rol de display que sea genuinamente distinto. Una sans condensada, una serif real o una grotesk de formas distintivas usada solo para títulos de página y superficies de marketing. Aparece poco y define la voz del producto, y como no tiene que soportar texto denso, no tiene que cumplir con las cinco restricciones anteriores.
- Una monoespaciada elegida en lugar de heredada. Cualquier producto que muestre código, IDs, marcas de tiempo o métricas tiene una fuente mono en pantalla constantemente. Dejarla como la predeterminada del navegador es una decisión de diseño no tomada, y elegir una es un movimiento económico y distintivo que nadie copia.
Las combinaciones reales de los kits de lanzamiento siguen exactamente ese patrón: una sans condensada sobre un cuerpo neutro; una serif de display sobre una sans geométrica; una sola familia usada en ambos roles cuando el producto es lo suficientemente denso como para que una segunda fuente suponga ruido. Lo que ninguna de ellas hace es combinar dos grotesks similares y esperar que la diferencia se note.
Aquí tienes tres de esos patrones renderizados en vivo, para que puedas comparar el *rol de display* directamente —el único lugar donde la tipografía de un producto difiere significativamente. Léelos al final de la escala, no al principio de los encabezados: todo parece distintivo a 48px.
Token specimen · real values
Terrain Vivant
Live renderTerrain Vivant's actual tokens — the same values its exports use.
Typography
Terrain Vivant
Scale: perfect-fourth
Density: balanced
Heading · Space Mono · 3rem
Sample headline
Subheading · Space Mono · 2.25rem
A bold two-color institutional editorial system built on vivid green and cobalt blue full-screen surfaces, with monospace type throughout and zero-radius geometry.
Body · Space Mono · 1rem
A resolutely flat two-color surface system. Vivid grass-green (#229f39) and deep cobalt-blue (#2b3386) are sovereign peers: either can fill an entire screen or section, with no neutral intermediary. All text is set in Space Mono at every scale from hero display down to captions, making the monospace grid the primary typographic voice rather than a code aesthetic. All shapes are sharp 90-degree rectangles, and section breaks use stacked parallel horizontal lines as a graphic band.
Mono · Space Mono · 0.75rem
npx shadcn add terrainvivant.json
Aa
Space Mono · Heading
Aa
Space Mono · Body
ABCDEFGHIJKLM NOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
0123456789 & @ # % →
La escala importa más que la familia
Esta es la parte a la que las listas de recomendaciones nunca llegan, y es donde la mayoría de la tipografía de producto falla realmente. Una familia perfectamente elegida con una escala ad-hoc se ve peor que una familia sencilla con una escala consistente.
Define cuatro cosas y escríbelas: un tamaño base, una proporción entre pasos, un conjunto pequeño de alturas de línea y qué pesos son permitidos. Una proporción de entre 1.2 y 1.25 se adapta bien a una UI de producto densa; las proporciones mayores crean páginas de marketing hermosas pero no dejan nada utilizable entre un encabezado de sección y una etiqueta de tabla. La altura de línea debe reducirse a medida que aumenta el tamaño, algo que la gente suele esperar al revés. Y restringir los pesos permitidos a dos o tres es lo que evita que un codebase acumule cinco.
Establece la regla de los numerales con la escala
font-variant-numeric: tabular-nums pertenece a las tablas, métricas y cualquier cosa con dígitos alineados —y proportional-nums a la prosa continua, donde las cifras tabulares se ven demasiado espaciadas. Decidir esto una vez a nivel de escala es una regla de dos líneas; descubrirlo por cada componente es un año de pequeñas inconsistencias.
Por qué esto ha empeorado recientemente
Las interfaces se generan cada vez más a partir de un brief escrito, y la tipografía es donde esos briefs son más escasos. Analizamos 299 archivos DESIGN.md públicos —el documento que un agente de código lee antes de escribir la UI. El 83% menciona la tipografía, lo cual suena bien hasta que ves lo que dicen: el 44% nunca indica un único valor de tamaño concreto, y el 54% contiene al menos un adjetivo impreciso, frecuentemente "clean" o "modern".
"La tipografía debe sentirse refinada" no es una especificación, es un acuerdo. Un agente lo satisface con su idea media de lo refinado, que es Inter a 16px con una altura de línea de 1.5, y lo mismo hace el agente de cualquier otra persona. Una familia con nombre, un tamaño base, una proporción y una lista de pesos permitidos cambia el resultado en cuatro líneas.
Elección, en orden
- 1
Filtrar por las cinco restricciones
Numerales tabulares, separación de pesos en tu tamaño de cuerpo, x-height, ambigüedad de caracteres, licencia. Esto toma veinte minutos y elimina la mayor parte del campo antes de que entre en juego el gusto.
- 2
Probar a 13px en una tabla
No en una muestra. Configura una tabla real con números, una columna de ID y una mezcla de pesos 400 y 500. Casi todos los fallos aparecen aquí y en ningún otro lugar.
- 3
Decidir si necesitas una segunda familia
Si el producto es denso, probablemente no; dedica el esfuerzo a la escala. Si decides añadir una, que sea una fuente de display que sea inequívocamente distinta.
- 4
Elegir la monoespaciada deliberadamente
Si cualquier código, ID o marca de tiempo aparece en tu UI, esta fuente estará en pantalla constantemente y, por accidente, suele ser la predeterminada del navegador.
- 5
Escribe la escala
Tamaño base, ratio, alturas de línea, pesos permitidos y la regla de los numerales. En el repo, donde tanto la siguiente persona como el agente lo leerán.
La tipografía como parte de un sistema, no como una muestra
Cada kit aquí incluye una combinación tipográfica real con una escala completa, pesos y tracking — junto con sus roles de color, radios y movimiento, instalables como un único elemento del registro de shadcn. Los kits gratuitos no requieren cuenta.
FAQ
¿Cuál es la mejor combinación de fuentes para un producto SaaS?
Para la mayoría de las interfaces de producto, una familia en dos roles —una configuración más pesada y compacta para los encabezados y una regular para el cuerpo— donde la jerarquía se defina mediante el peso, el tamaño y el espaciado entre letras. Añada una segunda familia solo para un rol de display, y asegúrese de que sea inequívocamente diferente. Una coincidencia cercana entre dos grotescas similares se percibe como un error más que como una decisión.
¿Por qué todas las listas de fuentes para SaaS recomiendan las mismas?
Porque la tipografía de un producto debe satisfacer cinco restricciones que la mayoría de las fuentes no cumplen: numerales tabulares, separación visible entre pesos adyacentes en tamaños pequeños, una altura de x generosa, distinción clara entre 1/l/I y 0/O, y una licencia que cubra una aplicación web. Esto reduce drásticamente el campo, y las fuentes de licencia abierta superan el obstáculo legal sin necesidad de negociaciones.
¿Realmente importan los numerales tabulares?
En el momento en que tenga una tabla, una lista de precios o una métrica que se actualice. Con dígitos proporcionales, las columnas no se alinean y los números cambian de ancho según su valor, lo que provoca esos dashboards sutilmente inestables que la gente nota sin saber explicar por qué. Aplique font-variant-numeric: tabular-nums en los dígitos alineados y proporcionales en el texto corrido.
¿Cuántos pesos debería usar?
Dos o tres, decididos de antemano. La jerarquía de producto reside principalmente entre 400 y 600 en tamaños pequeños; si el 400 y el 500 parecen idénticos en el tamaño de su cuerpo, la jerarquía deja de funcionar silenciosamente. Restringir el conjunto permitido es también lo que evita que una base de código acumule cinco pesos que nadie eligió.
¿Es alguna vez adecuada una serif para la UI de un producto?
Como fuente de display, a menudo: es la forma más sencilla de no sonar como cualquier otro producto, y al llevar poco texto denso, no necesita superar las restricciones de tamaño pequeño. Como fuente de cuerpo en una interfaz densa, rara vez: los requisitos de altura de x y apertura a 12–14px descartan la mayoría de ellas.