Ingestion Receipts and Skip Reports
How to read the structured feedback Coppermind provides after ingesting transcripts and documents, and how to act on skipped or failed files.
Why This Matters#
After ingesting a meeting transcript or batch of documents, the natural question is: "What actually landed?" Before receipts, the answer was a vague word count and a hope for the best. With receipts, you get a per-file breakdown of what was extracted, what was skipped, and exactly what to do about the gaps.
This is especially valuable when:
- Ingesting a folder of mixed file types from Google Drive (some will be skipped)
- Running auto-ingest from Granola and wanting to confirm coverage
- Onboarding a new client with a large document dump
What You Get After Ingestion#
Every ingestion -- whether from auto-ingest, the CLI, or pasting a transcript in chat -- returns a structured receipt. The receipt appears in the conversation as formatted markdown.
Single Transcript Receipt#
After ingesting a meeting transcript:
## Ingestion Receipt: Acme Corp
**Source:** Meeting transcript -- granola-meeting-123
**Sections processed:** 4
**Memories extracted:** 6 (5 new, 1 updated)
### Breakdown by Type
- **Decision:** 2
- **Commitment:** 1
- **Preference:** 1
- **Campaign Outcome:** 1
- **Fact:** 1
The receipt tells you at a glance:
- How many chunks the transcript was split into
- How many memories were extracted (and how many were new vs updates to existing memories)
- What types of knowledge were found
Batch Ingestion Receipt#
When ingesting multiple files (from a folder or connected source), the receipt expands to cover each file:
## Ingestion Complete: Acme Corp
**Source:** Google Drive
**Files:** 12 processed, 2 skipped, 1 failed
### Processed (12 files, 47 memories extracted)
| File | Type | Memories | Key Entities |
|------|------|----------|-------------|
| Q1 Campaign Report.gdoc | Google Doc | 8 | Sarah Chen, Q1 budget, LinkedIn campaign |
| Brand Guidelines v3.pdf | PDF | 5 | Logo usage, Pantone 2935C, Montserrat |
| ... | ... | ... | ... |
For large batches (50+ files), the per-file table is truncated after 20 rows with a summary of the rest.
Reading the Receipt Fields#
| Field | What It Means |
|---|---|
memories_new | Memories that did not match anything existing -- fresh knowledge |
memories_updated | Memories that were similar enough to an existing memory to trigger reconsolidation (update instead of duplicate) |
memories_skipped | Chunks that produced no extractable memories (small talk, logistics, content below the confidence threshold) |
by_type | Breakdown by memory type -- shows the distribution of what was found |
receipt | The formatted markdown summary for display |
Zero Memories Extracted#
When a transcript produces zero memories, the receipt explains why and the meeting is NOT marked as ingested. This means it will be retried on the next auto-ingest cycle in case the issue was transient (embedding service down, etc.).
## Ingestion Receipt: Acme Corp
**Source:** Meeting transcript -- granola-meeting-456
**Sections processed:** 3
**Memories extracted:** 0
No extractable content found. This may happen with very short meetings,
scheduling-only calls, or transcripts with heavy crosstalk.
Skip Reports with Actionable Next Steps#
When files are skipped or fail during ingestion, the receipt includes a "Next Steps for Skipped Items" section. Instead of a dead-end error message, you get specific actions grouped by remediation type.
Example Skip Report#
### Next Steps for Skipped Items
**Download and share directly** (3 files):
These files are in formats that cannot be exported as text. Download them and share in chat:
- `Q4 Deck.pptx` (PowerPoint)
- `Brand Assets.pdf` (PDF)
- `Competitor Analysis.docx` (Word doc)
**No action needed** (2 files):
- `team-photo.jpg` -- Image (not text-based)
- `old-report.gdoc` -- Already ingested March 15
Skip Reason Reference#
| Skip Reason | What to Do |
|---|---|
| Unsupported format (PDF, DOCX from Drive) | Download from Drive and share directly in chat, or drop into the client's watch folder |
| Spreadsheet (XLSX, PPTX) | Copy key data into a Google Doc first for best extraction results |
| Image file (JPG, PNG, SVG) | Images cannot be ingested as text. If it contains important info (screenshot of a strategy), describe it in chat |
| Video or audio file | Share the transcript instead. Use Granola, Otter.ai, or Fathom to generate one |
| File too large (>100K characters) | Split into sections or share the most important parts |
| Duplicate (already ingested) | No action needed. The original ingestion date is shown |
| API error (timeout, permission) | Check that the file is shared with your Google account, then retry |
| Empty file | No action needed |
Grouped Actions#
Skip reports group files by remediation type to reduce noise. If 5 files need manual download, they appear together under one heading rather than 5 separate messages. This keeps the output scannable when you are dealing with large batches.
Practical Workflow#
After Auto-Ingest (Granola)#
Auto-ingest runs automatically and processes meetings that have confident client mind matches. Check the receipt to confirm:
- The transcript was chunked correctly (sections processed > 0)
- Memories were extracted (memories_new > 0)
- The type distribution makes sense for the meeting (a strategy session should produce decisions and commitments, not just facts)
If zero memories were extracted from a meeting you know was substantive, check that the transcript quality was good (clear audio, speaker labels present).
After Bulk Onboarding#
When onboarding a new client with a folder of documents:
- Review the receipt for the total memory count across all files
- Check the skip report for files that need manual handling
- Download and share any skipped PDFs or DOCX files
- Ask "how healthy is this client's knowledge?" to see if the ingestion filled coverage gaps
Key Details#
- Receipts are conversation-only. They're shown in chat, not saved automatically. If you want a record, ask Coppermind to save it as a meeting note.
- Receipts render in both Claude Code and Claude Desktop. The markdown formatting is designed for both interfaces.
- Updated memories are NOT duplicates. When the receipt shows memories updated, it means Coppermind found a similar existing memory and merged the new information in rather than creating a duplicate.
- Skipped chunks are normal. Not every part of a transcript contains extractable knowledge. Small talk, meeting logistics, and filler content are skipped by design.
- Auto-ingest retries on zero extraction. If a meeting transcript produces zero memories, it is not marked as ingested and will be retried on the next cycle.
Ready to try this yourself?
Coppermind is free to start and runs inside Claude. Your first meeting prep will convince you.
Try Coppermind Free