> ## Documentation Index
> Fetch the complete documentation index at: https://docs.courtrules.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Same Document, Different Judge

> How the same filing gets different compliance results depending on the assigned judge

This is the core problem Court Rules solves. Two judges in the same courthouse, same district, same floor, but radically different requirements for the exact same filing.

## The scenario

You have a memorandum of law in support of a motion for summary judgment. The PDF is 31 pages total, but after stripping front matter (cover page, table of contents, table of authorities) and back matter (certificate of service), the body is 25 pages:

* **Body page count:** 25 (what courts count for limit enforcement)
* **Word count:** 7,200
* **Document type:** `brief_support`
* **Motion type:** `Rule_56`
* **District:** EDNY

<Note>
  When you use [`/classify`](/api-reference/classify) to analyze a PDF, the returned `page_count` is
  body pages, not total PDF pages. Front matter and back matter are automatically excluded. The
  `page_count_analysis` field in the response shows the full breakdown. When calling `/check`
  manually, use body page count, not the raw PDF page count.
</Note>

Let's check this document against two EDNY judges.

```mermaid theme={"theme":{"light":"github-light","dark":"github-dark"}}
flowchart TD
    doc["Same 25-page brief<br/>(31pp PDF, 6pp front/back matter)"]
    doc --> amon["Judge Amon"]
    doc --> brown["Judge Brown"]
    amon --> review["REVIEW<br/>25pp within 25pp limit"]
    brown --> fail["NON_COMPLIANT<br/>25pp exceeds 20pp limit"]
```

## Judge Amon: REVIEW (action items, no failures)

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST https://api.courtrules.app/api/v1/check \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "judge_slug": "carol-bagley-amon",
    "district_id": "edny",
    "document_scope": "brief_support",
    "motion_type": "Rule_56",
    "is_pro_se": false,
    "pmc_completed": true,
    "opposing_party_pro_se": false,
    "filing_role": "movant",
    "document": {
      "page_count": 25,
      "word_count": 7200
    }
  }'
```

Result: **REVIEW**: within page and word limits, but action items to handle.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "summary": {
    "status": "REVIEW",
    "failures": 0,
    "warnings": 0,
    "passes": 2,
    "action_items": 3
  },
  "results": [
    {
      "severity": "INFO",
      "category": "PAGE_LIMIT",
      "message": "25 pages within 25-page limit",
      "source": "EDNY LR 7.1(c)",
      "status": "PASS"
    },
    {
      "severity": "INFO",
      "category": "WORD_LIMIT",
      "message": "7,200 words within 8,750-word limit",
      "source": "EDNY LR 7.1(c)",
      "status": "PASS"
    },
    {
      "severity": "INFO",
      "category": "COURTESY_COPY",
      "message": "Courtesy copy required: tabbed binder, double-sided",
      "source": "Amon SO",
      "status": "ACTION_REQUIRED"
    },
    {
      "severity": "INFO",
      "category": "FILING_GATE",
      "message": "Must wait for full briefing before filing",
      "source": "Amon SO",
      "status": "ACTION_REQUIRED"
    },
    {
      "severity": "INFO",
      "category": "PMC",
      "message": "Pre-motion conference completed",
      "source": "Amon SO",
      "status": "PASS"
    }
  ]
}
```

Judge Amon applies the **EDNY district default of 25 pages** for support briefs (she imposes no stricter judge-specific limit). The 25 body pages are within that limit. But she requires:

* Courtesy copies in a **tabbed binder, double-sided**
* Motions must be **fully briefed before filing**
* A pre-motion conference (which we indicated was completed)

## Judge Brown: NON\_COMPLIANT (hard failure)

Same document. Same district. Different judge.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST https://api.courtrules.app/api/v1/check \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "judge_slug": "gary-r-brown",
    "district_id": "edny",
    "document_scope": "brief_support",
    "motion_type": "Rule_56",
    "is_pro_se": false,
    "pmc_completed": true,
    "opposing_party_pro_se": false,
    "filing_role": "movant",
    "document": {
      "page_count": 25,
      "word_count": 7200
    }
  }'
```

Result: **NON\_COMPLIANT**: the same document fails.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "summary": {
    "status": "NON_COMPLIANT",
    "failures": 1,
    "warnings": 0,
    "passes": 1,
    "action_items": 2
  },
  "results": [
    {
      "severity": "CRITICAL",
      "category": "PAGE_LIMIT",
      "message": "25 pages exceeds 20-page limit",
      "source": "Brown SO §2.B",
      "status": "FAIL"
    },
    {
      "severity": "INFO",
      "category": "WORD_LIMIT",
      "message": "7,200 words within 8,750-word limit",
      "source": "EDNY LR 7.1(c)",
      "status": "PASS"
    },
    {
      "severity": "INFO",
      "category": "COURTESY_COPY",
      "message": "Courtesy copy always required",
      "source": "Brown SO §1",
      "status": "ACTION_REQUIRED"
    },
    {
      "severity": "INFO",
      "category": "FILING_GATE",
      "message": "Must wait for full briefing before filing",
      "source": "Brown SO §3.B",
      "status": "ACTION_REQUIRED"
    }
  ]
}
```

Judge Brown imposes a **20-page limit** on support briefs, 5 pages below the EDNY default. Your 25-page memo is 5 pages over. The court will reject it, not on the merits, but on formatting.

## The difference

| Check           | Judge Amon                        | Judge Brown                     |
| --------------- | --------------------------------- | ------------------------------- |
| Page limit      | 25pp (district default): **PASS** | 20pp (standing order): **FAIL** |
| Courtesy copies | Tabbed binder, double-sided       | Always required                 |
| PMC             | Required (all parties)            | Required                        |
| Filing gate     | Must wait for full briefing       | Must wait for full briefing     |

Same document. Same courthouse. Opposite outcomes. Amon's limit is the EDNY default (25 pages). Brown's standing order imposes a stricter cap.

## Why this happens: three rule layers

Federal court compliance is governed by three layers of authority, each of which can impose different requirements:

1. **FRCP (Federal Rules of Civil Procedure):** National baseline. Covers captions, signatures, privacy redactions, motion content requirements. Same for every federal judge in every district. 15 rules.

2. **Local Rules:** District-wide. Formatting (font, margins, spacing), word limits, timing, and required documents. Every judge in the district shares these.

3. **Standing Orders:** Judge-specific. Each judge publishes a PDF with their personal requirements. This is where page limits, courtesy copy policies, pre-motion conference rules, and filing gates live. This is where the divergence happens.

The API checks all three layers simultaneously and tells you exactly which rule, from which layer, applies to your specific filing.

## Try it yourself

Pick any two full-coverage judges (Amon, Block, Brown) and run the same document against both. The differences are real, sourced from actual standing order PDFs, and verifiable.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
# Check available judges
curl 'https://api.courtrules.app/api/v1/judges?district_id=edny' \
  -H "Authorization: Bearer YOUR_API_KEY"

# See the rules for each judge
curl 'https://api.courtrules.app/api/v1/rules?judge_slug=carol-bagley-amon&district_id=edny' \
  -H "Authorization: Bearer YOUR_API_KEY"

curl 'https://api.courtrules.app/api/v1/rules?judge_slug=gary-r-brown&district_id=edny' \
  -H "Authorization: Bearer YOUR_API_KEY"
```
