Automatizar reportes de Mercado Libre: guía paso a paso
Por qué automatizar tus reportes
Si vendés en Mercado Libre, probablemente pasás tiempo cada semana haciendo alguna versión de esto:
- Entrás a ML y mirás las ventas
- Descargás un CSV o copiás números a mano
- Los pegás en una planilla
- Hacés cálculos y armás un resumen
- Lo mandás por email o WhatsApp a tu equipo/socio/contador
Cada iteración de este proceso te lleva entre 30 minutos y 2 horas, dependiendo de la cantidad de datos. Y lo peor: al día siguiente los números ya están desactualizados.
Automatizar reportes significa que los datos se actualizan solos, los cálculos se hacen solos, y el reporte se envía solo. Vos solo tenés que leerlo.
En esta guía vamos a armar un sistema de reportes automatizados usando Google Sheets + Jaguar Sheet, paso a paso.
Qué necesitás
- Google Sheets (gratis con tu cuenta de Google)
- Jaguar Sheet instalado y conectado a tu cuenta de ML
- Sincronización activada para los tipos de datos que vas a reportar (Ventas, Publicaciones, etc.)
Si todavía no configuraste la sincronización, seguí nuestra guía paso a paso.
Paso 1: Definí qué reportes necesitás
Antes de automatizar, definí qué información necesitás y con qué frecuencia.
Reporte diario
Ideal para operaciones con alto volumen. Incluye:
- Ventas del día anterior (unidades y facturación)
- Alertas de stock bajo
- Órdenes con problemas (reclamos, envíos demorados)
Reporte semanal
El más común para vendedores medianos. Incluye:
- Resumen de ventas de la semana
- Comparación con semana anterior
- Top 5 productos más vendidos
- Productos con stock bajo
- Rendimiento de publicidad (si usás Product Ads)
Reporte mensual
Para análisis de negocio y contabilidad. Incluye:
- Facturación total del mes
- Comisiones y costos de envío (datos de facturación real)
- Rentabilidad por producto
- Tendencias de visitas y conversión
- Resumen de publicidad: gasto, ACOS, ROAS
Reporte para el contador
Datos financieros específicos:
- Facturación bruta
- Comisiones pagadas
- Retenciones
- Costos de envío
- Desglose por tipo de cargo
Paso 2: Armá la hoja de reportes
Creá una hoja nueva en tu planilla llamada "Reportes". Esta hoja va a contener las fórmulas que generan los datos del reporte.
Reporte semanal: ejemplo completo
Sección 1: KPIs de la semana
| Celda | Etiqueta | Fórmula |
|---|---|---|
| A1 | Reporte semanal | (título) |
| A2 | Período | =HOY()-7 & " al " & HOY()-1 |
| A4 | Facturación | (etiqueta) |
| B4 | =SUMIFS(Ventas!H:H, Ventas!B:B, ">="&HOY()-7, Ventas!B:B, "<"&HOY()) | |
| A5 | Unidades vendidas | (etiqueta) |
| B5 | =COUNTIFS(Ventas!B:B, ">="&HOY()-7, Ventas!B:B, "<"&HOY()) | |
| A6 | Ticket promedio | (etiqueta) |
| B6 | =B4/B5 | |
| A7 | Semana anterior | (etiqueta) |
| B7 | =SUMIFS(Ventas!H:H, Ventas!B:B, ">="&HOY()-14, Ventas!B:B, "<"&HOY()-7) | |
| A8 | Variación | (etiqueta) |
| B8 | =TEXTO((B4-B7)/B7, "+0,0%;-0,0%") |
Sección 2: Top 5 productos
Usá la hoja sincronizada de Ventas como fuente. Contá las unidades vendidas por producto y ordená:
=SORT(C12:D30, 2, FALSE)
Donde C12:D30 tiene los títulos en la columna C y las unidades vendidas (calculadas con COUNTIFS sobre la hoja Ventas) en la columna D.
Sección 3: Alertas de stock
La hoja sincronizada de Publicaciones tiene una columna de stock para cada producto. Usá FILTER para mostrar los que están por debajo de un umbral:
=FILTER(Publicaciones!B:B, Publicaciones!G:G < 10)
Ajustá las referencias de columna según tu planilla. Esto te muestra automáticamente los títulos de los productos con menos de 10 unidades en stock.
Sección 4: Rendimiento de publicidad
La hoja sincronizada de Campañas Publicitarias ya tiene inversión, ventas, ACOS y ROAS por campaña. Para el reporte semanal, sumá las columnas correspondientes:
A20: Gasto total en ads
B20: =SUMA('Campañas Publicitarias'!columna_inversión)
A21: Ventas totales por ads
B21: =SUMA('Campañas Publicitarias'!columna_ventas_totales)
A22: ROAS general
B22: =B21/B20
Ajustá las referencias de columna según tu planilla.
Paso 3: Formato para lectura rápida
Un reporte que nadie lee no sirve. Hacelo fácil de escanear:
Formato condicional
- Variación semanal: verde si es positiva, rojo si es negativa
- Stock bajo: rojo si es menor a 5, amarillo si es menor a 15
- ROAS: rojo si es menor a 2, verde si es mayor a 5
Bordes y colores
- Usá bordes para separar secciones
- Un color de fondo suave para los headers
- Negrita en los KPIs principales
Números formateados
- Facturación: formato moneda ($1.250.000)
- Porcentajes: con un decimal (5,9%)
- Fechas: formato corto (12/03/2026)
Paso 4: Automatizar el envío por email
Google Sheets no tiene un botón de "enviar reporte por email automáticamente", pero hay varias formas de lograrlo.
Opción 1: Macro + trigger de Apps Script
Esta es la forma más robusta. Creás un script que:
- Lee los datos de la hoja "Reportes"
- Los formatea en un email HTML
- Lo envía a las direcciones que definas
Andá a Extensiones > Apps Script y pegá este código:
function enviarReporteSemanal() {
var hoja = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Reportes");
var facturacion = hoja.getRange("B4").getDisplayValue();
var unidades = hoja.getRange("B5").getDisplayValue();
var ticket = hoja.getRange("B6").getDisplayValue();
var variacion = hoja.getRange("B8").getDisplayValue();
var periodo = hoja.getRange("A2").getDisplayValue();
var asunto = "Reporte semanal ML - " + periodo;
var cuerpo = "<h2>Reporte Semanal de Ventas</h2>"
+ "<p><strong>Período:</strong> " + periodo + "</p>"
+ "<table style='border-collapse:collapse; font-family:Arial;'>"
+ "<tr><td style='padding:8px; border:1px solid #ddd;'>Facturación</td>"
+ "<td style='padding:8px; border:1px solid #ddd; font-weight:bold;'>" + facturacion + "</td></tr>"
+ "<tr><td style='padding:8px; border:1px solid #ddd;'>Unidades</td>"
+ "<td style='padding:8px; border:1px solid #ddd;'>" + unidades + "</td></tr>"
+ "<tr><td style='padding:8px; border:1px solid #ddd;'>Ticket promedio</td>"
+ "<td style='padding:8px; border:1px solid #ddd;'>" + ticket + "</td></tr>"
+ "<tr><td style='padding:8px; border:1px solid #ddd;'>vs. semana anterior</td>"
+ "<td style='padding:8px; border:1px solid #ddd;'>" + variacion + "</td></tr>"
+ "</table>"
+ "<p><a href='" + SpreadsheetApp.getActiveSpreadsheet().getUrl() + "'>Ver planilla completa</a></p>";
MailApp.sendEmail({
to: "tu@email.com",
subject: asunto,
htmlBody: cuerpo
});
}
Después configurá un trigger para que se ejecute automáticamente:
- En Apps Script, andá a Triggers (ícono de reloj)
- Hacé clic en Agregar trigger
- Seleccioná la función
enviarReporteSemanal - Tipo de evento: Basado en tiempo
- Frecuencia: Semanal (elegí el día y hora)
Opción 2: Enviar la planilla como PDF
Más simple que la opción anterior. Este script envía la hoja de reportes como un archivo PDF adjunto:
function enviarReportePDF() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var hoja = ss.getSheetByName("Reportes");
var hojaId = hoja.getSheetId();
var url = ss.getUrl().replace(/\/edit.*$/, '')
+ '/export?format=pdf'
+ '&gid=' + hojaId
+ '&portrait=true'
+ '&size=A4';
var token = ScriptApp.getOAuthToken();
var respuesta = UrlFetchApp.fetch(url, {
headers: { 'Authorization': 'Bearer ' + token }
});
var pdf = respuesta.getBlob().setName('Reporte_Semanal_ML.pdf');
MailApp.sendEmail({
to: "tu@email.com",
subject: "Reporte semanal ML - " + new Date().toLocaleDateString('es-AR'),
body: "Adjunto el reporte semanal de ventas de Mercado Libre.",
attachments: [pdf]
});
}
Configurá el trigger igual que en la opción 1.
Opción 3: Notificación por Google Chat o Slack
Si tu equipo usa Google Chat o Slack, podés enviar el reporte ahí en vez de por email. Usá un webhook de Chat/Slack:
function enviarReporteSlack() {
var hoja = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Reportes");
var facturacion = hoja.getRange("B4").getDisplayValue();
var unidades = hoja.getRange("B5").getDisplayValue();
var variacion = hoja.getRange("B8").getDisplayValue();
var webhookUrl = "https://hooks.slack.com/services/TU/WEBHOOK/URL";
var mensaje = {
text: "*Reporte semanal de ML*\n"
+ "Facturación: " + facturacion + "\n"
+ "Unidades: " + unidades + "\n"
+ "vs. semana anterior: " + variacion + "\n"
+ "<" + SpreadsheetApp.getActiveSpreadsheet().getUrl() + "|Ver planilla>"
};
UrlFetchApp.fetch(webhookUrl, {
method: "post",
contentType: "application/json",
payload: JSON.stringify(mensaje)
});
}
Paso 5: Reportes de facturación integrados
Jaguar Sheet incluye una sección de Reportes de facturación en el panel lateral. Desde ahí podés:
- Seleccionar un período de facturación
- Insertar los datos directamente en la hoja activa
- Los datos vienen formateados con las columnas de facturación real de ML
Esto es especialmente útil para el reporte mensual del contador, porque incluye:
- Comisiones exactas (CVFV + CVFF)
- Costos de envío (CXD, CFF)
- Financiación (CVFN)
- Retenciones impositivas
Tipos de reportes automatizados
Reporte de stock y reposición
La hoja sincronizada de Publicaciones ya tiene el stock de cada producto. Creá una hoja de reporte que referencie esos datos y calcule los días de cobertura:
=IF(stock < ventas_semana,
"REPONER - Stock para " & ROUND(stock / (ventas_mes/30), 0) & " días",
"OK - Stock para " & ROUND(stock / (ventas_mes/30), 0) & " días")
Donde stock viene de la columna de stock en Publicaciones y ventas_mes lo calculás con COUNTIFS sobre la hoja de Ventas de los últimos 30 días.
Reporte de rendimiento de publicaciones
La hoja sincronizada de Publicaciones tiene visitas, calidad de publicación y calidad de imagen como columnas. Podés cruzar esos datos con las ventas de la hoja de Ventas para calcular conversión y clasificar tus productos automáticamente:
=IF(AND(visitas>1000, conversion>0.02), "Estrella",
IF(AND(visitas<500, conversion>0.02), "Joya oculta",
IF(AND(visitas>1000, conversion<0.01), "Revisar",
"Normal")))
Reporte de publicidad
La hoja sincronizada de Anuncios Publicitarios ya tiene 18 columnas con gasto, clics, impresiones, CTR, ventas, ACOS y ROAS por producto. Podés referenciar esas columnas directamente para armar tu reporte.
Podés configurar el período de fechas directamente desde el panel lateral de Jaguar Sheet al activar la sincronización.
Reporte de competitividad (catálogo)
La hoja de Publicaciones incluye el estado de catálogo y el precio del Buy Box como columnas. Filtrá por publicaciones catalogadas para ver de un vistazo cuáles estás ganando, cuáles no, y a qué precio necesitás estar para ganar.
Calendario de reportes sugerido
| Frecuencia | Reporte | Qué incluye | Audiencia |
|---|---|---|---|
| Diario | Alertas | Stock bajo, reclamos nuevos | Operaciones |
| Semanal | Ventas | KPIs, top productos, variación semanal | Gerencia/equipo |
| Semanal | Publicidad | Gasto, ACOS, ROAS por producto | Marketing |
| Mensual | Financiero | Facturación, comisiones, retenciones | Contador |
| Mensual | Rendimiento | Visitas, conversión, calidad por producto | Gerencia |
Errores comunes al automatizar reportes
1. Fechas hardcodeadas
No escribas "2026-03-01" directamente en las fórmulas. Usá HOY(), EOMONTH() y fórmulas dinámicas de Google Sheets. Si no, tu reporte se congela en una fecha y dejás de notarlo.
2. Demasiados datos
Un reporte con 200 filas no es un reporte — es un dump de datos. Mostrá KPIs resumidos arriba y dejá el detalle para quien quiera profundizar.
3. Sin contexto comparativo
Un número solo no dice nada. "$500.000 de facturación" es bueno o malo? Siempre compará con el período anterior, con el promedio, o con un objetivo.
4. No testear el trigger
Antes de confiar en que el reporte se envía solo, ejecutá la función manualmente un par de veces. Revisá que los datos se lean bien, que el formato del email sea legible, y que llegue a todos los destinatarios.
5. Ignorar los errores de fórmulas
Si una fórmula de Sheets falla (por ejemplo, porque una referencia cambió), el reporte va a mostrar #ERROR!. Agregá validación con IFERROR() en las fórmulas críticas del reporte.
Conclusión
Automatizar reportes de Mercado Libre te libera horas de trabajo manual cada semana. Con las hojas sincronizadas de Jaguar Sheet como base de datos, podés armar cualquier reporte usando fórmulas nativas de Google Sheets (SUMIFS, COUNTIFS, FILTER). Y con un trigger de Apps Script, ese reporte se envía solo.
El resultado: vos y tu equipo reciben información actualizada sin mover un dedo. Pueden enfocarse en tomar decisiones en vez de compilar datos.
Probá Jaguar Sheet gratis por 14 días — instalalo desde el Marketplace y empezá a automatizar tus reportes hoy.
Para más contexto sobre gestión de datos, visitá nuestra guía completa de gestión de datos de Mercado Libre. Y si querés armar un dashboard visual, consultá nuestra guía de dashboards de ventas en Google Sheets.
Probá Jaguar Sheet gratis por 14 días
Sincroniza ventas, publicaciones y publicidad de Mercado Libre en Google Sheets. Sin tarjeta de crédito.
Instalar gratisArtículos relacionados
Cómo crear un dashboard de ventas en Google Sheets para Mercado Libre
Armá un dashboard de ventas en Google Sheets para Mercado Libre paso a paso. Usá SUMIFS, gráficos y tablas dinámicas con datos sincronizados reales.
5 formas de exportar datos de Mercado Libre (y cuál es la mejor)
Compará las 5 formas de exportar datos de Mercado Libre: CSV manual, API, Zapier, herramientas de terceros y Jaguar Sheet. Pros, contras y cuál elegir.
Gestión de datos de Mercado Libre: la guía definitiva
Aprende a gestionar, exportar y analizar todos los datos de tu negocio en Mercado Libre usando Google Sheets. Guía completa con ejemplos prácticos.