# Reading the tracking log

What the statuses and skip reasons in the conversion tracking log mean, and how to fix missing consent signals.

Every event Rentware sends server-side to GA4, Google Ads or Meta, and every event it skips, is listed in the tracking log. You find it under **Settings → Conversion tracking → Logs**. Filter by order reference (for example `SNLDX1`) to see everything for one booking.

## Columns

| Column | Meaning |
|---|---|
| Timestamp | When the event was processed |
| Provider | Google Analytics, Google Ads or Meta (Facebook) |
| Event Type | For example "Add to cart", "Purchase", "Purchase retracted (order cancelled)" |
| Trigger | What caused it, for example "Order state changed" or "Offer added to cart" |
| Status | Success, Failed, Pending or Skipped |
| Status Code | The platform's HTTP answer |
| Order reference | The booking's order reference |
| Consent | `ok` (all consent signals granted), `partial` (some denied) or `–` (no consent information at all) |
| Enhanced data | Whether hashed email or phone was sent |
| Request / Response | What was sent and what the platform answered |

## Statuses and skip reasons

| What the log shows | What it means | What to do |
|---|---|---|
| **Success** | The platform accepted the event | If you still don't see it, see "Sent, but not visible" in the [FAQ](https://rentware.com/en/help/google-ads-meta-ga4-faq/) |
| **Failed** + error text | The platform rejected the event | See the platform's section in the [FAQ](https://rentware.com/en/help/google-ads-meta-ga4-faq/) |
| **Skipped**: "the website sent no consent information" (`skipped: no consent signal`) | The request that completed the booking carried no Google Consent Mode information | See the next section |
| **Skipped**: "the visitor did not give the advertising consent this provider needs" (`skipped: no advertising consent`) | The visitor declined advertising cookies | Nothing: without consent nothing may be sent |
| **Skipped**: "no click ID (gclid) was captured and no enhanced conversion data" (`skipped: no click id or enhanced data`, Google Ads) | Consent was given, but the visitor didn't come from a Google ad, or the click ID got lost, and there was no customer data to match | Normal for visitors who didn't click an ad |
| **Skipped**: "created by staff in the backend office" (`skipped: agent-created booking`, Meta) | The booking was entered by your team, for example after a phone call | Normal: such bookings never came from an ad. Meta never gets them; GA4 only if you turn on "Track agent-created bookings" |
| **No row** for the order, **GA4** | The visitor didn't allow analytics cookies (`analytics_storage`). GA4 events without that consent are dropped **without a log row** | Normal without consent. If it happens for most bookings, check your consent signal (next section) |
| **No row at all**, any platform | The platform isn't enabled or its settings are incomplete, or the booking never reached Reserved or Booked | Check the settings of the platform |

**When the purchase is sent:** when the order first moves to **Reserved** or **Booked**, once per order and platform. The trigger then reads "Order state changed". If that first attempt was skipped, a later change (Reserved → Booked) tries again.

## "No consent signal" on the purchase, but consent is ok on add to cart

The widget reads the visitor's consent fresh with every request, from the Google Consent Mode entries in `window.dataLayer`. The purchase uses the consent of **the request that completed the booking**, not that of the cart. So add to cart can show `ok` and the purchase `skipped: no consent signal` when, at the moment of booking:

- the checkout runs on another page or domain that has no cookie banner or Consent Mode code (for example a separate order page);
- the cookie banner hadn't sent its consent yet, because an optimization plugin delays its script or the banner loads late;
- the widget runs inside an iframe, or your site uses a dataLayer with a different name than `dataLayer`.

Bookings that never pass through your website have no consent signal either: an offer accepted from the email link, a payment confirmed by your team, a phone booking. That's expected.

Because GA4 needs `analytics_storage`, the same cause makes purchases disappear from GA4 entirely, without a log row.

### How to check

1. Open the page where the booking is completed (the checkout) in your browser.
2. Accept the cookie banner.
3. Open the browser console (F12 → Console), type `dataLayer` and press Enter.
4. Look for an entry with `consent` and `update` (or `consent_update`) that contains `ad_storage`, `analytics_storage`, `ad_user_data` and `ad_personalization`.

It has to be there before the visitor clicks "book". If the visitor accepts the banner only after the widget has loaded, that's fine: the next request picks up the new consent, as long as the banner pushes a Consent Mode `update` into `window.dataLayer`.

### How to fix it

- Turn on **Google Consent Mode v2** in your cookie banner (Cookiebot, Complianz, Borlabs, Usercentrics and most others have a switch for it).
- Load the banner on **every** page with a Rentware widget, including the checkout and order pages.
- Don't let script-optimization plugins delay the banner or the Google tag. On WordPress, see [Tracking with WordPress](https://rentware.com/en/help/tracking-with-wordpress/).

## More articles

- [Conversion tracking: what to set up where](https://rentware.com/en/help/conversion-tracking/)
- [Google Ads, Meta and GA4: frequent questions](https://rentware.com/en/help/google-ads-meta-ga4-faq/)
- [Developer reference: consent and click IDs](https://rentware.com/en/integrations/tracking/developers/)
