Quitar Acentos y Tildes

Elimina acentos y tildes: á→a, ñ→n, ü→u.

Funciona en cualquier idioma — tu texto no sale de esta pestaña

Quitar tildes y acentos de un texto

Sobre esta herramienta para quitar acentos

Quitar acentos (o quitar tildes, que en la práctica es lo mismo) significa eliminar las marcas diacríticas de las letras — convertir café en cafe, señor en senor, über en uber — dejando intactas las letras base y todo lo demás. Sirve para nombres de archivo, slugs de URL, claves de base de datos, campos que solo aceptan ASCII o para comparar textos que difieren solo por los acentos. Pega el texto abajo y recíbelo limpio; toda la conversión corre en tu navegador con normalización Unicode, no con una tabla escrita a mano, así que funciona igual en español, portugués, francés, alemán, checo, polaco y vietnamita.

Pega un texto y recíbelo sin marcas diacríticas: café se vuelve cafe, señor se vuelve senor, über se vuelve uber. Útil para nombres de archivo, nombres de usuario, claves de base de datos, sistemas que solo aceptan ASCII y para comparar textos donde los acentos varían de un registro a otro. Un interruptor conserva la ñ intacta, porque en español quitarla cambia la palabra.

La conversión usa normalización Unicode en vez de una tabla de reemplazos escrita a mano, y por eso funciona igual en español, portugués, francés, alemán, checo, polaco y vietnamita sin saber nada de esos idiomas. Todo corre en tu navegador: puedes pegar una lista de clientes o un export de producción y nada de eso sale de la página.

Así funciona por dentro, que es lo que explica también sus límites. Unicode puede escribir é de dos maneras: como el punto de código único U+00E9, o como la letra e seguida de U+0301, el acento agudo combinante. Las formas de normalización del anexo #15 de Unicode convierten entre ambas: NFC compone en un solo punto de código, NFD descompone en letra base más marcas. Esta herramienta aplica NFD y luego borra todo lo que caiga en el bloque Combining Diacritical Marks, de U+0300 a U+036F. No hay ninguna tabla de letras de por medio, y por eso también funcionan las marcas apiladas: la ế del vietnamita es e + circunflejo + agudo, tres puntos de código después de NFD, y las dos marcas caen dentro del bloque, así que sale una e limpia.

Vale la pena aclarar un punto ortográfico, porque se malinterpreta seguido: la ñ no es una n con tilde. Para la RAE es una letra propia del alfabeto español, con su propia entrada en el diccionario. Que Unicode la descomponga en n + U+0303 es un detalle de cómo se codifica, no una afirmación sobre el idioma, y es exactamente la razón por la que existe el interruptor de arriba: si el sistema de destino aguanta la ñ, consérvala. Del otro lado están las letras que esta herramienta no toca. ø, ł, đ, ß, æ, œ, þ y la ı turca sin punto no tienen descomposición canónica en Unicode — son letras distintas, no letras decoradas — así que NFD las deja igual y salen tal cual entraron. Convertir ß en ss o ø en o es transliteración, un mapeo propio de cada idioma, y no es lo mismo que quitar acentos.

Y el caso para no usar esta herramienta. Si lo que quieres es buscar o comparar sin importar los acentos, no destruyas el dato: compáralo bien. La colación utf8mb4_0900_ai_ci de MySQL es insensible a acentos y a mayúsculas por diseño, PostgreSQL trae la extensión unaccent, y en JavaScript Intl.Collator con sensitivity: “base” considera iguales a y á sin tocar las cadenas. Quita los acentos cuando el destino de verdad no los soporta: campos de formulario limitados a ASCII, cargas de archivos planos heredados, slugs de URL y nombres de archivo que tienen que sobrevivir el viaje entre Windows, Linux y macOS. Y ten presente que en español la tilde carga significado — año y ano, sí y si, más y mas, papá y papa — así que un texto sin tildes sirve como clave técnica, no como texto publicado.

Qué acentos se quitan y qué letras se dejan igual

Todo lo que Unicode modela como una letra base más una marca combinante en el rango U+0300–U+036F se elimina, sin importar de qué idioma venga. Estas son las marcas que la gente de verdad pega:

