El sistema de numeración unario es un sistema de numeración biyectivo de base 1. Es el sistema de numeración más simple que existe para representar los números naturales. Para representar un número N, se elige un símbolo arbitrario, que será la única cifra que tenga dicho sistema de numeración, y se repetirá N veces. Por ejemplo, si tomamos el símbolo | como cifra única, el número 6 se representará como ||||||. El sistema tradicional de contar con los dedos es un ejemplo de numeración unaria. El sistema unario es útil en procesos de conteo, como el marcador de un deporte, o contar el número de personas que entran en un lugar, o el número de votos que van saliendo en una elección, ya que no requiere ir enmendando los resultados previos, simplemente hay que seguir añadiendo símbolos para su posterior recuento.
Las marcas se suelen agrupar frecuentemente en grupos de cinco para que sea más legible y sencillo el recuento posterior. Cuando el símbolo utilizado es una raya (el más frecuente) es común atravesar la quinta línea sobre las cuatro previas para formar grupos. En los sistemas de numeración chino, japonés y coreano se agrupan los símbolos se van añadiendo hasta que el quinto cierra el grupo y forma un símbolo que significa cinco.
Otro método utilizado en Argentina, Brasil y también en Francia es ir dibujando las líneas formando los lados de un cuadrado. Uno se representa con una línea vertical, el dos formaría con ésta una L, el tres formaría una U junto a ellos, el cuatro cerraría el cuadrado y el cinco se añadiría en una de las diagonales del mismo.
Existen multitud de sistemas de numeración antiguos que, sin ser unarios, provienen claramente de sistemas de este tipo:
Los tres primeros números del sistema de numeración romano (hasta el cuatro en los relojes) se basan en el sistema de numeración unario.
El sistema de numeración egipcio utiliza el sistema unario para números del uno al nueve, después utiliza un número para el diez, que repite como si fuera un sistema unario para los números del diez al noventa. Así sucesivamente, tiene símbolos para 1, 10, 100, 1000, 10.000, 100.000 y hasta 1.000.000 que repite y conjunta para formar números.
La numeración babilónica utiliza la agrupación de una cifra que representa al uno para todos los números de uno al diez. Tiene otro símbolo que representa al diez que repite y agrupa para formar las decenas hasta el 50, ya que es un sistema sexagesimal
Así, en todos estos sistemas de numeración posicionales se comenzó con sistemas basados en el unario para, posteriormente, ir haciendo cifras para números mayores (frecuentemente las potencias de diez) con objeto de simplificar la lectura de los números.
Para ver un ejemplo real de numeración unaria por civilizaciones véase el Papiro matemático de Moscú, datado del año 1880 a. C.
La suma y resta de números en sistema unario se hacen simples, ya que sólo consiste en juntar dos números o tachar símbolos. Sin embargo la multiplicación y división en este sistema resultan bastante complicados.
Por su definición, no se puede representar el número cero en este sistema. Si se introdujera cualquier símbolo para representar al cero, eso convertiría al sistema en un sistema de numeración binario. Esto caracteriza, por ejemplo, al sistema de numeración romano, que es incapaz de representar la ausencia de algo, lo cual es un inconveniente grande para la Matemática y su desarrollo.
Comparado con otros sistemas posicionales de numeración, el sistema de numeración unario tiene muchos inconvenientes tanto de cálculo como de representación de números grandes por lo que no es frecuentemente utilizado salvo para casos simples de conteo. Se utiliza en descripción de problemas de decisión en teoría de la computación (por ejemplo en problemas P-completos), donde se utiliza para reducir "artificialmente" el tiempo de ejecución o requerimientos de espacio de un problema. Por ejemplo, en el problema de factorización de enteros se sospecha que si el número que se introduce está en forma sistema de numeración binario se requiere un tiempo de computación superior a una función polinómica. Sin embargo, si el número se introduce en sistema unario el tiempo que se requiere es lineal. Pero esto es potencialmente engañoso, ya que utilizar un número unario de entrada es más lento, sea cual sea el número. La diferencia está en que si se representa el input en cualquier base N superior a uno, la representación de este tiene un número de cifras igual al logaritmo en base N del propio número, sin embargo en base uno la representación del número X tiene X cifras. Por lo tanto, mientras el tiempo de computación y el espacio requerido parecen menores, introducir el número de entrada son superiores.