Auditoría del stack de apps de Shopify: cuánto pagas al año y cuánto te cuesta en velocidad
La factura de apps de una tienda Shopify casi nunca se decide: se acumula. Una app para el buscador, otra para las reseñas, otra para los avisos de stock, la de los banners de cookies, la que instaló la agencia anterior para un Black Friday de hace tres años. Cada una entró con una buena razón y ninguna se ha vuelto a revisar. En Pango Studio hacemos esta auditoría al entrar en un proyecto y suele ser lo primero que devuelve dinero y milisegundos sin tocar una línea de producto.
El método que sigue lo puedes ejecutar tú con las herramientas que ya tienes. No necesitas nada de pago.
1. Inventario con el coste real, no con el recordado
Abre Configuración → Facturación en el panel de Shopify y saca los cargos de los últimos doce meses. No mires solo la suscripción mensual: hay apps con cargos por uso (envíos de SMS, correos transaccionales, créditos de traducción) que en un mes normal pasan desapercibidos y en campaña se disparan.
Monta una tabla con cinco columnas por app: coste mensual, coste anualizado, quién la pidió, qué problema resuelve y cuándo se usó por última vez. Esa última columna es la que duele. Verás apps de prueba que nadie desinstaló, apps duplicadas que hacen lo mismo (dos sistemas de reseñas, dos de popups) y apps cuyo plan subió de escalón al crecer el catálogo sin que nadie lo aprobara.
Un ejemplo de aritmética para que veas el orden de magnitud: catorce apps a una media de 25 € al mes son 4.200 € al año. Es el presupuesto de un desarrollo a medida que probablemente resolvería cuatro o cinco de esas catorce funciones de una sola vez y sin coste recurrente.
2. Qué inyecta cada app en el escaparate
Aquí es donde la auditoría se vuelve técnica. Una app puede tocar tu tienda de formas muy distintas y no todas pesan igual:
- App embeds y bloques de app (theme app extensions): se activan desde el editor de temas, en la sección «Incrustaciones de aplicaciones». Es la vía moderna y la más limpia, porque al desactivar la app deja de cargar.
- Web pixels: los píxeles de cliente corren en un entorno aislado, fuera del hilo principal de tu tema. Molestan mucho menos de lo que la gente supone.
- Código en el tema: apps antiguas que pedían permiso para editar theme.liquid o las plantillas de producto. Este es el origen del 90 % de la basura que encontrarás.
- Fragmentos pegados a mano: contenedores de etiquetas, píxeles publicitarios, chats, tests A/B que alguien metió «un momento» y siguen ahí.
Para cazar los huérfanos, entra en el editor de código del tema y revisa theme.liquid, layout/ y la carpeta snippets/ buscando nombres de proveedor. Cruza esa lista con la de apps instaladas: todo lo que aparezca en el tema y no esté en el panel de apps es un resto. Repite el ejercicio en assets/, donde suelen quedar ficheros JS y CSS que ya no carga nadie o, peor, que sigue cargando el tema con una etiqueta que sobrevivió a la desinstalación.
Cómo confirmar que un script es huérfano
Antes de borrar nada, comprueba en el navegador qué se está descargando de verdad. En la consola de Chrome, sobre una ficha de producto ya cargada:
performance.getEntriesByType(‘resource’).filter(r => !r.name.includes(location.host)).sort((a,b) => b.duration – a.duration)
Eso te da los recursos de terceros ordenados por tiempo. Si el dominio de una app que desinstalaste hace un año sigue apareciendo, tienes la prueba.
3. Medir el peso de cada app, no el del conjunto
El error habitual es medir la home una vez y quedarse con la nota global. Lo que necesitas es el coste marginal de cada app, y para eso hay que medir en la plantilla donde más duele —normalmente ficha de producto y carrito— y con la misma configuración de red y dispositivo en cada pasada.
Tres lecturas bastan. El informe de Lighthouse tiene un apartado específico de código de terceros que te desglosa el tiempo de bloqueo por proveedor: ahí ves quién se está comiendo el hilo principal. La pestaña Coverage de las DevTools te dice cuánto de ese JavaScript no se ejecuta siquiera en esa página, que es lo más frecuente cuando una app carga su paquete entero en toda la tienda para pintar un widget que solo aparece en el carrito. Y el Total Blocking Time, más las tareas largas del panel de rendimiento, te da la magnitud del daño en interacción.
Con el tema desplegado en un entorno de pruebas, desactiva las apps de una en una y vuelve a medir. Tres pasadas por escenario y te quedas con la mediana. Es tedioso y es la única forma de tener números que aguanten una discusión con quien pidió la app.
4. Decidir: app, nativo o desarrollo propio
Con la tabla de costes y la de milisegundos delante, cada app cae en uno de cuatro sitios:
- Se queda: resuelve algo que usas a diario, su peso es asumible y no hay alternativa nativa.
- Pasa a nativo: Shopify ha ido absorbiendo funciones que antes exigían app —descuentos y envíos a medida con Functions, mercados y divisas, metaobjetos para contenido estructurado, secciones y bloques del tema para casi cualquier maquetación—. Antes de renovar cualquier suscripción, comprueba si la plataforma ya lo hace.
- Se convierte en código del tema: contadores, avisos, insignias y buena parte de los widgets de urgencia son cincuenta líneas de Liquid. Pagar una suscripción mensual por eso no tiene defensa.
- Fuera: nadie la usa, o su función la cubre otra que ya pagas.
Cuando la función es de verdad crítica y ninguna app del mercado la resuelve bien, el desarrollo propio se amortiza rápido. Nuestras apps Tariffy, Revive Cart y Discount Display nacieron exactamente así: de auditorías donde la opción de catálogo pesaba demasiado o cobraba por uso algo que se podía resolver con una extensión de tema ligera.
5. Limpiar sin romper la tienda
Duplica el tema antes de tocar nada y trabaja con el código versionado en Git, no en el editor del panel. Quita una app por despliegue, no cinco. Revisa el carrito y el proceso de compra completo después de cada cambio, porque los widgets de envío, de puntos y de descuentos suelen tener dependencias cruzadas que solo aparecen al pagar. Y deja pasar unos días antes del siguiente corte para que los datos de campo confirmen la mejora.
Repite el inventario cada trimestre. Diez minutos de revisión de facturación evitan que vuelvas a encontrarte, dentro de dos años, con la app que alguien instaló para una campaña de una semana.
Si prefieres que lo hagamos nosotros, hacemos esta auditoría como trabajo cerrado: inventario de costes, mapa de lo que inyecta cada app, mediciones antes y después, y un plan de limpieza priorizado por impacto. Escríbenos y lo vemos sobre tu tienda.