Al terminar tendrá un flujo operativo que identifica campañas con ROI por debajo del umbral y envía la petición de pausa a la plataforma publicitaria.
Al completar este tutorial habrás implementado un sistema de análisis activo en Power BI. Los tres resultados concretos que obtendrás:
- Consulta DAX que identifica campañas con ROI negativo
- Flujo de Power Automate que consulta Power BI y pausa campañas vía API
- Registro y verificación de ejecuciones con alertas básicas
Tiempo estimado: 45-75 minutos. Requisitos previos:
El problema que resuelve este tutorial
NovaRetail detecta diariamente campañas que generan pérdidas continuadas por inversión publicitaria mal optimizada. El equipo tarda en identificar y pausar campañas con ROI negativo, lo que provoca gasto innecesario y desviación del presupuesto.
Solución: Power BI calcula ROI por campaña y Power Automate ejecuta un flujo que consulta esos resultados y envía peticiones a la API publicitaria para pausar campañas por debajo del umbral definido.
Power BI centraliza y normaliza los datos de coste e ingresos y permite medidas DAX consistentes para ROI. Power Automate añade la capa de ejecución y conexión a APIs externas, posibilitando una acción inmediata y trazable desde el entorno M365.
Power BI Copilot no requiere conocimientos de DAX ni de modelado de datos para obtener respuestas analíticas de alto valor. El directivo puede interrogar el modelo semántico en lenguaje natural y obtener visualizaciones y narrativas automáticas en segundos.
Cuándo usar este análisis
| Úsalo cuando... | No lo uses cuando... |
|---|---|
|
|
Comparativa: Copilot vs Q&A vs Smart Narratives
| Función | Mejor para | Requiere | Output |
|---|---|---|---|
| Copilot | Análisis exploratorio y resúmenes ejecutivos | Licencia M365 Copilot | Texto narrativo + visualizaciones sugeridas |
| Q&A | Preguntas puntuales sobre métricas específicas | Modelo semántico bien etiquetado | Visualización automática |
| Smart Narratives | Comentarios automáticos en informes estáticos | Power BI Pro o superior | Párrafo de texto dinámico |
| Key Influencers | Análisis causal de factores de negocio | Power BI Pro o superior | Árbol de factores con peso estadístico |
Preparar el dataset en Power BI
Consolida las tablas de coste e ingresos y crea las medidas necesarias para calcular ROI y status por campaña. Asegúrate de que cada campaña tenga un identificador único que coincida con el campo usado por la API publicitaria.
-
1
Cargar fuentes Importa o conecta las fuentes: plataforma publicitaria, CRM y sistema de facturación. Confirma que los campos clave (CampaignID, Cost, Revenue, Fecha) están presentes y normalizados.
-
2
Crear medidas DAX Define medidas críticas: TotalCost = SUM(Table[Cost]); TotalRevenue = SUM(Table[Revenue]); ROI = DIVIDE([TotalRevenue]-[TotalCost],[TotalCost],0). Comprueba los resultados por campaña.
-
3
Publicar dataset Publica el reporte/dataset en el workspace de Power BI compartido para su consulta desde Power Automate. Anota el ID del dataset y del workspace para usar en el flujo.
Diseñar la consulta para detectar ROI negativo
Crea una consulta DAX o una vista en Power BI que devuelva las campañas cuya medida ROI esté por debajo del umbral operativo. Esta consulta será la entrada del flujo en Power Automate.
-
1
Escribir consulta DAX Ejemplo de tabla calculada o consulta para usar en Power Automate: EVALUATE FILTER( SUMMARIZECOLUMNS( Table[CampaignID], "ROI", [ROI] ), [ROI] < [ROI_THRESHOLD] )
-
2
Probar resultados en Power BI Valida que la consulta devuelve solo las campañas esperadas y exporta una muestra a CSV para comprobar CampaignID, ROI, Cost y Revenue.
-
3
Crear un informe o tarjeta para alertas Opcionalmente crea una tarjeta o visual con el conteo de campañas negativas y publica en un dashboard si prefieres usar alertas de tile en lugar de consultas programadas.
Ejecutar el prompt o configuración principal
Este es el prompt/configuración central del tutorial. Cópialo completo, rellena las variables entre corchetes con los datos de tu empresa o situación, y ejecútalo.
-
1
Copia el prompt o configuración completa Selecciona todo el texto y cópialo. No modifiques la estructura — está diseñado para obtener el output más útil posible.
-
2
Rellena las variables entre corchetes Sustituye cada [VARIABLE] con información real de tu empresa. Cuanto más específico seas, mejor será el resultado.
-
3
Ejecuta y espera el resultado Pega el prompt en Copilot o configura el flujo en Power Automate. El resultado puede tardar entre 10 y 60 segundos.
Probar, auditar y refinar el flujo
Ejecuta pruebas controladas y revisa logs para garantizar que solo se pausan campañas válidas. Define excepciones y añade notificaciones para el equipo de marketing.
-
1
Ejecutar pruebas con campañas sandbox Usa un ad account de prueba o limita la lista a campañas internas. Observa la respuesta de la API y confirma que el estado de la campaña cambia correctamente.
-
2
Configurar alertas y registro Añade acciones en el flujo para enviar un correo o Teams con el resultado y guarda un registro en SharePoint o Dataverse para auditoría.
Qué vas a obtener
El prompt generará: 1) Pasos detallados para configurar el flujo en Power Automate (nombres de acciones y expresiones). 2) Esquemas JSON para Parse JSON y ejemplos de request/response. 3) Checklist de validación y logs de ejemplo. 4) Recomendaciones de seguridad y permisos.
Señal de que el output es correcto: Listado JSON de campañas pausadas con ROI, CampaignID, marca de tiempo y respuesta 2xx de la API
- ✓Lista de campañas con CampaignID, ROI, Cost y Revenue Ejemplo JSON de petición HTTP y respuesta 2xx Checklist de validación completado (dataset, permisos, credenciales) Registro de ejecución con timestamp y estado por campaña
Prompts de iteración
Si el primer output no es exactamente lo que necesitas, usa estos prompts de refinamiento:
-
cuando el output es demasiado genérico.
"Ajusta el plan para el entorno [NOMBRE_TECNICO] y limita las peticiones API a 5 por minuto. Devuélveme solo las acciones de Power Automate con nombres exactos y expresiones específicas para 'Parse JSON' y para el cuerpo HTTP."
-
cuando necesitas más o menos profundidad.
"Genera una versión resumida (máx. 10 líneas) con los pasos imprescindibles para entregar al equipo de operaciones, y una versión técnica con todos los campos y expresiones de Power Automate."
-
cuando el tono no es el adecuado para tu audiencia.
"Reformula el plan con un tono ejecutivo y directo para presentar al Comité de Dirección, destacando riesgos, controles y ahorros estimados."
-
para compartir con el Comité de Dirección.
"Resume en 6-8 frases los beneficios, riesgos y controles de la automatización, incluyendo una estimación conservadora de ahorro mensual si se pausaran campañas con ROI < [ROI_THRESHOLD]."
Un output de calidad en Power BI Copilot incluye siempre una explicación causal (por qué ocurre la variación), no solo descriptiva (qué ha ocurrido). Si el output solo describe, refina el prompt pidiendo explícitamente el análisis de causas.
Coste y retorno de inversión
El ROI se traduce en ahorro directo al detener gastos improductivos; recuperar incluso un 10% del gasto mal optimizado suele cubrir el coste operativo del equipo y mejora la eficiencia del presupuesto publicitario en semanas.
Errores frecuentes y cómo resolverlos
| Síntoma | Causa probable | Solución |
|---|---|---|
| El flujo arroja error 401 al llamar a la API | Credenciales expiradas o token mal configurado en la conexión | Renovar el secreto en Azure AD, actualizar la referencia en Key Vault o la conexión de Power Automate y volver a probar |
| La consulta Power BI devuelve cero resultados aunque hay campañas con ROI negativo | La medida ROI está mal calculada o la consulta DAX usa referencia de medida incorrecta | Revisar medidas DAX en Power BI, probar la consulta en Power BI Desktop y confirmar que el dataset publicado refleja los cambios |
| El flujo pausa campañas equivocadas | Mismatch entre CampaignID en Power BI y el ID usado por la API | Verificar el mapeo de identificadores, normalizar CampaignID y usar un muestreo para validar antes de activar en producción |
| El flujo tarda demasiado o se agota por límites de la API | Falta de control de rate limit o peticiones masivas sin paginación | Implementar control de tasa (delay entre requests), usar batch APIs si la plataforma lo soporta y añadir reintentos con backoff exponencial |
| Los logs no contienen información útil para auditoría | No se registraron los cuerpos de request/response ni el contexto de ejecución | Agregar acciones que registren en SharePoint/Dataverse los campos clave (CampaignID, ROI, HTTP status, response body) y activar diagnóstico en Power Automate |
Copilot en Power BI requiere que el modelo semántico esté bien etiquetado (nombres de columna descriptivos, jerarquías de fechas correctas, medidas con nombres de negocio). Un modelo mal documentado produce respuestas incorrectas o incompletas, independientemente de la calidad del prompt.
Modo avanzado: llevar este tutorial más lejos
El modo avanzado de Power BI se usa para crear consultas DAX complejas, editar el código M en Power Query y preparar un dataset optimizado para consultas programadas. Permite generar tablas y medidas que el flujo de Power Automate consumirá de forma fiable.
Cuándo es especialmente valioso: Especialmente valioso cuando el dataset es grande, se necesita baja latencia en las consultas y se pretende ejecutar flujos periódicos que dependan de datos actualizados sin penalizar rendimiento.
-
1
Abrir Power Query y optimizar cargas: habilitar filtros de fila y columnas para reducir volumen
-
2
Crear medidas DAX específicas para ROI y métricas de control, y validar en muestras históricas
-
3
Configurar incremental refresh en el dataset para garantizar tiempos de respuesta rápidos
-
4
Exponer una vista o consulta que devuelva solo las columnas necesarias (CampaignID, ROI, Cost, Revenue) para la acción automática