Data source

Last updated Oct 1, 2026 You can upload files directly to an instance or connect an external data source.

Data Source Description
Built-in storage Upload files directly to an instance. Available by default on every instance.
Website Connect a domain you own to index website pages.
R2 Bucket Connect a Cloudflare R2 bucket to index stored documents.

For website data sources, Parse types covers how AI Search finds the pages to index.

Supported file types

AI Search can ingest a variety of file types. The following plain text files and rich format files are supported.

Plain text file types

Format File extensions MIME type
Text .txt, .rst text/plain, text/x-rst
Log .log, .log.gz text/plain
Config .ini, .conf, .env, .properties, .gitignore, .editorconfig, .toml text/plain, text/toml
Markdown .markdown, .md, .mdx, .mdoc text/markdown
LaTeX .tex, .latex application/x-tex, application/x-latex
Script .sh, .bat, .ps1 application/x-sh, application/x-msdos-batch, text/x-powershell
SGML .sgml text/sgml
JSON .json application/json
XML .xml application/xml
SQL .sql application/sql
YAML .yaml, .yml application/x-yaml
CSS .css text/css
JavaScript .js application/javascript
TypeScript .ts, .tsx application/typescript
PHP .php application/x-httpd-php
Python .py text/x-python
Ruby .rb text/x-ruby
Java .java text/x-java-source
C .c text/x-c
C++ .cpp, .cxx text/x-c++
C Header .h, .hpp text/x-c-header
Go .go text/x-go
Rust .rs text/rust
Swift .swift text/swift
Dart .dart text/dart
Terraform .tf text/plain
EMACS Lisp .el application/x-elisp, text/x-elisp, text/x-emacs-lisp

Rich format file types

AI Search uses Markdown Conversion to convert rich format files to markdown. The following table lists the supported formats that will be converted to Markdown:

Format | | | | | File extensions | | | | | Mime Types | | | |

PDF Documents .pdf application/pdf
Images <sup>1</sup> .jpeg, .jpg, .png, .webp, .svg, .gif, .bmp image/jpeg, image/png, image/webp, image/svg+xml, image/gif, image/bmp
HTML Documents .html, .htm text/html
XML Documents .xml application/xml
Microsoft Office Documents .xlsx, .xlsm, .xlsb, .xls, .et, .docx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel.sheet.macroenabled.12, application/vnd.ms-excel.sheet.binary.macroenabled.12, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.wordprocessingml.document
Open Document Format .ods, .odt application/vnd.oasis.opendocument.spreadsheet, application/vnd.oasis.opendocument.text
CSV .csv text/csv
Apple Documents .numbers application/vnd.apple.numbers

<sup>1</sup> Image conversion uses two Workers AI models for object detection and summarization. See Workers AI pricing for more details.

File limits

AI Search applies these file size limits:

File type Maximum size
PDF with OCR enabled 10 MiB
PDF without OCR 4 MiB
Plain text, code, configuration, markup, and other formats listed in Plain text file types 10 MiB
Other formats converted to Markdown 4 MiB

Files that exceed these limits are not indexed. They appear in the error logs.

Images and optical character recognition

AI Search supports .jpg, .jpeg, .png, .webp, .gif, .bmp, .tif, .tiff, .heic, and .heif images. Multimodal embedding models embed supported images directly. Text-only embedding models create captions before embedding images.

Optical character recognition (OCR) extracts text from scanned PDFs and images. Set indexing_options.use_ocr to true when creating or updating an instance. OCR is disabled by default and changing this setting triggers a full reindex.

OCR is available for every account. OCR usage is billed as image-processing ingestion tokens. For pricing details, refer to Limits and pricing.

Was this helpful?

YesNo

On this page

Data source - 图1Docs

{"@context":"https://schema.org","@type":"TechArticle","@id":"https://developers.cloudflare.com/ai-search/configuration/data-source/#page","headline":"Data source","description":"Connect a website, R2 bucket, or upload files directly to your AI Search instance for indexing.","url":"https://developers.cloudflare.com/ai-search/configuration/data-source/","inLanguage":"en","image":"https://developers.cloudflare.com/ai-search/configuration/data-source/og.png?v=3fa0474a40543a58","dateModified":"2026-10-01","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}


description: Upload files directly to an AI Search instance using built-in storage powered by R2 and Vectorize. title: Built-in storage image: https://developers.cloudflare.com/ai-search/configuration/data-source/built-in-storage/og.png?v=8152804138aeb1b5


Skip to content

Documentation Index
Fetch the complete documentation index at: https://developers.cloudflare.com/ai-search/llms.txt
Use this file to discover all available pages before exploring further.