JSON-LD — the foundation for rich snippets and AI understanding
JSON-LD stands for JSON for Linking Data and has been a W3C Recommendation since 2014, updated with version 1.1 in 2020. The format embeds structured data directly in a page's HTML source — via a <script type="application/ld+json"> tag that remains invisible to visitors but is read by search engines and AI crawlers.
Google recommends JSON-LD as the preferred format for Structured Data. Approximately 90% of websites with structured data use JSON-LD (W3Techs). It forms the basis for rich snippets in search results — star ratings, FAQ dropdowns, breadcrumbs, product prices and event dates.
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is JSON-LD?",
"acceptedAnswer": {
"@type": "Answer",
"text": "JSON-LD is a W3C standard..."
}
}
]
}The most important Schema.org types for business websites are Organization, WebSite, FAQPage, Product, BreadcrumbList and LocalBusiness. Each type has required fields — if a FAQPage is missing its mainEntity array, Google ignores the markup entirely. XICTRAQ automatically validates these required fields on every compliance scan and reports missing or incorrect Schema.org blocks.
JSONL — one JSON object per line for large datasets
JSONL (also NDJSON — Newline Delimited JSON) is a data format where each line contains a standalone, valid JSON object. No commas between lines, no array brackets — just a newline character. This sounds simple but offers decisive advantages over regular JSON.
{"url":"example.com","is_up":true,"status":200,"response_ms":142,"checked_at":"2026-05-15T08:00:00Z"}
{"url":"example.com","is_up":true,"status":200,"response_ms":138,"checked_at":"2026-05-15T08:05:00Z"}
{"url":"example.com","is_up":false,"status":503,"response_ms":5001,"checked_at":"2026-05-15T08:10:00Z"}- Streaming-capable: Data can be processed line by line without loading the entire file into memory
- Append-friendly: New data is simply added as a new line — no need to re-parse the entire file
- Pipeline-compatible: Each line can be individually filtered through
grep,jqor Python scripts - Error-resilient: A malformed JSON object on line 500 does not prevent parsing the remaining 10,000 lines
Since OpenAPI 3.2 (released 2025), JSONL is officially recognized as a streaming media type — APIs can now use application/jsonl as Content-Type and define schemas for individual stream elements (OpenAPI Initiative).
Key differences at a glance
| Property | JSON-LD | JSONL |
|---|---|---|
| Purpose | Structured web data / SEO | Bulk data processing / export |
| Standardization | W3C Recommendation (2020) | De facto standard (OpenAPI 3.2) |
| Embedding | In website HTML | As file or API response |
| Target audience | Google, Bing, AI crawlers | Developers, BI tools, ML pipelines |
| SEO relevance | Direct (rich snippets) | None |
| Typical volume | 1-5 KB per page | Megabytes to gigabytes |
| Validation | Schema.org required fields | JSON syntax per line |
JSON-LD for SEO — why correct markup matters
Incorrect JSON-LD causes double damage: Google ignores the markup, and the expected rich snippets never appear. Common errors include missing required fields (name for Organization, mainEntity for FAQPage), duplicate JSON-LD blocks from faulty hydration in single-page apps, and outdated Schema.org types that Google no longer supports.
An analysis of 40 million websites shows that approximately 33% of all JSON-LD implementations contain at least one validation error (Schema App). For SMBs, this means: if you don't regularly validate your markup, you're giving away search visibility.
XICTRAQ validates Schema.org blocks on every compliance scan: Are required fields present? Do the @type declarations match? Are there duplicate blocks? Results feed directly into the compliance score.
JSONL in practice — who uses the format today
JSONL has established itself as the standard format in three areas that are increasingly relevant for website operators:
OpenAI, Anthropic and Google use JSONL as the input format for fine-tuning and batch APIs. Training data is uploaded as JSONL files with one example per line.
Data warehouses and BI tools import JSONL for streaming ingestion. Microsoft Fabric, BigQuery and Snowflake support JSONL natively.
Monitoring data — uptime checks, response times, security scans — are ideal for JSONL export: time-series based, uniformly structured, large volumes.
Export monitoring data as JSONL — use cases
For website operators managing multiple projects, agencies or companies with their own data infrastructure, machine-readable exports are essential. CSV is widespread, but JSONL offers advantages with nested data structures — a scan result with security headers, SSL details and performance metrics doesn't fit cleanly into a flat CSV table.
- Uptime analysis: Export response times and outages as JSONL, import into your own dashboard or BI tool
- Security audit documentation: Archive scan results as JSONL files for compliance evidence and audits
- Alert historization: Use all triggered alerts with timestamps, types and resolution times for SLA reports
- Agency reporting: Export client data collectively and feed into proprietary reporting tools
- AI-powered analysis: Use monitoring data as JSONL input for custom ML models or LLM analyses
# Analytics data for the last 30 days as JSONL
curl -H "Authorization: Bearer $TOKEN" \
"https://api.xictraq.com/api/websites/42/export.jsonl?report=pages&from=2026-04-15&to=2026-05-15"
# Export uptime checks
curl -H "Authorization: Bearer $TOKEN" \
"https://api.xictraq.com/api/websites/42/export.jsonl?report=uptime"
# Filter with jq: only outages
curl -s -H "Authorization: Bearer $TOKEN" \
"https://api.xictraq.com/api/websites/42/export.jsonl?report=uptime" \
| jq 'select(.is_up == false)'Using JSON-LD and JSONL together
The two formats are not mutually exclusive — they complement each other. JSON-LD ensures search engines and AI systems understand your website. JSONL ensures you can transfer your monitoring data into your own systems. A well-thought-out web strategy uses both.
- Embed JSON-LD: Organization, FAQPage, BreadcrumbList and other relevant types on every page — automated through your CMS or static site generator
- Monitor JSON-LD: Regular validation to ensure required fields are present and Google accepts the markup — XICTRAQ checks this on every scan
- Use JSONL export: Periodically export monitoring data and feed into your own dashboards, BI tools or archive systems
- Keep data machine-readable: Whether for search engines (JSON-LD) or internal analysis (JSONL) — structured data is the foundation for automation
llms.txt and other AI discovery formats compared
Beyond JSON-LD and JSONL, other formats are becoming relevant for AI visibility. llms.txt is a proposal by Answer.AI (version 1.7.0, as of 2026) that provides LLM crawlers with a structured overview of a site's content in Markdown format. Google has confirmed that AI Overviews do not use llms.txt — the file primarily targets ChatGPT and other AI assistants.
| Format | Purpose | Standardization |
|---|---|---|
| JSON-LD | Structured data for search engines | W3C Recommendation |
| JSONL | Bulk data export and ML pipelines | OpenAPI 3.2 |
| llms.txt | AI crawler overview in Markdown | Community proposal (v1.7.0) |
| robots.txt | Crawler control | De facto / RFC 9309 |
| sitemap.xml | URL directory for search engines | sitemaps.org |
For maximum visibility, a combination is recommended: robots.txt for crawler control, sitemap.xml for URL discovery, JSON-LD for structured content and llms.txt for AI assistants. JSONL serves not for discovery but for data export — making it part of the internal toolchain, not the public website infrastructure.
Common JSON-LD mistakes — and how to avoid them
- Duplicate blocks: Single-page apps (React, Svelte, Vue) can duplicate JSON-LD during hydration — a MutationObserver or server-side rendering solves the problem
- Missing required fields:
FAQPagewithoutmainEntity,Organizationwithoutname,Productwithoutoffers— Google ignores the entire markup - Outdated types: Schema.org evolves.
WebSitehas neededpotentialActionfor the sitelinks search box since 2024 - Invalid JSON: A forgotten comma or missing bracket makes the entire block unreadable
- Inconsistent data: If the JSON-LD price doesn't match the price visible on the page, Google may penalize the page
JSONL processing best practices
When working with JSONL files, a few ground rules prevent data loss and parsing errors:
- UTF-8 without BOM: JSONL files should always be encoded in UTF-8, without byte order mark
- No pretty-printing: Each JSON object must fit on a single line — line breaks within an object break the format
- Validate line by line: Use
jq -c '.' < file.jsonlto check each line for valid JSON - Stream large files: Never load JSONL files entirely into memory — read line by line with a stream parser
- Use compression:
.jsonl.gztypically saves 70-80% storage space for monitoring time series
Monitoring structured data pays off
JSON-LD and JSONL serve different needs, but both are relevant for professional website management. JSON-LD is essential for any website that wants search engine visibility — and regular validation ensures the markup actually works. JSONL becomes important when monitoring data needs further processing: for custom dashboards, SLA reports, compliance documentation or AI-powered analyses.
XICTRAQ unites both worlds: Automatic Schema.org validation on every scan checks your JSON-LD blocks for correctness. The JSONL data export delivers analytics, uptime and alert data in a format that fits directly into your data pipeline — without manual conversion.
What is the difference between JSON-LD and JSONL?
Does my website need a JSONL file?
Is JSON-LD still relevant for SEO?
Can I export monitoring data as JSONL?
Which tools process JSONL?
How do I check if my JSON-LD is correct?
This article is based on data from: (Google), (Microsoft), (W3Techs).