> ## Documentation Index
> Fetch the complete documentation index at: https://restoo.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Remarketing a clientes que no completaron la reserva

> Cómo construir en GA4, Google Ads, Meta y TikTok una audiencia con los clientes que empezaron una reserva en el widget y no la completaron, elijas la etapa que elijas.

Quien reserva en el widget deja un evento por cada etapa: busca disponibilidad, ve el formulario de datos, lo envía y, si el negocio aplica una política de cancelación, la firma. Quien completa la reserva dispara además la conversión. La diferencia entre las dos cosas, gente que llegó a una etapa y no convirtió, es la audiencia de remarketing, y se construye con los eventos que [Restoo Connect](/es/widget/connect) ya envía, sin BigQuery y sin código.

Esta guía es para negocios y agencias que quieran recuperar esas reservas. Explica qué evento marca cada etapa en cada plataforma, cómo montar la audiencia en GA4 y Google Ads, en Google Tag Manager, en Meta y en TikTok, y qué tiene de particular la política de cancelación.

<CardGroup cols={2}>
  <Card title="Pujas y optimización" icon="chart-line" href="/es/widget/bidding-optimization">
    Qué conversiones entregar a la puja y cómo encajan las audiencias.
  </Card>

  <Card title="Mapeo de eventos" icon="table" href="/es/widget/connect-mappings">
    A qué corresponde cada evento de Restoo en cada plataforma.
  </Card>
</CardGroup>

## Cómo se construye la audiencia

La regla es la misma en todas las plataformas y en todas las etapas: **incluye** a quien llegó a la etapa que elijas y **excluye** a quien completó la reserva. La conversión de reserva solo se dispara cuando la reserva queda creada, o firmada si lleva política de cancelación, así que la diferencia entre las dos condiciones es exactamente la gente que se quedó por el camino.

No hace falta saber por qué no siguió. Da igual si cerró la pestaña, si no encontró hueco o si la tarjeta falló: en todos los casos falta la conversión, y eso es lo único que la audiencia necesita.

La audiencia es **por persona, no por reserva**. Quien deja una reserva a medias y completa otra después sale de la audiencia, que es lo que quieres en remarketing.

## Elige la etapa

Las etapas tardías dejan una audiencia más pequeña y con más intención de reservar. Elige la que encaje con el mensaje: a quien buscó disponibilidad se le recuerda el negocio; a quien dejó la reserva a medias se le invita a volver a hacerla.

| Llegó a...                      | GA4 y GTM                               | Meta Pixel                          | TikTok Pixel                        |
| ------------------------------- | --------------------------------------- | ----------------------------------- | ----------------------------------- |
| Vio el inicio de reserva        | `restoo_booking_start_viewed`           | `RestooBookingStartViewed`          | `RestooBookingStartViewed`          |
| Buscó disponibilidad            | `search`                                | `Search`                            | `Search`                            |
| No encontró disponibilidad      | `restoo_booking_no_availability_viewed` | `RestooBookingNoAvailabilityViewed` | `RestooBookingNoAvailabilityViewed` |
| Vio el formulario de datos      | `restoo_booking_details_form_viewed`    | `ViewContent`                       | `ViewContent`                       |
| Empezó a rellenar el formulario | `form_start`                            | `RestooBookingDetailsFormStarted`   | `RestooBookingDetailsFormStarted`   |
| Vio la política de cancelación  | `restoo_booking_cp_viewed`              | `RestooBookingCpViewed`             | `RestooBookingCpViewed`             |
| Leyó la política de cancelación | `restoo_booking_cp_acknowledged`        | `RestooBookingCpAcknowledged`       | `RestooBookingCpAcknowledged`       |

Cada fila incluye a quien llegó **al menos** hasta esa etapa y no reservó, así que quien abandonó más tarde está también en las de arriba. Para acotar a una etapa concreta, excluye además el evento de la siguiente. La última fila es la excepción y no necesita nada: ahí la etapa siguiente es la propia conversión, porque en una reserva con política solo llega si el cliente la firma.

