Paste a snippet and get an estimate of how likely it came from Copilot, ChatGPT or similar — with the signals behind the call. Supports Python, JS, Java, C++, Go and Rust.
Paste a snippet or load the example to estimate AI authorship.
AI tends to over-comment with explanatory, textbook-style notes that human devs rarely write.
Generic variable names, perfectly uniform formatting and predictable structure are tell-tale signs.
Free covers short 50-line snippets; Pro scans are unlimited and cover multiple files and whole repos.
Code is a constrained language. Two engineers solving the same problem in the same framework will often arrive at nearly identical syntax, so the kind of stylistic variation that gives away AI-written essays is naturally compressed in source code. A clean, idiomatic function looks much the same whether a person or a model typed it — which is exactly why a code-specific detector matters instead of running a snippet through a text detector built for paragraphs.
What this detector keys on isn't whether the code is good. It's the texture around the logic: how comments are phrased, how consistently things are named, how evenly the formatting falls, and how much scaffolding sits around the part that actually does the work. Assistants like Copilot, ChatGPT and Claude have habits — they tend to explain themselves, reach for safe generic names, and produce code that's a little too tidy. Human work usually carries the small inconsistencies of someone building under real constraints.
When you hit Analyze, the snippet is sent over HTTPS to the TextSight API and broken down into several measurable signals, each weighed and combined into one probability:
data, result, temp and item used wholesale, instead of names that carry the domain.No single one of these proves authorship. A careful junior developer can write evenly formatted, heavily commented code; a senior engineer can paste an AI draft and leave it untouched. The score is the weighted picture, not a verdict on any one line.
Treat the percentage as a confidence reading, not a courtroom finding. A high score means several signals lined up toward generated code; a low one means the snippet looks more like hand-written work. The honest middle — anything that lands around the fence — usually means the sample was too short or too generic to call, and the right move is to look at more of the codebase, not to trust a single number.
There are real blind spots worth naming. Very short snippets carry almost no signal — a five-line utility function can be written exactly one sensible way. Heavily edited AI output, where a developer renamed variables and trimmed the comments, drifts toward looking human, because that's effectively what happened. And boilerplate-heavy code — config files, generated migrations, framework stubs — can read as machine-made regardless of who wrote it. None of these are flaws unique to TextSight; they're the limits of code detection itself.
So use it as a first pass, not the last word. It's most useful for triage: flagging a pull request worth a closer human review, sanity-checking a take-home submission before an interview, or settling your own suspicion about a chunk of pasted-in code. The score points you at what to examine; you still make the call.
AI coding assistants are now part of almost every workflow, which makes "did a person actually write this?" a question that comes up far more than it used to:
You can start without an account: anonymous use covers 3 short snippets a day, up to about 50 lines, and a free account raises that to 5 a day. Starter raises the daily limit to 25 a day and lifts the line cap, and Pro removes the cap and extends scanning across multiple files and whole repositories — which is where reviewing a real contribution, rather than a fragment, actually starts to make sense. Throughout, this tool only estimates authorship; it doesn't run your code, and the goal is never to help anyone slip past a reviewer — just to give the people doing the reviewing a clearer place to look.