Analítica privada, en tu servidor
Analítica sin banner de cookies.
Descubre qué páginas, fuentes, campañas y eventos dan resultado: sin cookies, sin banner de consentimiento, sin SaaS de terceros y sin sacar los datos de tu servidor. Tadoru se autoaloja y se instala en tres comandos.
Lo que obtienes
Respuestas claras para mejorar tu web.
Entiende tu audiencia, tu contenido y tus conversiones de un vistazo, sin crear perfiles de las personas que hay detrás de las cifras.
Descubre qué atrae visitas
Mide visitantes y páginas vistas, encuentra tus páginas más útiles y compara referrers, países, dispositivos y campañas UTM. Los desgloses muestran de dónde llega la atención y hacia dónde se dirige.
Usa esa información para decidir qué publicar, promocionar o mejorar, sin perderte en una suite de analítica compleja.
Descubre qué hacen después
Mide tiempo de interacción, profundidad de scroll, clics externos, descargas, eventos y objetivos propios. Core Web Vitals muestra si la experiencia real es rápida y estable.
Tadoru aporta señales prácticas para tomar decisiones de contenido, campaña y producto sin poner el foco en visitantes individuales.
Analítica que puedes aprovechar
Las señales útiles, sin el perfil personal.
Mide visitantes, páginas, referrers, campañas, eventos y Web Vitals. Tadoru deja fuera a propósito los detalles que permitirían identificar a alguien con el tiempo.
Lo que sí se recoge
- +Rutas de las páginas, sin detalles sensibles
- +Fuentes de tráfico y sitios de referencia
- +Campañas
- +Solo el país, nunca la ubicación precisa
- +Familia de dispositivo y navegador, no versiones exactas
- +Tiempo de interacción y profundidad de scroll
- +Clics salientes y descargas
- +Eventos y objetivos personalizados
- +Web Vitals
Lo que Tadoru no recoge
- ×Cookies ni almacenamiento en el navegador
- ×Fingerprinting del navegador
- ×Guardar direcciones IP ni la información completa del navegador
- ×Detalles exactos del dispositivo o navegador
- ×Identificadores que duren más que el reinicio diario de privacidad
- ×Perfiles que sigan a una persona entre sitios
- ×Datos de visitantes que usan DNT o GPC
No es solo una promesa de marketing: Tadoru solo acepta estas categorías y rechaza cualquier otra, evitando que se acumulen datos personales adicionales con el tiempo.
Instalación
Instala Tadoru en tres comandos.
En un VPS con Node 22 o superior: instala, responde a cuatro preguntas y arranca el servicio. No necesitas Docker, una base de datos aparte ni crontab.
Instala el paquete
Una instalación global de npm y ya está. La base de datos de GeoIP va dentro del paquete, así que no hace falta llamar a ningún servicio de fuera.
sudo npm install -g tadoru
Configúralo
Pásale los dominios que quieres medir. Crea el usuario sin privilegios, escribe una unidad endurecida e imprime una sola vez la contraseña del panel: cópiala. Las migraciones se aplican al arrancar, y la rotación de la sal, los agregados y el borrado por retención corren dentro del propio proceso. Tú no tienes que tocar nada de eso.
sudo tadoru install-service \ --sites tudominio.com,otrodominio.es
Arráncalo
install-service no enciende nada por su cuenta, y es a propósito: arrancar el servicio queda como una decisión explícita tuya.
sudo systemctl enable --now tadoru
Hazlo accesible
Tadoru escucha en 127.0.0.1:3000 y nunca da la cara a internet. Apunta un subdominio a tu servidor, termina HTTPS con lo que ya tengas —nginx, Caddy, Apache, el balanceador de tu hosting— y reenvía hacia él pasándole esto:
Host el nombre publico X-Forwarded-Proto https X-Forwarded-For la IP del visitante
Sin ello el panel te da un snippet roto, la cookie de administrador pierde su marca Secure, y todos tus visitantes parecen venir del país de tu propio servidor.
Añade el snippet a tu web
Una etiqueta script. Unos 4 KB y sin dependencias.
Tu web se identifica por su propio dominio, así que no hay nada que registrar en ningún sitio.
<script defer src="https://tadoru.tudominio.com/t.js"> </script>
El panel
Descubre qué funciona en una sola pantalla.
Detecta cambios de tráfico, contenido destacado y fuentes de audiencia sin preparar informes. El panel es ligero, está disponible en tres idiomas y no carga recursos de terceros.
Páginas más vistas
| Ruta | Vistas | |
|---|---|---|
| / | 5.204 | |
| /docs/install | 3.177 | |
| /blog/sin-cookies | 1.982 | |
| /precios | 1.093 | |
| /changelog | 624 |
Países
| País | Visitantes | |
|---|---|---|
| España | 1.842 | |
| Alemania | 866 | |
| Japón | 571 | |
| Francia | 442 | |
| Portugal | 298 |
Cada desglose calcula sus visitantes únicos de forma independiente, sin sumar totales incompatibles, para que las comparaciones por página, país y fuente sigan siendo útiles y precisas.
Privacidad por defecto
Totales útiles sin identidades persistentes.
// se calcula en cada petición y se descarta visitor_id = blake2b( sal_del_dia + site_id + ip + user_agent ).slice(0, 16) // la IP y el user agent se usan aquí, // pero no se escriben en ningún sitio: // no hay columna ip ni columna user_agent // en la base de datos.
- +Sin cookies ni almacenamiento en el navegador
- +La IP y el user agent se usan brevemente, pero nunca se guardan
- +Sin fingerprinting ni seguimiento entre sitios
- +Respeta las señales DNT y GPC
- +Los eventos brutos se borran a los 25 meses; los agregados anónimos permanecen
Una sal diaria crea un identificador temporal y se destruye cada 24 horas. No se puede vincular a la misma persona entre días ni entre sitios. Por eso, una sesión que cruza las 00:00 UTC se cuenta como dos.
El día a día
La parte aburrida, ya resuelta.
La copia de seguridad es un comando
tadoru backup vuelca la base de datos en un fichero con la fecha. Para
restaurar, tadoru restore: se niega si el servidor está arrancado y antes
comprueba que el fichero sea de verdad una base de datos de Tadoru.
Saber si está funcionando
GET /health te dice cómo está la base de datos y cada tarea programada,
incluido si alguna se ha quedado colgada. tadoru status pregunta lo mismo desde
la terminal.
Si pierdes la contraseña
Se guarda hasheada, así que no hay forma de leerla. Lo que hay es
sudo tadoru reset-password: genera una nueva, hace copia del fichero de entorno
y te la enseña una sola vez.
Actualizar
sudo npm update -g tadoru y reiniciar. Las migraciones son idempotentes y se
aplican solas al arrancar, así que no hay ningún paso manual.
Los datos viejos se borran solos
Los eventos brutos se borran a los 25 meses sin que configures nada. Los agregados son anónimos, así que esos se quedan.
No arranca si está mal configurado
Si falta la contraseña de administrador, o si sigue puesta la de ejemplo, el servicio se para y te explica por qué. Nunca arranca con una credencial que cualquiera adivinaría.
Preguntas
Dudas razonables antes de instalarlo.
¿De verdad no necesito banner de consentimiento?
¿Quién responde por los datos, tú o yo?
¿Funciona con JavaScript desactivado?
<noscript> sigue registrando la
fecha y hora, el sitio, la ruta, el referrer, el país, la familia de dispositivo y el
idioma. Lo que necesita el script es el tiempo de interacción, el scroll, los clics
externos, los eventos propios y las Web Vitals.
¿Por qué SQLite? ¿Va a aguantar?
¿Cuántas webs puede medir una instalación?
¿Cuánto cuesta?
¿Puedo sacar los datos en bruto?
sqlite3 y lo consultas como te
apetezca. No hay función de exportar porque no hay de dónde escapar: los datos ya son tuyos
y están en tu máquina.
Mide tus webs. No sigas a nadie.
Gratis, AGPL-3.0 y funcionando en tu servidor en unos cinco minutos.
sudo npm install -g tadoru