📗 Este contenido es el manual de uso de Smart Bidding Ninja Script, el mismo que el script escribe en la pestaña «Manual» de su hoja de cálculo. Aquí puedes buscarlo, escucharlo, subrayarlo y guardarlo en favoritos.
Toda la configuración del script se centraliza en la pestaña "Config". El layout está organizado en bloques temáticos y los valores editables están agrupados por concepto. A continuación el detalle de cada bloque:
Bloque 1 — Configuración base (afecta a ambos modos)
Estos campos definen el contexto operativo del script. Los rellenas una sola vez al instalar y rara vez se tocan después.
| Concepto | Descripción |
|---|---|
| ID de la cuenta a gestionar | Formato con o sin guiones: 123-456-7890. En instalación MCC es la cuenta cliente (obligatorio); en cuenta individual puede quedar vacío (se usa la propia cuenta). |
| Etiqueta del script | Normalmente ".SBNS". Solo las campañas con esta etiqueta serán gestionadas. |
| Email para notificaciones | Dirección que recibe los informes automáticos. Si está vacía, no se envía email. |
| Modo TEST | "ON" simula sin aplicar cambios reales. "OFF" actúa de verdad. |
| Rango de fechas | LAST_7_DAYS / LAST_14_DAYS / LAST_30_DAYS / THIS_MONTH / etc. |
| Umbral coste 7 días | Fracción. Ej: 0.5 = exige haber gastado al menos 50% del presupuesto semanal esperado antes de permitir subidas. |
Bloque 2 — Modo de funcionamiento
| Concepto | Valores |
|---|---|
| Modo | "Manual" (o vacío) → comportamiento tradicional con escenarios y porcentajes. "Smart" → modo automático guiado por objetivos. |
Bloque 3 — Modo MANUAL (escenarios y porcentajes)
Configura el comportamiento clásico: escenarios con sus umbrales y porcentajes de ajuste. Solo se usa si el Modo es "Manual" o está vacío.
| Concepto | Descripción |
|---|---|
| Escenario por defecto | Se aplica a campañas .SBNS sin etiqueta de escenario específica. Ej: ".neutro". Está en la sección Objetivos porque también la usa Smart como fallback. |
Tabla de escenarios: cinco filas, una por cada escenario, en este orden: .lanzamiento, .conservador, .neutro, .ninja1, .ninja2. Cada fila tiene tres valores configurables.
| Valor | Significado | Formato |
|---|---|---|
| Umbral desvío Smart Bidding | Decimal. Ej: -0.10 = -10%, 0.20 = +20%. | |
| Incremento presupuesto (cumple obj.) | Decimal. Ej: 0.05 = 5%. | |
| Decremento presupuesto (no cumple obj.) | Decimal. Ej: 0.03 = 3%. |
Bloque 4 — Modo SMART (objetivos y política)
El modo Smart deja las decisiones de escenario y porcentaje de ajuste en manos del algoritmo. El usuario solo define OBJETIVOS (CPA, ROAS, volumen) y el script decide cómo llegar. Solo se usa si el Modo es "Smart".
| Concepto | Valores válidos / descripción |
|---|---|
| Política Smart | "Smart" (máxima automatización) / "Conservador" (tiende a ninja1/ninja2/neutro, prioriza rentabilidad) / "Investigador" (tiende a lanzamiento/conservador/neutro, busca escalar). |
| Objetivo CPA cuenta | Número en euros. Admite decimales con punto (ej. 29.50). Se aplica a campañas sin etiqueta .cpa propia. |
| Objetivo ROAS cuenta | Número en porcentaje (ej. 200 = ROAS 2x). Se aplica a campañas sin etiqueta .roas propia. |
| Alcance de conversiones | "Primarias" cuenta todas las conversiones marcadas como primarias en Google Ads. "Personalizadas" cuenta solo las que indiques en la siguiente fila. |
| Conversiones personalizadas | Solo si el alcance es "Personalizadas". Nombres de acción de conversión separados por comas. Ej: "Lead cualificado, Venta, Demo agendada". |
| Modo de volumen | "OFF" (desactivado, explícito) / "Minimo" (al menos N conv/mes) / "Maximo" (no más de N conv/mes) / "Aproximado" (en torno a N). Sin acentos. Vacío equivale a OFF (compatibilidad hacia atrás). Opcional. |
| Objetivo de conversiones | Número entero. Se lee junto con el Modo de volumen. Si uno de los dos está vacío, el otro se ignora. |
| Prioridad entre objetivos | "CPA o ROAS" (por defecto) → los objetivos de métrica mandan sobre el volumen. "Volumen" → el volumen manda sobre métricas. "Volumen sin+presu" → busca volumen pero respeta el presupuesto mensual estricto. |
Etiquetas a nivel de campaña (modo Smart)
Las etiquetas de campaña siempre prevalecen sobre la configuración de cuenta:
- .cpa[número] — Define objetivo de CPA específico para esa campaña. Ej: .cpa45.50 para CPA objetivo 45,50€.
- .roas[número] — Define objetivo de ROAS específico (porcentaje). Ej: .roas300 para ROAS objetivo 3x.
- .smart / .conservador / .investigador — Define la política específica para esa campaña, sobreescribe la política de cuenta.
- En caso de colisión (.cpa y .roas en la misma campaña), el script usa la que corresponda al modo de puja real: TARGET_CPA o MAXIMIZE_CONVERSIONS → .cpa; TARGET_ROAS o MAXIMIZE_CONVERSION_VALUE → .roas. La otra se ignora con log informativo.
Validación de la configuración Smart
Cuando activas modo Smart pero la configuración está incompleta o es incoherente, el script:
- Sigue funcionando en modo Manual tradicional (con los escenarios y porcentajes de siempre) — así no pierdes servicio.
- Envía un email diario recordándote qué falta o está mal. Solo una vez por día.
- Cuenta los días consecutivos con configuración incompleta. Si llegan a 7, el email cambia de tono y marca la cuenta como "Modo Manual de emergencia".
- En cuanto corriges la configuración, el email deja de enviarse y el script entra en Smart en la siguiente ejecución.
Bloque 5 — Presupuesto mensual y ajustes dinámicos
Controla el presupuesto mensual de la cuenta y la sensibilidad de los ajustes dinámicos.
| Concepto | Descripción |
|---|---|
| Presupuesto mensual | "Si" bloquea subidas si se supera el ritmo prorrateado. Vacío o "No" → solo informativo. |
| Importe presupuesto mensual | Importe total (€). Admite formato español: 1.500 o 1500. |
| Prorrateado actual (auto) | Auto-calculado por el script. % gastado vs. esperado a día de hoy. No editar. |
| Ajustes de presupuesto | "Si" → el script puede ajustar presupuestos en MANUAL. "No" → bloquea TODOS los ajustes de presupuesto en Manual. SIN EFECTO en Smart (el cerebro Smart decide solo). |
| Ajustes dinámicos | "Si" / "Solo positivo" / "Solo negativo" / vacío. SOLO MANUAL. Si están activos, se ignoran los porcentajes fijos de la tabla de escenarios. |
| Límite máximo incremento | Número entero 0-50 (%). SOLO MANUAL. |
| Límite máximo decremento | Número entero 0-50 (%). SOLO MANUAL. |
⚠️ Si activas Ajustes dinámicos, los porcentajes fijos de incremento/decremento de la tabla de escenarios se ignoran. Solo se usan los límites máximos.
Bloque 6 — Celdas auto-gestionadas (no tocar)
Al final de la pestaña Config hay una franja de fondo gris con celdas que el script gestiona automáticamente. NO las edites a mano: cambiarlas puede causar duplicidad de envíos, ejecuciones perdidas o desincronización del aprendizaje Smart.
| Concepto | Para qué la usa el script |
|---|---|
| Último envío email | Evita envíos duplicados el mismo día. |
| Última ejecución nocturna | Decide si toca ciclo nocturno o intra-día. |
| Último aviso configuración Smart | Fecha del último email de configuración Smart incompleta. |
| Contador días config Smart incompleta | Cuenta días consecutivos con config inválida; al llegar a 7 cambia el tono del aviso. |
| Última fecha aprendizaje Smart | Fecha de inicio del periodo de aprendizaje (14 días). |
| Email inicio aprendizaje enviado | Marca para no reenviar el email de inicio de aprendizaje Smart. |
| Email salida aprendizaje enviado | Marca para no reenviar el email de salida de aprendizaje. |
| Último aviso error runtime Smart | Fecha del último email de error runtime Smart. |
| Días consecutivos con error runtime | Cuenta días consecutivos con error runtime activo. |
| Hash de porcentajes (firma) | Firma de la tabla de escenarios. Detecta si cambias los porcentajes y reaplica. |
| Volumen: fecha primer nocturno con desvío | Si volumen está activo, marca cuándo se detectó por primera vez un desvío. A los 5 días, el sistema pasa de Capa 1 (solo presupuesto) a Capa 2 (también escenario). |
| Volumen: último escalón de aviso de gasto | Solo aplica cuando la prioridad es Volumen y no hay presupuesto definido. Marca el último escalón de +20% de exceso ya avisado este mes. Se resetea al cambiar el mes. |
| Volumen: último aviso de resto bajo (.vol) | Mes (yyyy-MM) en que se envió el último aviso de "el resto del global queda bajo o negativo" tras restar etiquetas .vol. Solo se avisa una vez por mes. |
| Notif Smart 1: avisos campañas fuera de objetivo | JSON con la fecha del último aviso por cada campaña. Anti-spam: 1 envío por campaña cada 14 días. |
| Notif Smart 2: convergencia general baja | Fecha del último aviso de convergencia <40% sostenida 4 semanas. Anti-spam: 1 vez al mes máximo. |
| Notif Smart 3: política desajustada | Fecha del último aviso sugiriendo cambio de política Smart. Anti-spam: 1 vez al mes máximo. |
| Notif Smart 4: bucles graves por campaña | JSON con la fecha del último aviso por bucle ≥10 ciclos. Anti-spam: 1 envío por campaña cada 14 días. |
| Notif Smart 2: serie histórica convergencia | JSON con las últimas 8 semanas del % de campañas dentro de objetivo (±5%). Se actualiza una vez por semana en el ciclo nocturno. |
| Sugerencias cruzadas con objetivos (Manual) | JSON con la fecha del último aviso de sugerencia de escenario cruzada con objetivo CPA/ROAS. Anti-spam: 14 días por campaña. |
| Sugerencias ignoradas con período | JSON con las campañas que el usuario ha marcado como "Ignorar X días" en Sugerencias, con la fecha de fin de exclusión. |
Qué hace Smart ya (Fase 2 + Fase 3 activas)
La Fase 2 activa la lectura de objetivos y tracking del desvío. La Fase 3 activa el CEREBRO Smart: el escenario se decide dinámicamente en cada ciclo según el contexto de cada campaña, sustituyendo a las etiquetas tradicionales .ninja1/.ninja2/etc.
- Nueva columna en Day-Stats "Desvío Smart": muestra el desvío de la métrica actual respecto al objetivo (color rojo = peor, verde = mejor, vacío = sin objetivo).
- Si el alcance de conversiones es "Personalizadas", el script filtra solo las conversiones listadas. Una consulta GAQL única al inicio del ciclo.
- En modo Smart, las etiquetas de escenario tradicionales (.ninja1, .ninja2, .conservador, .neutro, .lanzamiento) SE SILENCIAN. El escenario aplicado se calcula dinámicamente.
- La columna "Razón" en Day-Stats indica la decisión: ej. "Smart (Conservador): CPA medio 32€ vs obj 30€ (+6.7%) → .ninja1".
Cómo decide Smart qué escenario aplicar
En cada ciclo nocturno, para cada campaña en modo Smart, el script:
- Calcula la MEDIA del periodo configurado como rango de fechas (no valor instantáneo, para no reaccionar a picos).
- Compara esa media con el objetivo Smart resuelto (etiqueta .cpa/.roas o el objetivo a nivel de cuenta).
- Identifica la política (etiqueta .smart/.conservador/.investigador o la política de cuenta).
- Aplica la tabla de decisión para elegir uno de los 5 escenarios canónicos.
| Situación | Conservador | Smart (balanceado) | Investigador |
|---|---|---|---|
| En objetivo o mejor (±5%) | .ninja1 (consolida) | .neutro (balance) | .conservador (explora con moderación) |
| Peor que objetivo (>+5%) | .ninja2 (máxima presión) | .ninja1 (aprieta) | .neutro (frena exploración) |
🚀 Si una campaña está en fase de LANZAMIENTO (<30 conversiones acumuladas O <3 días con actividad en los últimos 14), el escenario siempre es .lanzamiento, ignorando política y desvío. Esto incluye campañas recién creadas y campañas reactivadas tras un parón prolongado.
Periodo de aprendizaje (primeros 14 días)
Al activar Smart por primera vez (o si el Histórico se borra), el script entra en un periodo de aprendizaje donde:
- Todas las campañas usan escenario .neutro uniformemente, ignorando la decisión dinámica y la política configurada.
- Los ajustes son pequeños y prudentes (los propios de .neutro).
- Las etiquetas duras .min, .max, .p, .presupuesto off SIEMPRE se respetan.
- El script cuenta días con DATOS REALES en el Histórico (no días calendario). Si el script estuvo caído varios días, esos no cuentan.
- Al activar Smart recibes un email explicando esto; al completar los 14 días recibes otro email confirmando el paso a Smart pleno.
- Cada email semanal durante el aprendizaje incluye el progreso (día X de 14).
Detector de bucles
Si una campaña en Smart lleva 5 o más ciclos consecutivos con ajustes en la misma dirección (todo subidas o todo bajadas), se considera que puede haber un problema estructural y se incluye en el email SEMANAL con la alerta correspondiente.
Causas típicas a investigar si aparece un bucle: objetivo demasiado exigente para el volumen actual, cambio en la competencia, problemas de landing o creatividades, estacionalidad no detectada. El detector no toma acción por sí solo — es una llamada de atención para que revises.
Sobre las celdas auto-gestionadas
En la franja gris al final de Config, el script lleva varios marcadores internos: fecha del último email de configuración incompleta, contador de días consecutivos con configuración Smart incompleta, marcadores de envío de emails de aprendizaje, contador de errores runtime, etc. No hace falta tocarlas.