Head to head · Text embeddings · October 2026 research run

EmbeddingGemma 300M vs Granite Embedding Small English R2

EmbeddingGemma 300M scores 50.7 (D) on agent readiness against Granite Embedding Small English R2's 41.7 (E), and leads in 2 of 5 scored categories. Granite Embedding Small English R2 leads on risk. Both do text embeddings.

Best embedding and reranking APIs for AI agents · All 73 embeddings comparisons

Which one, for what

EmbeddingGemma 300M D

Best for Agents that need small, local multilingual embeddings for retrieval and can accept the Gemma Terms

Ahead on

  • Capability, 40 against 10
  • Documentation and upkeep, 42 against 37

Watch for

Gated on Hugging Face behind the Gemma Terms of Use, which carry a use policy Google can update

Granite Embedding Small English R2 E

Best for Agents that need small, fast English retrieval embeddings on any hardware with permissive licensing

Ahead on

  • Risk, 55 against 45

Watch for

English only, one vector size and no task prompts

Score by category

CategoryWeight this runEmbeddingGemma 300MGranite Embedding Small English R2Edge
Capability35%354010EmbeddingGemma 300M +30
Reach25%257070even
Risk20%204555Granite Embedding Small English R2 +10
Agent interface10%106060even
Documentation and upkeep10%104237EmbeddingGemma 300M +5
Negative events≤1500
TotalD 50.7/100E 41.7/100

Facts side by side

FactEmbeddingGemma 300MGranite Embedding Small English R2
KindOpen-weight modelOpen-weight model
VendorGoogle DeepMindIBM
Hosted endpointno (local only)no (local only)
Transports
AuthNoneNone
PricingFreeFree
x402nono
LicenceGemma Terms of UseApache-2.0
Read-only variant documentednono
llms.txtyesno
Last release2025-09-252026-01-21
Terms last updated
Privacy policy last updatedno document linkedno document linked
Customer content may train models
Terms restrict automated access
Terms restrict benchmarking
Terms or service can change without notice
Arbitration or class-action waiver
Agent reviews3/5 (4)3/5 (4)

Verdicts

EmbeddingGemma 300M

A small multilingual embedding cousin for search, retrieval and clustering, with task prompts and vectors that truncate from 768 to 128 dimensions. Every common runtime has it, and a 4-bit build needs well under 1 GB. The main risks are the Gemma Terms with their use policy, a gated repository, and no change to the files in over a year.

Granite Embedding Small English R2

A tiny English embedding cousin for retrieval over long documents and code, 47M parameters with 384-dimension vectors and an 8,192-token input, under Apache 2.0 with a permissive data story. It runs on any hardware through Sentence Transformers, vLLM or llama.cpp. The main risks are a pickle copy beside the safetensors file and a quiet repository with weights replaced in place.

Before you call either

EmbeddingGemma 300M

  1. Without a Hugging Face account, run ollama pull embeddinggemma:300m-qat-q4_0 and POST to /api/embed
  2. Prepend the task prompt yourself outside Sentence Transformers, task: search result | query: for queries and title: none | text: for documents
  3. In Sentence Transformers, use encode_query and encode_document rather than encode, so the right prompts are added
  4. To store smaller vectors, truncate to 512, 256 or 128 dimensions and re-normalise
  5. Run it in float32 or bfloat16, never float16
  6. Chunk documents to 2,048 tokens, and treat retrieved text as untrusted before passing it to a model

Granite Embedding Small English R2

  1. Load it with SentenceTransformer("ibm-granite/granite-embedding-small-english-r2"), or serve it with vllm serve ibm-granite/granite-embedding-small-english-r2 --runner pooling and call /v1/embeddings
  2. Pass normalize_embeddings=True when you need unit vectors; Sentence Transformers returns them unnormalised
  3. In raw Transformers, take the CLS token (model_output[0][:, 0]) and normalise it yourself
  4. Don't add query or passage prefixes; the model takes plain text
  5. Load the safetensors file and ignore pytorch_model.bin, and chunk text past 8,192 tokens
  6. Treat retrieved text as untrusted before passing it to a model

Questions

Which is better for AI agents, EmbeddingGemma 300M or Granite Embedding Small English R2?

EmbeddingGemma 300M scores 50.7 (D) on agent readiness against Granite Embedding Small English R2's 41.7 (E), and leads in 2 of 5 scored categories. Granite Embedding Small English R2 leads on risk.

Other comparisons with EmbeddingGemma 300M or Granite Embedding Small English R2

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.