# Explore

The **Explore** page of Server Log Monitoring lets you look up exactly which bot fetched which page, and what your server answered. Use it to follow up on something you saw on another page.

## Before you start [#before-you-start]

- Connect a log source first. See [Connect server logs](/connect/server-logs).
- Open a domain. In the sidebar, select **Server Log Monitoring** > **Explore**.
- Explore uses every filter of the filter bar. It also has three filters of its own: **Network (ASN)**, **Content type** and **Response time (ms)**.
- Explore reads at most 366 days at a time. VitalSentinel keeps Server Log Monitoring data for 12 months (90 days on the Free plan). See [Plans and limits](/workspace/plans-and-limits).
- Members can read this page.

Many tables in Server Log Monitoring have an **Explore** link, for example in the bot drawer and the page drawer. The link opens Explore with the filters of the row.

## Questions to start from [#questions-to-start-from]

The top card of the Explore page has four ready-made questions. Select one to run it. Each question shows how many pages or bots match.

| Question | What it shows |
|----------|---------------|
| **Which pages give Googlebot a 404?** | Pages where verified Googlebot got a 404, grouped by page. Fake Googlebots are left out. |
| **Which bots hit server errors?** | Bots that got a 5xx answer, grouped by bot. |
| **Which pages do AI crawlers fetch most?** | Pages that AI bots fetched, grouped by page. Fake hits are left out. |
| **Which bots ask for blocked URLs?** | Bots that asked for URLs your robots.txt disallows, grouped by bot. |

## Grouped hits [#grouped-hits]

The **Grouped hits** card of the Explore page lists the bot requests that match your filters. The **?** next to the title says what the list shows and how many hits match.

### Group hits by [#group-hits-by]

Select how to group the hits:

| Option | One row per |
|--------|-------------|
| **Bot + page** (default) | Bot and page pair. |
| **Bot** | Bot. |
| **Page** | Page. |
| **Network** | Network, shown by its AS number (ASN). For example, AS15169 is Google. |
| **IP prefix** | The first part of the IP address. |

### Grouped hits columns [#grouped-hits-columns]

Depending on the grouping, the table shows **Bot**, **Category**, **Vendor**, **URL**, **Section**, **Network** or **IP prefix**. Every view ends with **Hits**, **Bytes**, **Response time** and **Last seen**. Click the **Hits** or **Last seen** column header to sort. Click a URL to open the page drawer. See [Pages](/server-logs/pages#page-drawer).

Some cells show a reason instead of a value. **Not resolved yet** means the URL is not ready yet. **(unsectioned)** means the URL matches no section rule. **Redacted at ingest** means the IP address was not stored. **No ASN recorded** means the network is not known.

### How Explore counts hits [#how-explore-counts-hits]

Explore keeps every error and redirect (non-2xx) request in full. It keeps successful (2xx) requests as a 1% sample. When your filters include successful requests, the count shows **At least** in front of the number. The real figures are higher.

To get exact counts, filter to a specific error status code in the filter bar. Every non-2xx hit is kept in full, so these counts are exact.

### Privacy in Explore [#privacy-in-explore]

Server Log Monitoring does not store the IP address of unchecked and fake requests. Those requests have no IP prefix to group by. Query-parameter names are stored, but never their values.

## Tasks [#tasks]

### See every page that one bot fetched [#see-every-page-that-one-bot-fetched]

1. Open **Explore**.
2. In the filter bar, add a **Bot** filter and select the bot.
3. In **Grouped hits**, select **Page**.
4. Click the **Hits** column header to sort by hits.

### Find where fake Googlebot traffic comes from [#find-where-fake-googlebot-traffic-comes-from]

1. Open **Explore**.
2. Add a **Bot** filter for Googlebot.
3. Add a **Verification** filter for **Spoofed**.
4. Select **Network** to group the hits by network.

## Troubleshooting [#troubleshooting]

### Why does Explore say "At least" before the number of hits? [#why-does-explore-say-at-least-before-the-number-of-hits]

If your filters include successful (2xx) requests, Explore counts from a 1% sample of them. The number is a lower bound. Filter to an error status code to get exact counts.

### Why does Explore show "Nothing matches these filters"? [#why-does-explore-show-nothing-matches-these-filters]

If no request matches your filters in the date range, the table is empty. Remove a filter, or pick a longer date range.

### Why can I not group fake requests by IP prefix? [#why-can-i-not-group-fake-requests-by-ip-prefix]

If a request is unchecked or fake, Server Log Monitoring does not store its IP address. Group by **Network** instead.

## Related [#related]

- [Server Log Monitoring](/server-logs/overview) - filters and verification.
- [Bots](/server-logs/bots) - every bot and its drawer.
- [Responses](/server-logs/responses) - status codes and URLs to fix.
- [Pages](/server-logs/pages) - crawled pages and crawl budget.
- [Glossary](/help/glossary#crawlers-and-bots) - the crawler and bot terms.