LetrasResultadoMarca e idioma
á é í ó ú / Á É Í Ó Úa e i o u / A E I O UAcento agudo — español, portugués, checo
ñ ã õn a oTilde — español, portugués
ä ö üa o uDiéresis — alemán, ü español
à è â ê î ô ûa e a e i o uGrave y circunflejo — francés
çcCedilla — francés, portugués, turco
ř š č ž ďr s c z dCaron — checo, eslovaco, croata
ą ę ż ś ća e z s cOgonek, punto, agudo — polaco
ế ệ ừ ữe e u uMarcas apiladas — vietnamita

Las letras de abajo no son letras con acento en absoluto. Son letras propias sin descomposición canónica, así que la normalización las deja intactas y esta herramienta también. La tercera columna es la transliteración convencional que tendrías que aplicar tú mismo — y es una convención, no una regla.

LetraDevuelta tal cualTransliteración habitual
ß (alemán)ßss
ø Ø (danés, noruego)ø Øo o oe
ł Ł (polaco)ł Łl
đ Đ (croata, vietnamita)đ Đd o dj
æ Æ (danés, noruego)æ Æae
œ Œ (francés)œ Œoe
þ ð (islandés)þ ðth y d
ı (i turca sin punto)ıi

Dos filas merecen una segunda mirada. La å danesa y noruega sí se convierte en a, porque en realidad es a más un anillo combinante encima, mientras que su vecina ø no — así que una palabra puede salir medio convertida. Y la İ turca (I mayúscula con punto) se convierte en I mientras que la ı minúscula (i sin punto) se deja igual, lo que rompe el emparejamiento de mayúsculas y minúsculas del que depende el turco.

Si estás depurando un desajuste en vez de limpiar texto, la pregunta útil suele ser la normalización, no los acentos. Dos cadenas que se ven idénticas en pantalla pueden diferir en bytes porque una está en NFC (la é como un solo punto de código) y la otra en NFD (e más una marca combinante). Las comprobaciones de igualdad, el ordenamiento, las expresiones regulares y la longitud de cadena se rompen con eso, y nada en el texto renderizado lo revela. En JavaScript, llamar a s.normalize("NFC") en ambos lados arregla la comparación sin borrar nada, y el W3C recomienda NFC para el contenido en la web. Quita los acentos solo cuando el destino de verdad no los pueda guardar.

Cómo quitar acentos en Excel y en Word

Excel no trae ninguna función para quitar acentos. Lo más cerca que llegas es anidar SUSTITUIR, una vez por cada letra que quieras reemplazar. Para las cinco vocales acentuadas queda así:

=SUSTITUIR(SUSTITUIR(SUSTITUIR(SUSTITUIR(SUSTITUIR(A1;"á";"a");"é";"e");"í";"i");"ó";"o");"ú";"u")
Excel en español. Si tu versión usa coma como separador de argumentos en vez de punto y coma, cambia los ; por , — depende de tu configuración regional.

Y eso cubre solo cinco letras: la ñ y la ü necesitan sus propios SUSTITUIR anidados, y la fórmula deja de ser legible. Si lo haces seguido, lo sensato es encapsularla en una función LAMBDA con nombre (Excel 365) o en una macro.

En Word tampoco hay atajo: con Inicio > Edición > Reemplazar toca una pasada por cada letra (á→a, luego é→e, y así), sin forma de hacerlas todas de golpe.

El campo de arriba procesa el texto completo de una sola vez con normalización Unicode — mayúsculas, ñ y ü incluidas — sin fórmulas ni columnas auxiliares, y con la opción de conservar la ñ.

Errores frecuentes al quitar acentos

La herramienta no te frena para cometer estos errores — son decisiones que tienes que tomar sobre tu texto antes de quitar nada.

