SEO
Find shops with SEO problems you can prove in one screenshot
For SEO consultants, agencies and content teams
The problem
SEO pitches are hard to make concrete quickly. By the time you have audited a prospect manually you have spent an hour on someone who may never reply.
How the data solves it
The audit is already done for every shop. Filter for missing meta descriptions, titles outside the effective length band, absent JSON-LD, missing canonical URLs or incomplete Open Graph coverage, then lead with the specific defect.
The filter set this maps to
Every field below exists in the shop schema. This is the query, not an illustration.
- Meta desc length
- 0, or outside 120–158
- JSON-LD types
- none detected
- Canonical URL
- missing
- SEO completeness %
- < 50
Build it
Four steps to this list
Every column named here exists in the schema, and the request below runs as written.
- 1Set meta_desc_length = 0 for shops with no meta description at all.
- 2Add a text filter on jsonld_types with mode empty — no structured data detected.
- 3Add seo_completeness <= 50 to rank by severity.
- 4Export seo_title, title_length, canonical_url and h1_count as your audit evidence.
The same query through the API
POST this to /api/v1/search for a count, or /api/v1/rows for the shops themselves.
{
"filters": [
{
"kind": "numeric",
"col": "meta_desc_length",
"op": "eq",
"min": 0
},
{
"kind": "text",
"col": "jsonld_types",
"mode": "empty"
},
{
"kind": "numeric",
"col": "seo_completeness",
"op": "lte",
"max": 50
}
]
}Playbook
What to do once you have the list
A list is not a campaign. These are the three things that decide whether it converts.
The audit is already done
seo_completeness collapses eleven signals into one sortable number. Sort descending by opportunity and work down the list.
Pick one defect per email
Listing nine problems reads as a template. Naming one specific, verifiable gap reads as attention.
Re-check before you send
Every row carries fetched_at. Re-verify anything you intend to quote directly, because any shop can fix it overnight.
Outcome
What you end up with
Prospects pre-qualified by a measured SEO gap
Audit evidence available before the first email
Volume scaled to your outreach capacity, not your audit capacity
Questions
SEO: frequently asked
Which SEO fields are captured?
Title and its length, meta description and its length, canonical URL, robots directives, viewport, favicon, H1 count and first H1, JSON-LD types, and the full Open Graph set: condensed into a completeness percentage you can sort on.
Is the SEO data current?
Each row carries the timestamp it was fetched, so you can filter to recently checked shops. Re-verify anything you intend to quote directly in a pitch, as any shop can change overnight.
Which SEO defects can I actually filter on?
The measurable ones: title present and its length, meta description present and its length, canonical URL, robots directives, H1 count and the first H1, structured-data types, the full Open Graph set, favicon, and an overall completeness score. Each is a column, so a query like short title and no structured data and low completeness is one filter set rather than a crawl you have to run yourself.
Is the SEO data crawled from the live storefront?
Yes. These fields are read from the shop's own pages rather than inferred from a third-party index, which is why a missing meta description is recorded as missing rather than as unknown. It also means the data reflects the storefront at crawl time, so verify anything you intend to put in an email.
How do I turn this into a pitch rather than a list?
Lead with the single defect that is cheapest to prove and most expensive to ignore. A missing meta description on a 2,000-product catalogue is thousands of pages with no snippet control, and you can state the number. Combine the SEO completeness score with product count so the size of the problem scales with the size of the catalogue.
Start finding better e-commerce leads today
Free trial with the full dataset and every filter, and the allowance resets daily rather than expiring.