Todas las etapas llegan a las cuatro plataformas; el payload de cada una está en el [mapeo de eventos](/es/widget/connect-mappings). Con el destino `gtm` están además en el `dataLayer`, con los nombres de la columna «GA4 y GTM», y tus etiquetas pueden llevar cualquier etapa a cualquier plataforma: lo explica su pestaña. Al OpenAI Pixel llegan también, pero ChatGPT Ads no construye audiencias a partir de los eventos del pixel —las suyas son listas que se suben—, así que esta guía no aplica a ese destino.

Tres filas tienen truco:

* **`ViewContent` en Meta y TikTok** se envía también al ver el detalle de una experiencia. El del formulario lleva `content_name` con el nombre del negocio y el del detalle no: al definir el público, añade ese parámetro para quedarte solo con el formulario.
* **La falta de disponibilidad** no es un abandono: el cliente quería reservar y no pudo. El evento lleva el motivo (`availability_outcome`), la fecha y los comensales que buscaba, así que el mensaje natural son fechas alternativas o la lista de espera.
* **La política de cancelación** tiene su propio apartado más abajo: la reserva a medias existe y se cancela sola, así que el mensaje no puede dar por hecho que la mesa sigue guardada.

## Excluye a quien completó la reserva

La exclusión es la misma para todas las filas: la conversión de reserva. Cada reserva creada dispara exactamente una de las dos, según nazca confirmada o pendiente, y hay que excluir las dos: una reserva pendiente de confirmación o en lista de espera también está completa para el cliente, y anunciarle que no terminó su reserva sería un error.

| Reserva completada como...                                                                 | GA4 y GTM       | Meta Pixel | TikTok Pixel |
| ------------------------------------------------------------------------------------------ | --------------- | ---------- | ------------ |
| Reserva confirmada (`booking_created` con estado `CONFIRMED`)                              | `qualify_lead`  | `Schedule` | `Schedule`   |
| Reserva pendiente: solicitud o lista de espera (`REQUESTED` o `PENDING_WAIT_LIST_BOOKING`) | `generate_lead` | `Lead`     | `SubmitForm` |

Google Ads no recibe eventos de diagnóstico de Restoo Connect, así que su audiencia se construye en GA4 y se comparte con la cuenta enlazada: está en los pasos de la pestaña de GA4.

<Note>
  Modificar una reserva existente no entra en estas audiencias: al editar, Restoo
  Connect no reenvía ni los eventos de etapa ni la conversión, así que ni añade ni
  excluye a nadie. Consulta el [mapeo de eventos](/es/widget/connect-mappings).
</Note>

## Configurar cada plataforma