El errorQué se rompeLa solución
Quitar la ñ en texto españolaño → ano cambia el significado; señor → senor pierde la correcciónUsa el interruptor "conservar ñ"; quita la ñ solo cuando el destino no la puede guardar (campo ASCII, importación heredada)
Destruir los acentos en vez de compararPerder los acentos en tu base de datos significa que nunca los podrás recuperarUsa una colación insensible a acentos (utf8mb4_0900_ai_ci de MySQL) o una extensión (unaccent de Postgres) para búsquedas; guarda los acentos en el almacenamiento
Suponer que ß se convierte en ss automáticamenteLa ß alemana, la ø danesa y la ł polaca pasan sin cambios — son letras, no letras con acentoNecesitan transliteración por idioma (una tabla que tú escribes), que es distinta de quitar acentos
Olvidar las mayúsculasÁ, É, Ñ, Ü en titulares e IDs a veces sobreviven porque un reemplazo manual las omiteEsta herramienta maneja ambos casos (á y Á, ñ y Ñ) de una vez porque la normalización Unicode lo hace
Aplicar el resultado a texto publicadoLos lectores en español, portugués y francés ven significado erróneo (papá vs papa) o pronunciación incorrectaUsa el texto sin acentos solo como clave técnica — nombres de archivo, slugs de URL, IDs de base de datos — nunca como texto de cuerpo
No normalizar a NFC despuésLa salida puede quedar en forma descompuesta (NFD); algunos sistemas solo aceptan la precompuesta (NFC), notablemente las APIs viejas de WindowsSi guardas el resultado en un sistema de archivos o base de datos estricta, llama a .normalize("NFC") en el lado de JS o el equivalente en tu lenguaje

Tablas de referencia

Preguntas frecuentes

¿Cambia la ñ?

Por defecto la ñ se convierte en n, pero hay un interruptor para conservarla, útil cuando "año" y "ano" deben distinguirse.

¿Qué idiomas soporta?

Cualquier idioma escrito en alfabeto latino con diacríticos: español, portugués, francés, alemán, checo, vietnamita y más.

¿Afecta las mayúsculas?

Sí, por igual: Á→A, Ñ→N, Ü→U. Fuera de eso, las mayúsculas y minúsculas se conservan exactamente.

¿Cómo quito acentos de nombres de archivo?

Pega la lista de nombres en el campo de arriba (uno por línea), quita los acentos y copia el resultado. Para renombrar archivos en el disco en lote, PowerShell en Windows itera con Get-ChildItem y pasa cada nombre por .Normalize([Text.NormalizationForm]::FormD); Linux y macOS traen convmv (convmv --notest -f utf8 -t ascii --replace) o puedes canalizar por iconv con //TRANSLIT. Renombra atómicamente, guarda un respaldo y ten presente que HFS+ de Apple guardaba los nombres en forma descompuesta mientras que APFS usa la precompuesta — ese desajuste por sí solo produce errores de "archivo no encontrado".

¿Puedo quitar acentos en SQL o en una base de datos?

Sí, y en la mayoría de los casos no deberías — deberías comparar sin distinguir acentos en su lugar. La colación utf8mb4_0900_ai_ci de MySQL y la utf8mb4_uca1400_ai_ci de MariaDB son insensibles a acentos por diseño; PostgreSQL trae la extensión unaccent que puedes llamar así: SELECT unaccent('café'); SQL Server tiene colaciones insensibles a acentos (Latin1_General_CI_AI). Cuando de verdad tienes que quitar los acentos físicamente (para un índice de búsqueda o para exportar texto ASCII), lo más limpio es TRANSLATE con juegos de caracteres origen y destino, o la función unaccent() de Postgres. Destruye el dato solo al salir a un sistema que no puede guardarlo.

¿Quitar acentos rompe palabras en español?

A veces — esa es justo la razón por la que existe el interruptor para conservar la ñ. En español, la tilde carga significado: año se vuelve ano, sí se vuelve si, papá se vuelve papa. Quitar acentos es seguro para una clave técnica (nombre de archivo, slug, ID de base de datos) pero no para texto publicado. Y la ñ no es una n con tilde: para la RAE es una letra propia del alfabeto, por eso el interruptor para conservarla viene activado por defecto en textos en español.

¿Funciona con emojis, chino o árabe?

Los deja intactos. La eliminación de acentos solo toca caracteres que Unicode modela como una letra base más una marca diacrítica combinante en el rango U+0300–U+036F. Los emojis (🎉), los ideogramas CJK (漢字), el árabe (العربية) y el cirílico (Русский) pasan sin cambios porque ninguno tiene una descomposición canónica en ese rango. Un texto mixto — inglés con algo de chino y algo de español con tildes — es seguro: solo se afectan los caracteres latinos con acento.

Herramientas relacionadas