# How scanning works

> What an agent can send to Copyleaks, how it gets there, and what a scan costs.

### Three scan types

| Scan | Input | Answers |
|---|---|---|
| **`AI Detection`** | text | Which parts of this text were AI-written? |
| **`Plagiarism Detection`** | text | Which parts match something else, and what? |
| **AI image detection** | an image | Was this image AI-generated? |

**A scan is either text or image, never both.** The two text scans can run together on the same text; an image scan runs alone.

`Cheat Detection` and the `AI Source Match` tag are part of the plagiarism scan, not separate scans - see [Results](/mcp/results).

### OCR - PDFs, scans and photos

Both text scans accept files that are not plain text - a PDF, a scanned page, a photograph of a document. Copyleaks extracts the text and scans that. **That is still a text scan.**

| You want to know | Scan type |
|---|---|
| Is the writing in this PDF plagiarized? | **text** - extracted first |
| Is the text in this screenshot AI-written? | **text** - extracted first |
| Was this photo generated by AI? | **image** |

### The 350-character AI minimum

`AI Detection` needs at least **350 characters**. Below that it does not run at all and no AI score comes back - the scan still runs for plagiarism, which has no minimum.

**A blank AI score means *not measured*, never *nothing found*.** Your agent reports which checks actually ran.

### Long text goes as a file

Pasted text is capped at **25,000 characters**. A file has no character ceiling, so if a paste is refused for length, send the same content as a file instead.

### Getting a document to Copyleaks

An agent cannot pass a file from one connector to another. A Drive or Dropbox connection gives *your agent* the file; it does not give Copyleaks the file.

| Path | For | How |
|---|---|---|
| **Inline** | Small files | The file travels inside the scan request |
| **Upload** | Everything larger | Ask for an upload slot, send the file to it, then scan the handle |

**The maximum size depends on the file type.** When your agent asks for an upload address, the answer carries the exact limit for that file.

There's no fixed size between the two: it depends on how much room your agent has left in the conversation, and your agent chooses. Anything past a small file should use the upload slot, which keeps it out of the conversation.

The upload step needs a client that can run a command on your machine - [what works where](/mcp/overview#what-you-need-and-what-works-where). Without one, upload larger files in the Copyleaks app and ask your agent to read the scan.

### Images

**Copyleaks scans the image you actually have, byte for byte.** Any alteration - resizing, cropping, converting, re-saving - changes the answer. Your agent will not modify an image to make it fit; if it cannot send the original, it says so.

**An image always goes through the upload step, never inline**, so it needs a client that can run commands.

| Bound | | Checked |
|---|---|---|
| Maximum size | 33,554,432 bytes | at the upload slot, before the image is sent |
| Formats | PNG · JPEG/JPG · BMP | at the upload slot, before the image is sent |
| Minimum dimensions | 512 × 512 pixels | after the image is sent |
| Maximum | 27 megapixels | after the image is sent |

For any other format, **upload the image in Copyleaks and ask your agent to read the finished scan.**

An image refused on any of these bounds spends no credit. Size and format are refused before sending; an image outside the pixel bounds comes back as a failed scan with the reason.

An image scan returns a score and confirmation the picture was checked - nothing pixel-level. Open the report for anything visual.

### Web addresses

Scanning a web address means Copyleaks fetches it, without your sign-ins. So **Google Docs and Drive, SharePoint and OneDrive, Notion and Dropbox return a sign-in page, not your document.**

Copyleaks cannot tell the difference, so it scans that sign-in page and spends credits on it. Send the document as a file instead.

**To scan something in Drive, SharePoint or Notion,** save it to your computer and send the file.

A client that can run commands can save and upload it for you. In the Claude chat, attach the file yourself or upload it in the Copyleaks app.

### Several files at once

Up to **ten files** in one call, each its own scan, spending credits separately. Ten is a deliberate guard so one mistaken instruction cannot spend a large share of your balance - send the rest as a second call.
