Illustration of a magnifying glass over scattered legal documents with glowing calendar and checkmark icons, representing Relativity aiR Custom Analysis extracting structured data fields.

Relativity aiR Custom Analysis is a no-code feature within Relativity aiR for Review that lets legal teams use natural language to define up to five specific, AI-driven document insights per project. It’s part of the broader Relativity aiR legal data intelligence suite, and it’s built to handle the kind of analysis that doesn’t fit neatly into standard responsiveness or privilege review. If you can describe what you’re looking for in plain language, Custom Analysis can find it.

The tool is flexible enough to get real results with a minimal setup, but getting it to run correctly and getting the most out of it are two different things. Here’s how to do both.


Custom Analysis is one of five analysis types available in aiR for Review. For a full walkthrough of relevancy, key document, and issue tagging setup, see our step-by-step aiR for Review guide.

Read the aiR for Review Setup Guide →


Set Up Your Project Correctly From the Start

Custom Analysis projects are created the same way you’d set up any other aiR for Review project, with two decisions early on that shape everything that follows:

  • Data source: Start with a refined saved search rather than your full document population. A smaller, targeted data set lets you work through your error and validation workflow before expanding to the larger data set.
  • Model type: You’ll choose between a text model and a vision model. Text model works on documents with extracted text. Vision model works on JPEGs, PNGs, and GIFs, such as photos or scanned handwritten pages.

Once the project is created, you’ll land on a dashboard showing your control numbers and your prompt creation panel, where the real work starts.

Clean Your Data Source Before You Run It

As noted, aiR for Review needs text to work with. Documents need either extracted text or OCR text to be analyzable, but there are a few practical limits and cleanup steps worth doing up front:

  • Text size cap. Documents with extracted text over 300KB will error out. Pull those from your data source before running.
  • Consider scoping to emails only and excluding attachments if that fits your review protocol.
  • Screen out file types the model can’t meaningfully analyze. Audio, video, or proprietary formats that Relativity itself can’t process natively will need to be reviewed manually anyway, so don’t waste a run on errors you’ll just have to investigate afterward.
  • Define your Custom Analysis criteria before you clean, not after. Since Custom Analysis lets you set up to five natural-language prompts per project, decide what those five criteria are first. That way you can scope your data pull, emails versus attachments, file types, size exclusions, around what the analysis actually needs to look for, rather than cleaning generically and re-running later.

If your team doesn’t have bandwidth for setup and validation, Percipient runs Custom Analysis projects end to end.

Check out our Managed Review services →


Write Prompts That Return Usable Results

You get up to five insights per document, and up to 1,000 characters per insight, so there’s room to get specific. A few things that separate a usable prompt from a vague one:

  • Name the category, then instruct. For a contract review project, that might look like: contract identifiers (source, name, contract number, parties, effective date, termination date, renewal terms), purpose and value, termination for convenience, and assignment terms. Each is its own insight with its own instruction.
  • Ask for yes, no, or silent, not just yes or no. If a contract doesn’t address a term at all, you don’t want aiR marking it “no,” since that implies the term was addressed and rejected. You want it to say the document is silent on that point. This distinction matters most when you plan to search or filter on the results later, since “no” and “silent” mean very different things in a contract.
  • Write for searchability. The insights aiR returns become fields on the document. If you write your prompts with structured, consistent output in mind (a state abbreviation, a yes/no/silent answer, a defined term), you end up with a genuinely searchable data set instead of just a set of AI-generated notes.
  • Choose the right output field type. Custom Analysis results can be published as Whole Number, Single Choice, or Date fields, not just Fixed Length Text. This means you can set up filtering, sorting, and search on the Results Object instead of treating every insight as freeform text. Dates go into a Date field. A term that only has a few possible answers goes into a Single Choice field, where you predefine the valid choices up front, and those choices are automatically created on the Results Object when results are published.

What This Looks Like in Practice

Take a population of vendor NDAs. Before running anything, the five Custom Analysis insights might be defined as:

  1. Parties and effective date: Extract the full legal names of both parties and the effective date of the agreement. If no effective date is stated, return “silent.” 
  2. Term length: State the duration of the agreement in months or years. If the term is tied to an event rather than a fixed period, describe the triggering event.
  3. Mutual or one-way: State whether the confidentiality obligation is mutual or applies to only one party, and name which party if one-way. This is a good candidate for a Single Choice field, with predefined options like “Mutual,” “One-way, disclosing party,” and “One-way, receiving party.”
  4. Survival period: State how long confidentiality obligations survive termination of the agreement. If not addressed, return “silent.”
  5. Governing law: State the governing law jurisdiction as a two-letter state abbreviation. If not addressed, return “silent.” Governing law can also publish as a Single Choice field if you’re working from a known, approved list of states, which turns “find every NDA outside our approved jurisdictions” into a direct filter instead of a text search.

Single Choice fields work especially well for terms that have a limited, known set of possible answers. Take an assignment clause in a contract review project. Instead of a freeform prompt, define the insight with predetermined choices such as:

  1. No assignment permitted
  2. Silent on assignment
  3. Assignment permitted with consent of other party
  4. Assignment permitted without restriction

When results publish, those four choices are created automatically on the Results Object. A question like “how many contracts require consent before assignment” becomes a direct filter instead of a read-through, and you avoid the inconsistent phrasing that can creep into freeform text answers across a large population.

Run against a 50-document test set first. Once the output holds up against a manual spot check, apply the validated version to the full population.

