roff fue el primer programa de computadora de formateo de texto de Unix, también la más importante aplicación que funcionaba en la primera computadora específicamente adquirida para funcionar con Unix, y predecesor de los sistemas de procesamiento de documento nroff y troff en sistemas Unix.
Fue una versión de Unix del programa runoff de formateo de textos original de Multics, que a su vez fue descendiente de RUNOFF para CTSS (la primera aplicación de computadora para el formateo de textos).
La primera versión de Unix fue una reescritura de la versión BCPL de runoff en ensamblador de PDP-7, para el prototipo de Unix en este mismo sistema. Cuando la primera PDP-11 fue adquirida para UNIX a finales del año 1970 (una PDP-11/20), la justificación presentada a la administración por el costo de la adquisición fue que el sistema sería usado como un sistema de proceso de textos, así que roff fue rápidamente reescrito en ensamblador PDP-11, en 1971.
Dennis Ritchie nota que la capacidad de rápidamente modificar roff (puesto que fue software escrito localmente) para proveer características especiales necesitadas por el Departamento de Patente de los Laboratorios Bell fue un factor importante para la rápida adopción de UNIX por el Departamento de Patentes para satisfacer sus necesidades de procesamiento de textos. Esto dio mucha credibilidad a UNIX dentro de los Laboratorios Bell como para asegurar los gastos necesarios para adquirir uno de los primeros PDP-11/45 producidos en el mundo; fue en esa máquina en la que UNIX evolucionó en el sistema que más tarde sería el preferido en el mundo de la Ciencias de la Computación.