
Twilio Sendgrid Engagement Quality
- 102 installs
- 26 repo stars
- Updated July 29, 2026
- twilio/ai
How to retrieve, interpret, and act on SendGrid Engagement Quality scores to optimize email deliverability and sender reputation
About
SendGrid Engagement Quality (SEQ) scores measure email program health across five dimensions: engagement recency, open rate, bounce classification, bounce rate, and spam rate. Each metric ranges 1-5, with higher scores correlating to better inbox placement. This skill covers all SEQ API endpoints, eligibility requirements (Pro/Premier plan, open tracking enabled, 1000+ sends/30 days), interpreting the five metrics, and actionable improvement strategies. Use SEQ diagnostically when troubleshooting deliverability problems or monitoring sender reputation. The overall score is not a simple metric average; individual metric weights remain opaque.
- Five-metric scoring system (engagement_recency, open_rate, bounce_classification, bounce_rate, spam_rate)
- Two API endpoints: date-range scores and paginated subuser scores
- Asynchronous score calculation; 202 responses indicate scores not yet ready
- Eligibility gatekeeping: Pro/Premier plan, open tracking required, 1000+ messages/30 days
- Opaque weighting formula; single low metric can significantly drag overall score
Twilio Sendgrid Engagement Quality by the numbers
- 102 all-time installs (skills.sh)
- +6 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #2,990 of 4,347 Backend & APIs skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/twilio/ai --skill twilio-sendgrid-engagement-qualityAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 102 |
|---|---|
| repo stars | ★ 26 |
| Last updated | July 29, 2026 |
| Repository | twilio/ai ↗ |
What it does
Monitor email deliverability health via SendGrid Engagement Quality scores and diagnose sender reputation issues
Who is it for?
Backend developers and email operations engineers managing high-volume SendGrid accounts requiring ongoing deliverability diagnostics
Skip if: Free/Essentials plan users; accounts without open tracking; low-volume senders (<1000 messages/30 days); real-time score queries
When should I use this skill?
Investigating declining inbox placement rates, monitoring sender reputation post-IP migration, preparing re-engagement campaigns, validating list hygiene improvements
What you get
Diagnose email program health across five dimensions, identify bottlenecks (bounce rate, spam rate, low recency), and execute targeted remediation (list cleanup, IP warming, subject line optimization)
Files
Overview
SendGrid Engagement Quality (SEQ) scores measure how "wanted" your email is by recipients. Higher scores (1-5 scale) correlate with better inbox placement. SEQ is a diagnostic tool — it tells you where your email program is healthy and where it needs improvement.
Key insight: SEQ scores are correlated with deliverability. A higher score means more emails land in inboxes, not spam folders.
---
Eligibility Requirements
Your account must meet ALL conditions to receive scores: 1. Pro or Premier Email API plan — SEQ is not available on Free or Essentials plans 2. Open tracking enabled in SendGrid settings 3. Minimum 1,000 messages sent in the previous 30 days
If not eligible, the score and metrics fields are omitted from API responses entirely.
---
The 5 Metrics
All scores range from 1 (poor) to 5 (excellent).
| Metric | What it measures | How to improve |
|---|---|---|
| engagement_recency | Are you sending to an engaged audience? Based on how regularly messages are opened and clicked. | Remove inactive subscribers. Implement re-engagement campaigns before pruning. |
| open_rate | Degree to which your audience opens your messages. | Improve subject lines. Segment audiences by engagement level. |
| bounce_classification | Rejection by mailbox providers due to reputation or spam-like content. | Fix content triggering spam filters. Warm IPs properly. Monitor domain reputation. |
| bounce_rate | Are you sending to addresses that don't exist? Based on permanent bounces to invalid mailboxes. | Implement double opt-in. Clean lists quarterly. Use Email Validation API before sending. |
| spam_rate | Are recipients marking your email as spam? Based on recipients who open then report spam. | Only send to opted-in recipients. Make unsubscribe easy. Match content to expectations set at signup. |
Note: The overall score is NOT a simple average of the 5 metrics — the weighting formula is opaque. A single low metric (e.g., spam_rate = 1) can drag the overall score significantly.
---
API Endpoints
Get Your Scores (Date Range)
GET /v3/engagementquality/scores
| Parameter | Required | Description |
|---|---|---|
from | Yes | Start date (YYYY-MM-DD, UTC) |
to | Yes | End date (YYYY-MM-DD, UTC) |
Python
import os, requests
headers = {"Authorization": f"Bearer {os.environ['SENDGRID_API_KEY']}"}
response = requests.get(
"https://api.sendgrid.com/v3/engagementquality/scores",
params={"from": "2026-04-01", "to": "2026-04-23"},
headers=headers
)
if response.status_code == 200:
for entry in response.json()["result"]:
print(f"Date: {entry['date']}, Score: {entry.get('score', 'N/A')}")
metrics = entry.get("metrics", {})
for metric, value in metrics.items():
print(f" {metric}: {value}")
elif response.status_code == 202:
print("Scores not yet calculated — try again later")Get Subuser Scores (Single Date)
GET /v3/engagementquality/subusers/scores
| Parameter | Required | Description |
|---|---|---|
date | Yes | Date (YYYY-MM-DD, UTC) |
limit | No | Results per page (default 1000, max 1000) |
after_key | No | Pagination cursor |
Returns paginated results with _metadata.next_params.after_key for pagination.
---
Response Patterns
200 OK — Scores available:
{
"result": [{
"user_id": "12345",
"username": "myaccount",
"date": "2026-04-22",
"score": 4,
"metrics": {
"engagement_recency": 4,
"open_rate": 5,
"bounce_classification": 3,
"bounce_rate": 4,
"spam_rate": 5
}
}]
}202 Accepted — Scores are calculated asynchronously. Not yet available for the requested date. Retry later.
Score or metrics omitted — Account/subuser is not eligible (open tracking off or <1,000 sends in 30 days).
---
CANNOT
- Cannot get scores without open tracking enabled — This is a hard prerequisite. No tracking = no score.
- Cannot get scores with fewer than 1,000 messages in 30 days — Low-volume senders are ineligible.
- Cannot query more than 90 days in the past — Date range is limited to the last 90 days.
- Cannot get real-time scores — Scores are calculated asynchronously (daily). A
202response means "not ready yet." - Cannot determine the exact weighting formula — The overall score is not a simple average. Individual metric weights are not published.
- Email Validation API is a separate paid feature — Referenced in bounce_rate improvement guidance, but requires Pro or Premier plan. Not included in base plan.
- Subuser endpoint accepts only a single date — Not a date range. Query one day at a time.
---
Next Steps
- Improve bounce rate:
twilio-sendgrid-suppressions - Track delivery events:
twilio-sendgrid-webhooks - Account setup:
twilio-sendgrid-account-setup
interface:
display_name: "SendGrid Engagement Quality"
short_description: "Monitor email program health with SendGrid Engagement Quality (SEQ) scores. Covers the 5 scoring metrics and interpreting scores for deliverability improvement."
icon_small: "./assets/icon-small.png"
icon_large: "./assets/icon-large.png"
brand_color: "#EF223A"
default_prompt: "How do I check and improve my SendGrid sender reputation?"
policy:
allow_implicit_invocation: true
Related skills
FAQ
What does a low engagement_recency score mean?
Recipients are not consistently opening or clicking your emails. Implement re-engagement campaigns targeting inactive subscribers before removing them from lists entirely.
Why did I get a 202 Accepted response?
SEQ scores are calculated asynchronously daily. A 202 means scores for your requested date range are not yet ready. Retry the request after a delay.
Can I improve my overall score by fixing one low metric?
Individual metric improvements help, but the overall score uses an opaque weighting formula. A single metric at 1 can significantly drag the overall score; focus on improving all five metrics holistically.