En todas las plataformas la audiencia se define con la misma ventana de tiempo. Empieza con **14 días**: el cliente buscaba una fecha concreta, y pasada esa fecha el anuncio ya no recupera esa reserva, así que una ventana larga mantiene en la audiencia a gente cuya fecha pasó hace semanas. Una muy corta deja fuera a quien reserva con antelación y hace más difícil llegar al [tamaño mínimo](#tamaño-mínimo-de-la-audiencia) que exige Google Ads. Baja a 7 días si tus clientes reservan para la misma semana; sube a 30 si la audiencia no alcanza el mínimo.

<Tabs>
  <Tab title="GA4 y Google Ads">
    La audiencia se construye en GA4, reciba los eventos por el destino directo `ga4` o por tus etiquetas de GTM, y se comparte con la cuenta de Google Ads enlazada. Google Ads no recibe eventos de diagnóstico, así que la audiencia no se puede construir directamente en Ads.

    <Steps>
      <Step title="Cubre el consentimiento de publicidad">
        Una propiedad que exporta audiencias a Google Ads alimenta publicidad.
        Con el destino directo `ga4`, eso hay que [declararlo en tu cuenta de
        Restoo](/es/widget/integrations#google-analytics-4): a partir de ahí GA4
        solo recibe los eventos de los visitantes que aceptan también las
        cookies de publicidad. Con GTM es tu etiqueta de GA4 la que tiene que
        respetar las señales de publicidad de tu Consent Mode. Consulta [qué
        exige cada destino](/es/widget/consent#requisitos-de-cada-destino).
      </Step>

      <Step title="Enlaza GA4 con Google Ads">
        [Vincula la propiedad con la cuenta de
        Ads](https://support.google.com/analytics/answer/9379420) y deja activada
        la **publicidad personalizada** en el enlace. Sin esa opción la audiencia
        no se exporta.
      </Step>

      <Step title="Crea la audiencia">
        En **Administrar → Audiencias → Nueva audiencia → Crear una audiencia
        personalizada**:

        * **Incluir** usuarios que hayan disparado el evento de la etapa que
          hayas elegido en la tabla, por ejemplo `restoo_booking_cp_viewed`.
        * **Excluir** usuarios que hayan disparado `generate_lead` o
          `qualify_lead`, las dos conversiones de la tabla de exclusión. GA4
          ofrece dos exclusiones: la **temporal** saca al usuario mientras cumple
          la condición, y la **permanente** lo saca para siempre si la cumplió
          alguna vez. Elige la temporal: con la permanente, quien complete una
          reserva una vez quedaría fuera aunque deje otra a medias más adelante.
      </Step>

      <Step title="Fija la duración de pertenencia">
        GA4 admite hasta 540 días. Pon **14 días** y activa el restablecimiento
        con nueva actividad, que vuelve a contar la duración desde cero cada vez
        que el usuario cumple la condición de inclusión: quien deje otra reserva
        a medias sigue en la audiencia otros 14 días.
      </Step>

      <Step title="Úsala en Google Ads">
        La audiencia aparece en el **Gestor de audiencias** de la cuenta enlazada
        en cuestión de horas. Añádela como segmento a la campaña de remarketing,
        o como señal en Performance Max, y ten en cuenta [el tamaño
        mínimo](#tamaño-mínimo-de-la-audiencia).
      </Step>
    </Steps>
  </Tab>

  <Tab title="Google Tag Manager">
    Con el destino `gtm`, Restoo Connect deja todos los eventos en `window.dataLayer` y no envía nada a ninguna plataforma: lo hacen tus etiquetas. La audiencia se configura en la plataforma que uses, siguiendo su pestaña; aquí va lo que cambia por el camino.

    <Steps>
      <Step title="Reenvía los eventos a cada plataforma">
        Cada plataforma necesita el evento de la etapa elegida y las dos
        conversiones de la tabla de exclusión. Si tu contenedor ya reenvía los
        eventos de Restoo, no hay nada que añadir. Si no, un disparador de
        **evento personalizado** por evento, con el nombre que llega al
        `dataLayer` —la columna «GA4 y GTM» de las tablas—, y una etiqueta por
        plataforma sobre cada disparador. Para las dos conversiones vale un solo
        disparador con la expresión regular `generate_lead|qualify_lead`.
      </Step>

      <Step title="Da a Meta y TikTok la señal exacta">
        Sus destinos directos ya envían cada etapa con su nombre personalizado,
        así que si mides por GTM lo que haces aquí es reproducirlo: una etiqueta
        de evento personalizado —por ejemplo `RestooBookingCpViewed`— sobre el
        disparador de la etapa, con el mismo nombre que usa el destino directo,
        para que la audiencia sirva vengas por donde vengas. Para las
        conversiones usa sus eventos estándar, `Lead` y `Schedule` (`SubmitForm`
        y `Schedule` en TikTok), y así la exclusión de su pestaña sigue valiendo.
      </Step>

      <Step title="Aplica el consentimiento en tus etiquetas">
        Restoo Connect empuja los eventos en cuanto el consentimiento está
        informado; quién los envía a cada plataforma son tus etiquetas, con el
        Consent Mode de tu contenedor. Como estas audiencias alimentan
        publicidad, las etiquetas tienen que respetar las señales de publicidad:
        consulta [`gtm` y el consentimiento de tus
        etiquetas](/es/widget/consent#gtm-y-el-consentimiento-de-tus-etiquetas).
      </Step>

      <Step title="Un solo camino hacia cada destino">
        Si GTM ya envía los eventos a una plataforma, no actives además su
        destino directo en Restoo: cada evento llegaría dos veces. Consulta
        [evitar conversiones
        duplicadas](/es/widget/bidding-optimization#evitar-conversiones-duplicadas-entre-ga4-google-ads-y-gtm).
      </Step>
    </Steps>
  </Tab>

  <Tab title="Meta">
    El público se construye con los eventos que recibe el píxel, por el destino directo `metaPixel` o por tus etiquetas de GTM.

    <Steps>
      <Step title="Crea el público">
        En **Públicos → Crear público → Público personalizado → Sitio web**, con
        el píxel [declarado en tu cuenta de
        Restoo](/es/widget/integrations#meta-pixel) como fuente.
      </Step>

      <Step title="Incluye la etapa">
        Personas que hayan realizado el evento de la etapa elegida en los
        últimos **14 días**: `Search`, `ViewContent` o el evento personalizado de
        su fila en la tabla, como `RestooBookingCpViewed`. Con `ViewContent`,
        añade el parámetro `content_name` para quedarte con el formulario y no
        con el detalle de una experiencia.
      </Step>

      <Step title="Excluye a quien completó la reserva">
        **Excluir personas** que hayan realizado `Lead` o `Schedule` en el mismo
        periodo.
      </Step>

      <Step title="Comprueba que los eventos aparecen">
        Los eventos personalizados aparecen en el desplegable cuando el píxel los
        ha recibido al menos una vez. Si el que buscas no aparece, comprueba que
        el destino o la etiqueta estén activos y que alguien haya llegado ya a
        esa etapa.
      </Step>
    </Steps>
  </Tab>

  <Tab title="TikTok">
    La audiencia se construye con los eventos que recibe el píxel, por el destino directo `tiktokPixel` o por tus etiquetas de GTM.

    <Steps>
      <Step title="Crea la audiencia">
        En **Activos → Audiencias → Crear audiencia → Público personalizado →
        Tráfico del sitio web**, con el píxel [declarado en tu cuenta de
        Restoo](/es/widget/integrations#tiktok-pixel).
      </Step>

      <Step title="Incluye la etapa">
        El evento de la etapa elegida en los últimos **14 días**: `Search`,
        `ViewContent` o el evento personalizado de su fila en la tabla, como
        `RestooBookingCpViewed`. Con `ViewContent`, filtra por el parámetro
        `content_name` para quedarte con el formulario.
      </Step>

      <Step title="Excluye a quien completó la reserva">
        **Excluir personas** con los eventos `SubmitForm` y `Schedule` en el mismo
        periodo. TikTok muestra `SubmitForm` como `Lead` en sus informes.
      </Step>

      <Step title="Activa la actualización automática">
        Así la audiencia se renueva sola con los eventos nuevos.
      </Step>
    </Steps>
  </Tab>
</Tabs>

## La política de cancelación, un caso aparte

Si el negocio aplica una política de cancelación, con una garantía o con un anticipo, enviar el formulario no completa la reserva: el widget muestra la política y el cliente tiene un plazo para **firmarla**, es decir, aceptarla y validar su tarjeta. Hasta entonces la reserva queda pendiente; si no la firma a tiempo, se cancela y no dispara ninguna conversión. Es la última etapa antes de la conversión: el cliente ya había elegido fecha, hora y comensales y rellenado sus datos.

En GA4 y GTM la señal es directa: `restoo_booking_cp_viewed` se envía cuando el widget muestra la política. Si prefieres una audiencia más estrecha, `restoo_booking_cp_acknowledged` marca a quien además marcó «He leído y acepto la política de cancelación».

En Meta y TikTok la señal es igual de directa, con el nombre personalizado de la etapa: `RestooBookingCpViewed`, o `RestooBookingCpAcknowledged` para la audiencia más estrecha. Excluyendo las dos conversiones de reserva, lo que queda es quien vio la política y no la firmó.

Como la reserva pendiente ya está cancelada cuando el anuncio llega, el cliente tiene que reservar de nuevo: el mensaje no puede dar por hecho que su mesa sigue reservada.

## Otros usos de las mismas audiencias

* **Supresión.** Excluye la conversión de reserva —y `Contact` en locales que viven del teléfono— de las campañas de captación, para dejar de pagar por llegar a clientes que ya han reservado. Son los mismos eventos de la tabla de exclusión, usados como lista negativa.
* **Públicos similares.** Alimenta los lookalike de Meta y TikTok y las audiencias similares de Google con quienes completaron la reserva, no con quienes rellenaron el formulario.
* **Remarketing por experiencia.** Para volver a impactar a quien vio una experiencia concreta y no la eligió: incluye `view_item` en GA4 y GTM, o `ViewContent` con el `content_ids` de esa experiencia en Meta y TikTok, y excluye la selección —`select_item` en GA4 y GTM, `RestooBookingItemSelected` en Meta y TikTok— o la conversión de reserva. Las experiencias se identifican por ID, no por nombre: consulta [qué omite Restoo deliberadamente](/es/widget/connect-mappings#qué-omite-restoo-deliberadamente).

Las tasas de cruce mejoran con los datos de cruce de `customer_identified` activados: `login` en GA4, Advanced Matching en Meta e `identify` en TikTok.

## Antes de lanzar la campaña

### Tamaño mínimo de la audiencia

Google Ads no sirve anuncios a un segmento hasta que alcanza un mínimo de usuarios activos en los últimos 30 días:

| Red de Google     | Usuarios activos mínimos |
| ----------------- | ------------------------ |
| Display, Gmail    | 100                      |
| Búsqueda, YouTube | 1.000                    |

Cuanto más tarde la etapa, más difícil llegar al umbral: una audiencia de búsquedas lo alcanza antes que una de políticas sin firmar. Si la audiencia no llega, amplía la duración de pertenencia a 30 días o elige una etapa anterior antes de descartarla. Meta y TikTok muestran el tamaño en la propia herramienta y avisan cuando es demasiado pequeño para servir anuncios.

### Consentimiento

Estas audiencias son publicidad. Solo entran los visitantes que concedieron las señales de publicidad, y los números serán una fracción del tráfico del widget. [Cada destino exige lo suyo](/es/widget/consent#requisitos-de-cada-destino); con el destino `ga4`, además, la propiedad tiene que estar declarada como «también para publicidad».

## Referencias oficiales

**Google**

* [Audiencias de Google Analytics 4](https://support.google.com/analytics/answer/9267572)
* [Vincular Google Analytics con Google Ads](https://support.google.com/analytics/answer/9379420)
* [Segmentos de audiencia y tamaño mínimo en Google Ads](https://support.google.com/google-ads/answer/7558048)

**Meta**

* [Crear un público personalizado a partir de eventos del sitio web](https://www.facebook.com/business/help/666509013483225)

**TikTok**

* [Crear una audiencia de tráfico del sitio web](https://ads.tiktok.com/help/article/how-to-create-a-website-traffic-audience)

## Siguientes pasos

<CardGroup cols={2}>
  <Card title="Pujas y optimización" icon="chart-line" href="/es/widget/bidding-optimization">
    Qué conversiones entregar a la puja y cómo encajan las audiencias.
  </Card>

  <Card title="Consentimiento" icon="shield-check" href="/es/widget/consent">
    Qué señal desbloquea cada destino y cómo llega al widget.
  </Card>
</CardGroup>
