Pinecone Upsert Failing: Batch and Size Limits

Share
Workaround available All Updated November 15, 2026Based on 2 user reportsHow we research

Quick answer

Pinecone accepts up to 1,000 vector records and 2 MB per upsert request (96 text records with integrated embedding). Split larger loads into smaller batches or use bulk import.

Most likely fix: Batch the upsert

How to fix it

Try these in order — the most common fix is first.

  1. 1. Batch the upsert

    1. Send batches of 100 to 500 records, staying under 2 MB
    2. Run a few batches in parallel, paced to avoid 429s
    Did this fix it?
  2. 2. Shrink the records

    1. Keep metadata small; store full text in your own database and keep only an ID
    2. Shorten IDs to under 512 characters
    Did this fix it?
  3. 3. Use import for big loads

    1. For very large datasets use import from object storage (up to 1 TB for on-demand indexes)
    Did this fix it?

Symptoms

Upsert returns a 400 or request-too-large style error on big batches or records with large metadata.

Why it happens

  • More than 1,000 records or over 2 MB in one request
  • More than 96 text records with integrated embedding
  • Filterable metadata over 40 KB per record
  • Record ID longer than 512 characters

This guide also covers

  • pinecone upsert batch size limit
  • pinecone upsert too large
  • pinecone metadata size limit 40kb

Still not working?

If Pinecone keeps failing, you're not alone. See every Pinecone problem users report or the alternatives people switch to.

Have an app idea? Our small team builds any software: web and mobile apps, games, desktop, AI tools. Price agreed together.

Talk to us
Fixed it? Share this guide

The same problem in other apps

All plan limits, paywalls & watermarks guides →

Other Pinecone errors