The benefit shows up at the search stage. Because each insight becomes its own field, a question like “which NDAs are silent on survival period” or “which agreements use a governing law outside our approved states” becomes a direct search instead of a manual read-through of every document. That’s the difference between AI-generated notes sitting inside a document and a genuinely searchable data set.


Percipient pairs Custom Analysis output with attorney-reviewed contract analysis on every matter.

Learn more about our Contract Review services →


Test Small, Then Scale

Custom Analysis is built around iteration, and the interface reflects that with version history built into each project:

  1. Run your prompts against a small, refined set first, around 50 documents is a good starting point.
  2. Review the output against what you’d expect a human reviewer to find. Where it’s off, revise the prompt language, not just the individual results.
  3. Once you’re happy with a version, it locks in as a version you can return to, and you can develop a new version against a different test set if you want to keep refining.
  4. Apply your validated version to the full population once you trust the output.

This test-adjust-verify cycle is where most of the “getting the most out of it” happens. The initial prompt you write is rarely the one you should run against your full data set.

When a Run Doesn’t Go Cleanly

Not every document will process without issue, and it’s worth anticipating this before you’re staring at a completed run with gaps in it. The most common cause is the 300KB text size cap: documents that exceed it don’t get skipped silently, they come back as errors on the individual document rather than stopping the whole run. The fix is to identify those documents, decide whether they need a lower-tech extraction pass or manual review, and either exclude them from the Custom Analysis run entirely or route them into a separate review queue.

The same logic applies to file types the model can’t handle, audio, video, or proprietary formats without extractable text. Rather than let those return errors you must investigate one by one after the fact, screening them out at the data source stage (as covered above) saves a cleanup pass later.

Where a Human Still Needs to Be in the Loop

Custom Analysis speeds up the work of finding and structuring information across a document population, but it doesn’t replace judgment on what that information means. A few points where human review still matters:

  • QC sampling on the full population, not just the 50-document test set. A prompt that performs well on a small, curated test group can still drift on edge cases once it hits the full population’s variety.
  • Spot-checking silent versus no calls specifically, since that distinction carries real weight if the output is used to make coding or production decisions downstream.
  • Treating Custom Analysis output as a starting field to search and filter on, not a final determination. It narrows a large population down to the documents that matter, which is where reviewer attention should then go.

Not sure whether Custom Analysis fits your matter, or want Percipient to build and validate the prompts for you?

Talk to our team →


Review and Search Your Results

Once an analysis run completes, each document gets filled in with the insights you defined, along with any errors, usually caused by documents that were too large to process (see the size cap above). From there:

  • Save results as a list or route them into a review queue for a closer look.
  • Build a custom document view around your new fields. This turns your Custom Analysis output into something reviewable at a glance rather than something you have to open each document to see.
  • Search on the fields directly. Because Custom Analysis creates a condition for each insight, you can run searches like “find every contract with no provision for assignment,” something that would be difficult or impossible to search for if that information only existed inside the document text itself.
  • Sort and filter using structured field types. Date and Single Choice fields support native sorting and filtering on the Results Object, so a Date field lets you sort a population by effective date directly, and a Single Choice field lets you filter to an exact predefined answer rather than searching for text variations of the same answer.

Useful Use Cases

Custom Analysis is a flexible tool and has as many uses as your imagination allows. Some ideas:

  • Extracting structured terms from a contract population (parties, dates, renewal terms, assignment language).
  • Reviewing a set of images, such as a photo dump from a construction site, to flag whether a specific piece of equipment appears in frame.
  • Scanning handwritten notebook pages with the vision model to pull any visible text into a searchable field.

The common thread is a plain-language question applied consistently across a document set, returning results you can then search, filter, and review like any other coded field.

Frequently Asked Questions

How many Custom Analysis prompts can I run per project? 

Up to five natural-language insights per project, each up to 1,000 characters.

Can Custom Analysis replace privilege or responsiveness review? 

No. It’s designed for analysis that falls outside standard e-discovery coding categories, structured contract terms, image content, handwritten text, not as a substitute for privilege or responsiveness determinations, which still require reviewer judgment.

What file types does the vision model support? 

JPEGs, PNGs, and GIFs, typically used for photos or scanned handwritten pages.

What happens if a document’s text exceeds the size limit? 

Documents with extracted text over 300KB will error out rather than being analyzed.

What field types can Custom Analysis results publish to?
Whole Number, Single Choice, or Date, in addition to Fixed Length Text. Date and Single Choice fields support filtering, sorting, and search on the Results Object. For Single Choice fields, you predefine the valid answer choices, and those choices are created automatically on the Results Object when results publish.

Do I need a full document population to start? 

No. Start with a refined saved search, test on a smaller set (around 50 documents is a reasonable starting point), and apply a validated version to the full population once the output holds up.

The Bottom Line

Custom Analysis is genuinely no-code, but “no-code” doesn’t mean “no setup.” Getting it right comes down to a short list of habits: clean your data and know your size limits before you run anything, choose the right model type for your document population, write prompts that anticipate how you’ll search the results later, test on a small set before committing to the full population, and keep a reviewer in the loop to validate what comes back. Skip any one of those steps and you’ll still get output, it just won’t be output you can fully trust or efficiently use.

The post How to Use Relativity aiR Custom Analysis Correctly (and Get the Most Out of It) appeared first on Percipient – Legal Services Powered by Technology.