Tu tasa de conversión no significa nada sin esto
Medido hoy en una tienda WooCommerce real, 31 días y 11.044 sesiones: la tasa global es del 48,31 %, y ninguno de los cinco grupos que la componen se parece a ese número. Van del 35,9 % al 96,0 % según un solo dato que ya tienes registrado. Aquí está por qué un porcentaje suelto no decide nada y cómo partir el tuyo hoy, con el SQL.
«Mi tienda convierte al 2,1 %.»
Es una frase que se dice mucho y con la que no se puede hacer nada. No porque el número esté mal calculado, sino porque un porcentaje suelto es un promedio, y un promedio solo sirve cuando las cosas que promedia se parecen entre sí. En una tienda no se parecen en nada.
Lo he medido hoy, y el resultado es bastante claro.
La medición
Una tienda WooCommerce real de coleccionismo, del 2 de septiembre al 2 de octubre de 2026 (31 días), contra su propio registro de búsquedas.
| Sesiones que usaron el buscador | 11.044 |
| Búsquedas | 53.787 (4,87 por sesión) |
| Clics en resultados | 17.449 |
| Búsquedas que devolvieron cero resultados | 419 (0,8 %) |
Una aclaración antes de seguir, porque importa: lo que mido aquí no es la tasa de conversión a pedido, es el paso anterior — qué parte de las sesiones que buscan algo llega a abrir una ficha de producto. Lo uso porque es el embudo del que tengo el dato limpio y completo de los 31 días. El argumento es el mismo para la conversión a compra, y al final del artículo está el SQL para hacerlo con tus pedidos.
La tasa global de esas 11.044 sesiones es del 48,31 %.
Ese es el número que iría en la diapositiva. Ahora vamos a partirlo.
El mismo mes, partido por una sola cosa
Lo único que hago es agrupar las sesiones por cuántas veces buscaron. Nada más: ni segmentos de marketing, ni cohortes, ni modelos. Un GROUP BY sobre un dato que la tienda ya guardaba.
| Búsquedas en la sesión | Sesiones | % de sesiones | Tasa | % de los clics |
|---|---|---|---|---|
| 1 | 2.852 | 25,8 % | 35,9 % | 9,7 % |
| 2-3 | 3.603 | 32,6 % | 40,7 % | 16,5 % |
| 4-9 | 3.439 | 31,1 % | 54,4 % | 28,5 % |
| 10-24 | 952 | 8,6 % | 82,1 % | 23,9 % |
| 25 o más | 198 | 1,8 % | 96,0 % | 21,4 % |
Lo importante de esta tabla no es que la tasa suba con la insistencia —eso era previsible—. Es lo que no aparece en la columna: no hay ningún grupo cerca del 48 %. El promedio global no describe el comportamiento de nadie. Es el punto donde se cruzan cinco poblaciones que no se parecen entre sí, y queda flotando en un hueco donde no vive ningún cliente.
Y el reparto de los clics dice algo más incómodo: el 10,4 % de las sesiones —las 1.150 que buscan diez veces o más— se lleva el 45,3 % de todos los clics en resultados. Casi la mitad de la actividad de tu buscador la generan una de cada diez visitas.
Eso cambia qué significa «subir la conversión». Si esa cifra se mueve del 48,3 % al 50 %, la pregunta no es «¿qué hemos hecho bien?» sino «¿qué grupo ha crecido?». Puede que hayas convencido a gente del primer grupo, que es trabajo real. O puede que simplemente hayan venido más sesiones insistentes esa semana, lo cual no es mérito de nadie y no se repite el mes siguiente. El número global no distingue las dos cosas, y son lo contrario la una de la otra.
El grupo que no podía convertir
Hay una segunda partición que da la vuelta al asunto. En lugar de agrupar por insistencia, agrupo por si la primera búsqueda de la sesión devolvió cero resultados:
| Sesiones | Tasa | |
|---|---|---|
| La primera búsqueda devolvió resultados | 10.973 | 48,6 % |
| La primera búsqueda devolvió cero | 72 | 9,7 % |
Son solo 72 sesiones, el 0,7 % del mes, así que esto no mueve el promedio. Lo interesante es otra cosa: esas 72 sesiones nunca tuvieron la oportunidad. No es que no les convenciera el precio, ni el envío, ni la foto del producto. Es que pidieron algo y la tienda les enseñó una página vacía.
Y sin embargo están en el denominador de tu tasa de conversión, mezcladas con la gente que sí vio producto y decidió no comprarlo. Mientras estén juntas, cualquier conclusión sobre «por qué no convertimos» es una conclusión sobre dos problemas distintos a la vez: uno de persuasión y otro de avería. Se arreglan en sitios diferentes y por gente diferente. (De qué hacer con esas búsquedas va el artículo sobre las búsquedas sin resultados.)
Ampliando a las sesiones que tuvieron alguna búsqueda en cero, no solo la primera, son 158 sesiones y convierten al 39,2 %. Menos daño, porque muchas se recuperan reformulando. La primera impresión es la que pesa.
Una cosa que probé y no explicó nada
También miré si la longitud de la consulta separaba poblaciones. La hipótesis era razonable: quien escribe tres palabras sabe mejor lo que quiere que quien escribe una.
| Palabras en la primera búsqueda | Sesiones | Tasa |
|---|---|---|
| 1 | 8.132 | 48,9 % |
| 2 | 2.046 | 46,3 % |
| 3 | 689 | 48,8 % |
| 4 | 95 | 34,7 % |
| 5 o más | 83 | 47,0 % |
No separa nada. Los tres primeros grupos, que son el 97 % de las sesiones, están los tres pegados al promedio. El 34,7 % de las de cuatro palabras sale de 95 sesiones, que es poca cosa para afirmar nada.
Lo pongo porque un segmento que no explica nada también es información, y porque es la diferencia entre medir y contar una historia: si solo publicara las particiones que salen bonitas, estos números no valdrían para que tomes decisiones con ellos.
Y antes de celebrar nada: tu tasa se mueve sola
Última comprobación, sobre los 30 días completos del periodo. La misma tienda, el mismo buscador, sin tocar nada:
| Día peor | 43,3 % (17 de septiembre, 492 sesiones) |
| Día mejor | 56,4 % (1 de octubre, 595 sesiones) |
Trece puntos de banda sin que nadie cambiase una línea de código. Si un martes mides 44 %, haces un cambio, y el jueves mides 52 %, no has demostrado absolutamente nada: estás dentro del ruido normal de tu propia tienda.
Esto es lo que convierte un porcentaje suelto en algo peor que inútil. No es que no informe; es que invita a atribuirte méritos y culpas que no son tuyas.
Cómo partir la tuya, hoy
Tres pasos. El primero no necesita que instales nada.
1. Mide tu banda antes que tu media
Antes de perseguir décimas, averigua cuánto se mueve tu número solo. Con los pedidos basta para hacerse una idea:
-- Pedidos por día del último mes: tu nivel de ruido
SELECT DATE(date_created) AS dia,
COUNT(*) AS pedidos,
ROUND(SUM(total_sales), 2) AS ingresos
FROM wp_wc_order_stats
WHERE status IN ('wc-completed', 'wc-processing')
AND date_created >= DATE_SUB(NOW(), INTERVAL 30 DAY)
GROUP BY dia
ORDER BY dia;
Mira el día peor y el día mejor. Cualquier mejora menor que esa distancia necesita semanas de datos para que te la creas. (wp_wc_order_stats es de WooCommerce Analytics, existe desde WooCommerce 4.0. Cambia wp_ por tu prefijo.)
2. Dale una sesión a tu registro de búsquedas
La tabla de arriba sale de poder agrupar búsquedas por sesión. Si ya tienes el mu-plugin de registro de búsquedas —el de 30 líneas que está en por qué Google Analytics no te cuenta lo que pasa en tu tienda—, le falta una columna. Esto se la añade:
ALTER TABLE wp_wr_busquedas ADD COLUMN sesion CHAR(16) NOT NULL DEFAULT '';
Y en el mu-plugin, antes del INSERT, calculas el identificador y lo guardas con el resto:
// Seudónimo de sesión: no es reversible y cambia cada día a medianoche.
// Ni cookie, ni IP guardada, ni dato personal en la tabla.
$sesion = substr(hash_hmac(
'sha256',
($_SERVER['REMOTE_ADDR'] ?? '') . ($_SERVER['HTTP_USER_AGENT'] ?? '') . gmdate('Y-m-d'),
wp_salt('auth')
), 0, 16);
Lo que queda en la base de datos son 16 caracteres sin vuelta atrás, que sirven para saber que dos búsquedas vinieron de la misma persona ese día y para nada más. No identifica a nadie y no sobrevive a la medianoche.
3. Parte el denominador
Con un par de semanas de registro, esta consulta te da tu propia versión de la tabla del principio:
-- Tus sesiones de búsqueda, por profundidad
WITH s AS (
SELECT sesion,
COUNT(*) AS busquedas,
MAX(resultados = 0) AS tuvo_cero
FROM wp_wr_busquedas
WHERE creado >= DATE_SUB(UTC_TIMESTAMP(), INTERVAL 30 DAY)
AND sesion <> ''
GROUP BY sesion
)
SELECT CASE WHEN busquedas = 1 THEN '1'
WHEN busquedas <= 3 THEN '2-3'
WHEN busquedas <= 9 THEN '4-9'
ELSE '10 o mas' END AS profundidad,
COUNT(*) AS sesiones,
ROUND(100 * COUNT(*) / SUM(COUNT(*)) OVER (), 1) AS pct_sesiones,
SUM(tuvo_cero) AS con_algun_cero
FROM s
GROUP BY profundidad
ORDER BY MIN(busquedas);
(WITH y OVER () necesitan MySQL 8.0 o MariaDB 10.2. Si tu hosting va por detrás, la misma consulta sale con una tabla temporal.)
Eso te dice de qué está hecho tu tráfico de búsqueda. Para cerrar el círculo hasta el pedido hace falta cruzar la sesión con la venta, que es exactamente lo que hace un buscador que mide; pero con la partición de arriba ya sabes algo que antes no sabías: cuántos promedios distintos había escondidos dentro de tu promedio.
Qué hacer con esto el lunes
- Deja de mirar la tasa a secas. Añade siempre al lado el tamaño del grupo del que sale. Un 48 % de 11.000 sesiones y un 48 % de 200 son dos frases distintas.
- Saca tu banda diaria. Si tu mejora cabe dentro de ella, todavía no has medido nada.
- Separa lo roto de lo no convencido. Las sesiones que vieron cero resultados no son un problema de conversión; son una avería, y están contaminando el porcentaje con el que decides.
- Parte por profundidad antes que por demografía. No hace falta saber de dónde vino la gente para que esta partición funcione; hace falta saber cuántas veces te preguntó algo.
Los números de este artículo salen del registro de búsquedas de una tienda real: qué se buscó, cuántos resultados salieron y qué se pulsó. Si quieres ver cómo se consigue ese registro —y por qué el buscador es el sitio más barato de una tienda para enterarse de lo que quiere tu cliente— está la guía de cómo elegir un buscador para ecommerce, con el precio de cada opción comprobado. Y todo esto lo mide WildRock en la tienda mientras funciona, sin cookies de terceros.
¿Tu tienda pierde ventas por búsquedas que no encuentran nada?
WildRock añade a tu WooCommerce un buscador que entiende lo que tus clientes quieren decir, y te dice en euros cuánto te está generando. Plugin gratuito, sin tocar código.
Seguir leyendo
Mi buscador se rompió cuatro horas de madrugada y solo lo vieron 74 búsquedas sin resultados
En 90 días y 94.645 búsquedas, una tienda real acumuló 95 búsquedas en cero. 74 de esas 95 pasaron en la misma ventana de cuatro horas, de madrugada. No era falta de stock: «goku» devolvió cero teniendo 179 productos en catálogo. Las búsquedas sin resultados no son solo una lista de deseos de tus clientes: son la única alarma que tienes.
Cuánto vale de verdad un visitante de tu tienda
Medido hoy en una tienda WooCommerce real, 31 días y 11.273 sesiones: el valor medio que abre una sesión es de 73,67 € de catálogo y la mediana es de 0,00 €. El 10 % de arriba concentra el 61,9 % de todo. El visitante medio no existe, y calcular tu valor por visitante dividiendo ingresos entre visitas te da un número con el que no se decide nada. Aquí está el cálculo que sí sirve, con el SQL para sacarlo de tu propia tienda.
