Starting with cloudflared version 2026.5.2 ↗, Cloudflare Tunnel automates the entire connectivity pre-checks workflow directly inside the binary. Previously, customers had to install dig and netcat and run those commands by hand to verify their environment. Now cloudflared does it natively at startup — and surfaces actionable remediation when something is blocked.
On every cloudflared tunnel run (and cloudflared tunnel diag), the binary now natively checks:
DNS resolution — region1.v2.argotunnel.com and region2.v2.argotunnel.com resolve to valid Cloudflare IPs.
Transport connectivity — outbound UDP (QUIC) and TCP (HTTP/2) on port 7844.
Management API — outbound TCP/443 to api.cloudflare.com for software updates.
Results are printed in a scannable CLI table with three states:
✅ Pass — the check succeeded.
⚠️ Warn — a non-blocking issue, for example the Management API is unreachable so automatic updates will not work, but the tunnel will still come up.
❌ Fail — a blocking issue, with a specific remediation hint (for example, Allow outbound UDP on port 7844).
If DNS is unresolvable, or both UDP and TCP fail on port 7844, cloudflared exits early with the failure rather than looping on opaque failed to dial errors.
Pre-checks now run automatically on every start, which also catches regressions like overnight firewall policy changes — no need to remember to rerun the troubleshooting guide.
The Billing Profile now has a modern UI and a single space that unifies billing information, payment method management and an enhanced subscriptions view under a single Subscriptions tab.
What changed
The Subscriptions tab brings billing information, payment method management, and your subscriptions together in one place. The payment management and Pay overdue balances flows now use the latest checkout as product purchase flows, so you can pay with Apple Pay, Google Pay, Link, and Instant Bank Payments via Link alongside cards and PayPal.
New cards complete 3D Secure authentication when the issuer requires it — for example, the EU under PSD2 and India under RBI.
For details, refer to the Billing Home documentation.
You can now scope Cloudflare permissions to individual Cloudflare Tunnel instances and Cloudflare Mesh nodes. Administrators can delegate access to specific Tunnels or Mesh nodes without granting account-wide control over private networking.
Grant a read-only role on a single Cloudflare Tunnel instance to a support operator for log streaming and diagnostics — without exposing other Tunnels or destructive actions.
Grant a write role on a specific Cloudflare Mesh node to an application team — without giving them access to the rest of your private network.
Scope a single policy to one or many Tunnels and Mesh nodes at once.
How it works
Granular permissions are a parallel layer to existing account-level roles — they do not replace them.
Existing account-level roles continue to work. A member with Cloudflare Access or Cloudflare Zero Trust retains write access to every Tunnel and Mesh node in the account. This ensures backward compatibility for existing automation and tokens.
Granular permissions are additive. For any API request on a specific Tunnel or Mesh node, access is granted if the principal has either the account-level role or a granular permission for that resource.
Resource enumeration is authorization-aware. Listing endpoints (GET /accounts/{id}/cfd_tunnel, GET /accounts/{id}/warp_connector) return only the resources the principal has at least read access to.
You can now navigate, switch context, and take common actions in the Cloudflare dashboard without leaving your keyboard. Press ? anywhere to see the full list. Keyboard shortcuts can be disabled by visiting your profile settings ↗.
Navigate
Shortcut
Action
g h
Go to Home
g a
Go to account overview
g z
Go to zone overview
g p
Go to your profile
g w
Go to Workers & Pages
g o
Go to Zero Trust
g b
Go to billing
g 1 – g 5
Go to a recent or pinned item (by position in sidebar)
This is a major version release that includes breaking changes to three packages: ai_search, email_security, and workers. These changes reflect upstream API specification updates that improve type correctness and consistency.
Please ensure you read through the list of changes below before moving to this version - this will help you understand any down or upstream issues it may cause to your environments.
Breaking Changes
See the v7.0.0 Migration Guide ↗ for before/after code examples and actions needed for each change.
AI Search - SearchForAgents Metadata Removed
The SearchForAgents nested type has been removed from all instance metadata structs. This field is no longer part of the API specification.
The Investigate.Get, Investigate.Move.New, and Investigate.Reclassify.New methods now use investigateID instead of postfixID as the path parameter name.
The observability telemetry filter parameter types have been restructured to support nested filter groups. New discriminated union types replace the previous flat filter arrays:
ObservabilityTelemetryKeysParams.Filters now accepts FiltersObjectFilterUnion (was []interface\{\})
ObservabilityTelemetryQueryParams.Parameters.Filters now accepts FiltersObjectFilterUnion
ObservabilityTelemetryValuesParams.Filters now accepts FiltersObjectFilterUnion
New types include FiltersObjectFiltersObject (for group filters with FilterCombination) and FiltersWorkersObservabilityFilterLeaf (for leaf filters with typed Operation, Type, and Value fields).
This is a major release of the Cloudflare Python SDK. It drops support for Python 3.8, adds 11 new API services, introduces optional aiohttp backend support for improved async concurrency, and includes hundreds of type and method updates across the entire API surface.
Please review the breaking changes below before upgrading. A migration guide is available at v5.0.0 Migration Guide ↗.
Breaking Changes
Python 3.8 is no longer supported. The minimum required version is now Python 3.9.
typing-extensions minimum version bumped from >=4.10 to >=4.14.
The following resources have breaking changes. See the v5.0.0 Migration Guide ↗ for detailed migration instructions.
abusereports
acm.totaltls
apigateway.configurations
cloudforceone.threatevents
d1.database
intel.indicatorfeeds
logpush.edge
origintlsclientauth.hostnames
queues.consumers
radar.bgp
rulesets.rules
schemavalidation.schemas
snippets
zerotrust.dlp
zerotrust.networks
Features
aiohttp Backend Support
The async client now supports an optional aiohttp HTTP backend for improved concurrency performance. Install with pip install cloudflare[aiohttp] and use DefaultAioHttpClient() as the http_client parameter.
Python 3.13 and 3.14 Support
Python 3.13 and 3.14 are now tested and supported.
New Services
The following top-level resources are new in this release:
Resource
Client Path
Description
AI Search
aisearch
AI-powered search capabilities
Connectivity
connectivity
Connectivity testing and diagnostics
Email Sending
email_sending
Email send and send_raw endpoints
Fraud
fraud
Fraud detection and prevention
Google Tag Gateway
google_tag_gateway
Google Tag Gateway management
Organizations
organizations
Organization audit logs and management
R2 Data Catalog
r2_data_catalog
R2 Data Catalog operations
Realtime Kit
realtime_kit
Realtime communication (Calls/TURN)
Resource Tagging
resource_tagging
Resource tagging and labeling
Token Validation
token_validation
Token validation configuration and rules
Vulnerability Scanner
vulnerability_scanner
Vulnerability scanning, credential sets, and target environments
New Endpoints on Existing Services
api_gateway: Labels endpoints
billing: Billable usage PayGo endpoint
brand_protection: v2 endpoints
browser_rendering: DevTools methods
cache: Origin cloud regions resource
custom_origin_trust_store: Custom origin trust store
dns: dns_records/usage endpoints
email_security: Phishguard reports endpoint
iam: User groups and user group members resources
radar: Botnet Threat Feed and Post-Quantum endpoints
workers: Observability Destinations resources
zero_trust: Access Users, DEX rules, Device IP Profile, Device Subnet, WARP Connector connections and failover, WARP Subnet, Gateway PAC files
zones: Zone environments endpoints
Bug Fixes
Fixed polymorphic_serialization parameter in model_dump overrides
Added BaseModel base to response SchemaFieldStruct/SchemaFieldList stubs in Pipelines
Added missing model_rebuild/update_forward_refs for SharedEntryCustomEntry classes in DLP
Made RunQueryParametersNeedleValue a BaseModel with arbitrary_types_allowed in Workers
Removed duplicate notification_url field in webhook response types for Stream
Resolved pre-existing codegen type errors
Fixed type: ignore[call-arg] placement for mypy compatibility in Radar
Deprecations
Resources with @deprecated annotations on some methods include: accounts, addressing, ai-gateway, aisearch, api-gateway, billing, cloudforce-one, dns, email-routing, email-security, filters, firewall, images, intel, kv, logpush, origin-tls-client-auth, pages, pipelines, radar, rate-limits, registrar, rulesets, ssl, user, workers, workers-for-platforms, zero-trust, zones
This is a major version release of the Cloudflare TypeScript SDK. It includes 11 entirely new top-level API resources, new sub-resources and methods across 50+ existing resources, SDK infrastructure improvements, and breaking changes to the generated API surface from the v5.x line.
Please ensure you read through the list of changes below before moving to this version - this will help you understand any down or upstream issues it may cause to your environments.
Breaking Changes
SDK Infrastructure
Retry-After handling changed: The SDK now respects any server-specified Retry-After value for rate-limited requests. Previously, values over 60 seconds were ignored and a default backoff was used instead.
Empty response handling: Responses with content-length: 0 now return undefined instead of attempting to parse the body.
Environment variable reading: Empty string env vars (for example, CLOUDFLARE_API_TOKEN="") are now treated as unset.
Path query parameter merging: URL search params embedded in endpoint paths are now extracted and merged into the query object.
Removed Endpoints (17)
17 HTTP endpoints were removed from the SDK, affecting abuse-reports, cloudforce-one, dlp/profiles/predefined, email-security/investigate, email-security/settings, and intel/ip-list.
Method Signature Changes
client.ai.toMarkdown.transform(file, \{ ...params \}) -> client.ai.toMarkdown.transform(\{ ...params \}) -- file moved from positional arg into params body
client.radar.ai.toMarkdown.create(body, \{ ...params \}) -> client.radar.ai.toMarkdown.create(\{ ...params \}) -- body moved from positional arg into params
Link ↗ now supports bank account payments in addition to cards. If you have a bank account saved in Link, it appears as a payment option at checkout. If not, you can connect one during the checkout flow.
How to use it
During checkout, select your bank account from your saved Link payment methods.
Confirm the payment.
After your first Link authentication, your bank account is available for future purchases without re-entering details.
Who is eligible
Instant Bank Payments via Link is available to US-based self-serve accounts across all Cloudflare products. Your existing cards remain available at checkout.
Bank-based Link payments appear in your billing history with the payment method shown as link and last four digits as 0000. For details, refer to the Instant Bank Payments via Link documentation.
The Support button in the dashboard global navigation header now takes you directly to the Cloudflare Support Portal ↗, eliminating the previous dropdown menu.
This change ensures that when you need help, you spend less time navigating the UI and more time getting the answers you need.
What changed?
Previous behavior: Selecting ? Support opened a dropdown menu with various links (Help Center, Cloudflare Community, etc.).
New behavior: Selecting Support immediately redirects your current tab to the Support Portal.
Cloudflare-generated 5xx error responses now return structured JSON and Markdown when agents request them, matching the format already available for 1xxx errors. Responses follow RFC 9457 (Problem Details for HTTP APIs) ↗ and include a Retry-After HTTP header on retryable codes.
Changes
5xx coverage. Ten Cloudflare-generated error codes (500, 502, 504, 520-526) now serve structured responses. These are errors Cloudflare itself generates when it cannot reach or understand the origin server. Origin-generated 5xx responses that Cloudflare passes through are not affected.
Fault attribution. The error_category field tells agents where the fault lies:
origin (502, 504, 520-524) — the origin server is responsible. Transient; retry with the backoff in retry_after.
cloudflare (500) — Cloudflare's fault, not the website or the request. Short retry.
ssl (525, 526) — the origin's TLS configuration is broken. Do not retry.
Retry-After header. Retryable codes (500, 502, 504, 520-524) include a Retry-After HTTP header matching the retry_after body field. Non-retryable codes (525, 526) do not include the header.
Resource Tagging is now in public beta and rolling out to all Cloudflare accounts over the coming days. You can attach custom key-value metadata to your Cloudflare resources and query across your entire account to find what you need.
What's included
Broad resource type support — Tag zones, custom hostnames, Cloudflare Tunnels, Workers, D1 databases, R2 buckets, KV namespaces, Durable Object namespaces, Queues, Stream videos, Images, Access applications, Gateway rules, AI Gateways, and more. Refer to the full list of supported resource types.
Powerful filtering — Query tagged resources using AND/OR logic, negation, and key-only matching. Combine up to 20 filters per query to build precise resource views.
Account and zone-level endpoints — Full CRUD operations across both scopes.
Token-based authentication — Tagging supports Account Owned Tokens that persist independently of individual users, so your automation keeps running through credential rotations and team changes.
Flexible role support — Super Administrators, Workers Admins, and Tag Admins can all manage tags.
API-first by design
The API is the primary interface for Resource Tagging and the recommended path for all workflows — scripting tag assignments, building CI/CD pipelines, or integrating with your infrastructure-as-code toolchain.
Dashboard UI
You can also view and manage tagged resources directly in the Cloudflare dashboard. Navigate to Manage Account > Resource Tagging to see all tagged resources across your account, filter by resource name or tag, and add or edit tags inline.
What's coming next
In future releases, expect support for additional resource types across the Cloudflare platform, tag-based access control policies for scoping user permissions to tagged resources, billing and usage attribution by tag for breaking down costs by team, project, or environment, and Terraform provider support for managing tags declaratively.
Current limitations
PUT replaces all tags on a resource (no partial update). Use the GET, merge, PUT workflow to modify individual tags safely.
DELETE removes all tags from a resource. To remove a single tag, PUT the remaining tags back.
Querying tags for a resource that has never been tagged returns 500 instead of 404. This is a known beta limitation.
Terraform Provider v5.19.0 introduces 14 new resources spanning AI Gateway, Pipelines, R2 Data Catalog, User Groups, Vulnerability Scanner, Workers Observability, and Zero Trust capabilities. This release significantly improves the v4 to v5 migration experience with automatic state upgraders for 26 resources, working seamlessly with the new tf-migrate CLI tool ↗ to automate resource renames, attribute updates, and moved block generation. Together, these enhancements reduce manual migration effort and minimize risk when upgrading from v4 to v5.
Note:cmd/migrate is deprecated in favor of tf-migrate and will be removed in a future release (#7062 ↗)
New Resources
cloudflare_ai_gateway: Manage AI Gateway instances
We're excited to announce tf-migrate, a purpose-built CLI tool that simplifies migrating from Cloudflare Terraform Provider v4 to v5.
v5 is stable and ready for production
Terraform Provider v5 is stable and actively receiving updates. We encourage all users to migrate to v5 to take advantage of ongoing enhancements and new capabilities.
Cloudflare uses tf-migrate to migrate our own infrastructure — the same tool we're providing to the community — ensuring the best possible migration experience.
What tf-migrate does
tf-migrate automates the tedious and error-prone parts of the v4 to v5 migration process:
Resource type renames – Automatically updates cloudflare_record → cloudflare_dns_record, cloudflare_access_application → cloudflare_zero_trust_access_application, and 40+ other renamed resources
Attribute transformations – Updates field names (e.g., value → content for DNS records) and restructures nested blocks
Moved block generation – Creates Terraform 1.8+ moved blocks to prevent resource replacements and ensure zero-downtime migrations
Cross-file reference updates – Automatically finds and updates all references to renamed resources across your entire configuration
Dry-run mode – Preview all changes before applying them to ensure safety
Combined with the automatic state upgraders introduced in v5.19+, tf-migrate eliminates the manual work and risk that previously made v5 migrations challenging. Tf-migrate operates directly on the config, and the built-in state upgraders handle the rest.
Supported resources
Tf-migrate currently supports the most common Terraform resources our customers use. We are actively working to expand coverage, with the most commonly used resources prioritized first.
For the complete list of supported resources and their migration status, refer to the v5 Stabilization Tracker ↗. This list is updated regularly as additional resources are stabilized and migration support is added.
Resources not yet supported by tf-migrate will need to be migrated manually using the version 5 upgrade guide ↗. The upgrade guide provides step-by-step instructions for handling resource renames, attribute changes, and state migrations.
We have been releasing Betas over the past month and a half while testing this tool. See the full changelog of those Betas here: tf-migrate releases ↗.
Audit Logs v2 now supports organization-level audit logs. Org Admins can retrieve audit events for actions performed at the organization level via the Audit Logs v2 API.
To retrieve organization-level audit logs, use the following endpoint:
GET https://api.cloudflare.com/client/v4/organizations/{organization_id}/logs/audit
This release covers user-initiated actions performed through organization-level APIs. Audit logs for system-initiated actions, a dashboard UI, and Logpush support for organizations will be added in future releases.
In this release, you'll see a number of breaking changes. This is primarily due to changes in OpenAPI definitions, which our libraries are based off of, and codegen updates that we rely on to read those OpenAPI definitions and produce our SDK libraries.
Please ensure you read through the list of changes below before moving to this version - this will help you understand any down or upstream issues it may cause to your environments.
Breaking Changes
See the v6.10.0 Migration Guide ↗ for before/after code examples and actions needed for each change.
Abuse Reports - Registrar WHOIS Report Field Removals
Several fields have been removed from AbuseReportNewParamsBodyAbuseReportsRegistrarWhoisReportRegWhoRequest:
RegWhoGoodFaithAffirmation
RegWhoLawfulProcessingAgreement
RegWhoLegalBasis
RegWhoRequestType
RegWhoRequestedDataElements
AI Search - Instance Params Restructured
The InstanceNewParams and InstanceUpdateParams types have been significantly restructured. Many fields have been moved or removed:
InstanceSearchParams.Messages field removed along with InstanceSearchParamsMessage and InstanceSearchParamsMessagesRole types
AI Search - InstanceItem Service Removed
The InstanceItemService type has been removed. The items sub-resource at client.AISearch.Instances.Items no longer exists in the non-namespace path. Use client.AISearch.Namespaces.Instances.Items instead.
AI Search - Token Types Removed
The following types have been removed from the ai_search package:
Email Security - Investigate Move Return Type Change
The Investigate.Move.New() method now returns a raw slice instead of a paginated wrapper:
New() returns *[]InvestigateMoveNewResponse instead of *pagination.SinglePage[InvestigateMoveNewResponse]
NewAutoPaging() method removed
Hyperdrive - Config Params Restructured
The ConfigEditParams type lost its MTLS and Name fields. The HyperdriveMTLSParam type lost MTLS and Host fields. The Host field on origin config changed from param.Field[string] to a plain string.
IAM - UserGroupMember Params and Return Types Changed
The UserGroupMemberNewParams struct has been restructured and the New() method now returns a paginated response:
UserGroupMemberNewParams.Body renamed to UserGroupMemberNewParams.Members
UserGroupMemberNewParamsBody renamed to UserGroupMemberNewParamsMember
UserGroupMemberUpdateParams.Body renamed to UserGroupMemberUpdateParams.Members
UserGroupMemberUpdateParamsBody renamed to UserGroupMemberUpdateParamsMember
UserGroups.Members.New() returns *pagination.SinglePage[UserGroupMemberNewResponse] instead of *UserGroupMemberNewResponse
IAM - UserGroup List Direction Type Changed
The UserGroupListParams.Direction field changed from param.Field[string] to param.Field[UserGroupListParamsDirection] (typed enum with asc/desc values).
Pipelines - Delete Methods Now Return Typed Responses
Several delete methods across Pipelines now return typed responses instead of bare error:
Pipelines.DeleteV1() returns (*PipelineDeleteV1Response, error) instead of error
Pipelines.Sinks.Delete() returns (*SinkDeleteResponse, error) instead of error
Pipelines.Streams.Delete() returns (*StreamDeleteResponse, error) instead of error
Queues - Message Response Types Removed
The following response envelope types have been removed:
MessageBulkPushResponseSuccess
MessagePushResponseSuccess
MessageAckResponse fields RetryCount and Warnings removed
Secrets Store - Pagination Wrapper Removal and Type Changes
Methods now return direct types instead of SinglePage wrappers, and several internal types have been removed. Associated AutoPaging methods have also been removed:
Stores.New() returns *StoreNewResponse instead of *pagination.SinglePage[StoreNewResponse]
Stores.NewAutoPaging() method removed
Stores.Secrets.BulkDelete() returns *StoreSecretBulkDeleteResponse instead of *pagination.SinglePage[StoreSecretBulkDeleteResponse]
Custom Dashboards are now available to all Cloudflare customers. Build personalized views that highlight the metrics most critical to your infrastructure and security posture, moving beyond standard product dashboards.
This update significantly expands the data available for visualization. Build charts based on any of the 100+ datasets available via the Cloudflare GraphQL API, covering everything from WAF events and Workers metrics to Load Balancing and Zero Trust logs.
Log Explorer integration
For Log Explorer customers, you can now turn raw log queries directly into dashboard charts. When you identify a specific pattern or spike while investigating logs, save that query as a visualization to monitor those signals in real-time without leaving the dashboard.
Key benefits
Unified visibility: Consolidate signals from different Cloudflare products (for example, HTTP Traffic and R2 Storage) into a single view.
Flexible monitoring: Create charts that focus on specific status codes, ASN regions, or security actions that matter to your business.
Expanded limits: Log Explorer customers can create up to 100 dashboards (up from 25 for standard customers).
Pay-as-you-go customers can now monitor usage-based costs and configure spend alerts through two new features: the Billable Usage dashboard and Budget alerts.
Billable Usage dashboard
The Billable Usage dashboard provides daily visibility into usage-based costs across your Cloudflare account. The data comes from the same system that generates your monthly invoice, so the figures match your bill.
The dashboard displays:
A bar chart showing daily usage charges for your billing period
A sortable table breaking down usage by product, including total usage, billable usage, and cumulative costs
Ability to view previous billing periods
Usage data aligns to your billing cycle, not the calendar month. The total usage cost shown at the end of a completed billing period matches the usage overage charges on your corresponding invoice.
To access the dashboard, go to Manage Account > Billing > Billable Usage.
Budget alerts
Budget alerts allow you to set dollar-based thresholds for your account-level usage spend. You receive an email notification when your projected monthly spend reaches your configured threshold, giving you proactive visibility into your bill before month-end.
To configure a budget alert:
Go to Manage Account > Billing > Billable Usage.
Select Set Budget Alert.
Enter a budget threshold amount greater than $0.
Select Create.
Alternatively, configure alerts via Notifications > Add > Budget Alert.
You can create multiple budget alerts at different dollar amounts. The notifications system automatically deduplicates alerts if multiple thresholds trigger at the same time. Budget alerts are calculated daily based on your usage trends and fire once per billing cycle when your projected spend first crosses your threshold.
Both features are available to Pay-as-you-go accounts with usage-based products (Workers, R2, Images, etc.). Enterprise contract accounts are not supported.
When a Cloudflare Worker intercepts a visitor request, it can dispatch additional outbound fetch calls called subrequests. By default, each subrequest generates its own log entry in Logpush, resulting in multiple log lines per visitor request. With subrequest merging enabled, subrequest data is embedded as a nested array field on the parent log record instead.
What's new
New subrequest_merging field on Logpush jobs — Set "merge_subrequests": true when creating or updating an http_requests Logpush job to enable the feature.
New Subrequests log field — When subrequest merging is enabled, a Subrequests field (array\<object\>) is added to each parent request log record. Each element in the array contains the standard http_requests fields for that subrequest.
Limitations
Applies to the http_requests (zone-scoped) dataset only.
A maximum of 50 subrequests are merged per parent request. Subrequests beyond this limit are passed through unmodified as individual log entries.
Subrequests must complete within 5 minutes of the visitor request. Subrequests that exceed this window are passed through unmodified.
Subrequests that do not qualify appear as separate log entries — no data is lost.
Subrequest merging is being gradually rolled out and is not yet available on all zones. Contact your account team for concerns or to ensure it is enabled for your zone.
Logpush has traditionally been great at delivering Cloudflare logs to a variety of destinations in JSON format. While JSON is flexible and easily readable, it can be inefficient to store and query at scale.
With this release, you can now send your logs directly to Pipelines to ingest, transform, and store your logs in R2 as Parquet files or Apache Iceberg tables managed by R2 Data Catalog. This makes the data footprint more compact and more efficient at querying your logs instantly with R2 SQL or any other query engine that supports Apache Iceberg or Parquet.
Transform logs before storage
Pipelines SQL runs on each log record in-flight, so you can reshape your data before it is written. For example, you can drop noisy fields, redact sensitive values, or derive new columns:
INSERT INTO http_logs_sinkSELECT ClientIP, EdgeResponseStatus, to_timestamp_micros(EdgeStartTimestamp) AS event_time, upper(ClientRequestMethod) AS method, sha256(ClientIP) AS hashed_ipFROM http_logs_streamWHERE EdgeResponseStatus >= 400;
Pipelines SQL supports string functions, regex, hashing, JSON extraction, timestamp conversion, conditional expressions, and more. For the full list, refer to the Pipelines SQL reference.
Cloudflare's network now supports redirecting verified AI training crawlers to canonical URLs when they request deprecated or duplicate pages. When enabled via AI Crawl Control > Quick Actions, AI training crawlers that request a page with a canonical tag pointing elsewhere receive a 301 redirect to the canonical version. Humans, search engine crawlers, and AI Search agents continue to see the original page normally.
This feature leverages your existing <link rel="canonical"> tags. No additional configuration required beyond enabling the toggle. Available on Pro, Business, and Enterprise plans at no additional cost.
AI Crawl Control now includes new tools to help you prepare your site for the agentic Internet—a web where AI agents are first-class citizens that discover and interact with content differently than human visitors.
Content Format insights
The Metrics tab now includes a Content Format chart showing what content types AI systems request versus what your origin serves. Understanding these patterns helps you optimize content delivery for both human and agent consumption.
Directives tab (formerly Robots.txt)
The Robots.txt tab has been renamed to Directives and now includes a link to check your site's Agent Readiness ↗ score.