Home › Developer Tools › Article Schema Generator

Article Schema Generator

Choose BlogPosting, Article or NewsArticle, fill in the headline, authors, dates and images, and get ready-to-paste JSON-LD. Dates get the right time zone offset, multiple authors are supported, and live checks follow Google’s article guidelines.

Last updated:

Article

All of these are Article subtypes and qualify for Google’s article markup.

Google suggests the same photo in 16:9, 4:3 and 1:1, at least 50,000 pixels (width × height).

Author(s)

Authors

Publisher

Extras

Used for hasPart so Google can tell paywalled content from cloaking.

Article JSON-LD

      
Advertisement
Advertisement

How to use the Article Schema Generator

  1. Pick the article type: BlogPosting for blog posts, NewsArticle for news, Article for anything else.
  2. Enter the headline, a short description, the article URL and one or more image URLs.
  3. Set the publish and update dates and the time zone they are in.
  4. Add each author with a link to their author page, then the publisher name and logo.
  5. Copy the JSON-LD into the article page and update dateModified whenever you change the article.

Article types compared

TypeUse it forExample
BlogPostingBlog posts and personal or company blog entries"10 Things We Learned Moving Our Office"
NewsArticleTimely news reporting"City Council Approves New Bike Lanes"
ArticleGeneral editorial content, features, guides"A Beginner’s Guide to Composting"
TechArticleTechnical documentation and how-to articles"Setting Up SSH Keys on Linux"
ScholarlyArticleAcademic papers and researchA peer-reviewed study
ReportFormal reports and white papersAn annual industry report

Recommended properties and how to fill them

PropertyFormatTip
headlineTextThe visible title of the article, concise.
imageURL or list of URLs16:9, 4:3 and 1:1 versions; at least 50,000 pixels each.
datePublishedISO 8601 date-time2026-09-02T08:00:00-04:00, with a time zone.
dateModifiedISO 8601 date-timeChange it only for meaningful updates.
authorPerson or OrganizationOne entry per author, with name and url.
publisherOrganizationName, URL and logo of the site.
mainEntityOfPageWebPageThe canonical URL of the article.

Tips for article markup

  • Show the dates on the page too. The published and updated dates in the markup should match the visible ones.
  • Don’t fake freshness. Bumping dateModified without real changes does not help and can mislead readers.
  • Link authors to profile pages. An author page with a short bio makes it clear who wrote the article.
  • Use absolute URLs for images, author pages and the logo.
  • One article per page. Mark up the main article on the page, not teasers of other posts.

Frequently asked questions

Which properties does Google need for Article markup?

Google has no required properties for Article, BlogPosting or NewsArticle. It recommends author (with author.name and author.url), datePublished, dateModified, headline and image. Adding them helps Google show the correct title, date, image and author.

Should I use Article, BlogPosting or NewsArticle?

Use BlogPosting for blog posts, NewsArticle for news reporting and Article as the general choice for other editorial content. All three are treated the same way by Google’s article features; pick the one that best describes the content.

How should dates be formatted?

Use ISO 8601 with a time and time zone, for example 2026-09-02T08:00:00-04:00. Without a time zone, search engines assume one, which can shift the displayed date. This tool adds the offset you choose.

How do I mark up several authors?

Add each author as a separate Person (or Organization) in the author list instead of putting all names in one string. Use only the name in author.name, without "By" or job titles, and link author.url to an author page or profile.

What image sizes work best for articles?

Google recommends images with at least 50,000 pixels in total (width multiplied by height), and providing several aspect ratios: 16:9, 4:3 and 1:1. The images must be crawlable and represent the article.

How do I mark up paywalled content?

Set isAccessibleForFree to false and add a hasPart WebPageElement with the CSS selector of the paywalled section. This tells Google that hidden content is a paywall rather than cloaking.

Is a headline length limit still enforced?

Older guidelines set a 110-character limit for headline. Google no longer lists a hard limit, but titles that are too long can be truncated in results, so keep the headline concise and match the visible title.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

Schema Markup Generator (JSON-LD)Create JSON-LD structured data for FAQ, Product, Article and more.Breadcrumb Schema GeneratorBuild BreadcrumbList JSON-LD plus the matching HTML breadcrumb from names and URLs.Meta Tag GeneratorCreate SEO, Open Graph and X meta tags with live previews.Headline AnalyzerScore your headline 0–100 on length, word balance, power words, sentiment and type, with tips.QR Code GeneratorMake QR codes for links, Wi-Fi, email and more.Barcode GeneratorCreate Code 128, EAN-13, UPC-A, EAN-8, Code 39 and ITF-14 barcodes as PNG or SVG.UUID GeneratorGenerate UUID v4 and v7 / GUIDs in bulk and copy or download them.Htaccess & Nginx Redirect GeneratorBuild 301 redirects for .htaccess, Nginx and Netlify or Cloudflare _redirects.Fake Data GeneratorGenerate mock data as JSON, CSV or SQL.Random String GeneratorGenerate secure random strings and tokens in bulk with any length and character set.API Key GeneratorCreate secure API keys and secrets with prefixes, checksums and SHA-256 hashes for storage.MIME Type LookupFind the MIME type for any file extension, or the extensions for a MIME type, in 400+ entries.Cron Expression GeneratorBuild crontab schedules visually, read them in plain English and see the next run times.URL Slug GeneratorTurn titles into clean, SEO-friendly URL slugs: accents, stop words, separators and bulk lines.JSON Schema GeneratorTurn sample JSON into a draft 2020-12 JSON Schema with types, required fields and formats.Gitignore GeneratorBuild a .gitignore from 50+ templates for languages, frameworks, IDEs and OS, merged and deduped.License GeneratorCreate a LICENSE file for MIT, Apache, GPL, BSD, ISC, MPL or Unlicense with your name and year.ULID GeneratorGenerate sortable ULIDs and UUID v7 in bulk, monotonic option, and decode their timestamps.Htpasswd GeneratorCreate .htpasswd entries with bcrypt, APR1-MD5 or SHA-1 for Apache and Nginx basic auth.Placeholder Image GeneratorCreate placeholder images in any size, color and text as PNG, JPG, WebP, SVG or data URI.Ads.txt GeneratorCreate or validate ads.txt and app-ads.txt files: seller lines, cert IDs and variables.Docker Run to Compose ConverterConvert docker run commands to docker-compose.yml, or a compose file back to docker run.Dockerfile GeneratorGenerate a production Dockerfile and .dockerignore for Node, Python, Go or a static nginx site.HTML Boilerplate GeneratorTick the options you need and get a clean HTML5 starter template with meta, OG tags and CSS reset.JSON to Zod SchemaInfer a Zod (or Yup) schema from sample JSON with optional, nullable and z.infer types.Linux Commands Cheat SheetSearchable Linux and bash command reference with flags explained, examples and copy buttons.LLMs.txt GeneratorBuild an llms.txt file for AI crawlers: summary and link sections, import from your sitemap.Nano ID GeneratorGenerate secure Nano IDs with custom alphabet, length and count, plus a collision calculator.Nginx Config GeneratorBuild an nginx server block: static site, SPA, reverse proxy or PHP, with SSL, gzip and redirects.OpenAPI / Swagger ViewerView OpenAPI 2/3 JSON or YAML as interactive API docs with validation and an endpoint list.package.json GeneratorFill a form and get a valid, npm-ready package.json with scripts, dependencies and checks.PKCE Code Challenge GeneratorGenerate an OAuth 2.0 PKCE code_verifier and S256 code_challenge, build auth URLs, verify pairs.README GeneratorFill in a form and get a polished README.md with badges, install, usage and license, live preview.Regex GeneratorBuild regular expressions visually from blocks or presets (email, date, phone) and test them live.Commit Message GeneratorBuild Conventional Commit messages with type, scope, body, breaking change and issue refs.Database Schema DesignerDesign tables and relationships visually, then export SQL for MySQL, PostgreSQL or SQLite.Docker Compose GeneratorBuild a docker-compose.yml with a form: services, ports, volumes, env, healthchecks and presets.Dummy File GeneratorCreate test files of an exact size in KB, MB or GB with zeros, random bytes or text.OpenAPI ValidatorValidate OpenAPI 3.0/3.1 and Swagger 2.0 specs: schema errors, broken $refs, line numbers.Pivot Table MakerBuild pivot tables from CSV or Excel by drag and drop: sum, count, average, charts, export.SQL Query BuilderBuild SELECT queries visually: joins, filters, GROUP BY, ORDER BY and LIMIT, as clean SQL.Truth Table GeneratorType a logic expression and get its full truth table, minterms and canonical DNF/CNF.TypeScript PlaygroundWrite TypeScript with live type checking, see the compiled JavaScript and run it in your browser.Event Schema GeneratorCreate Event JSON-LD with dates, venue or online location, tickets, organizer and performers.Google Search Query BuilderBuild advanced Google searches with site:, filetype:, intitle:, exact phrases and date operators.HowTo Schema GeneratorCreate HowTo JSON-LD with steps, tools, supplies, total time and cost, then copy it.Htaccess GeneratorBuild an Apache .htaccess file: HTTPS, www, gzip, caching, error pages, IP blocks, hotlinks.HTML Email Template BuilderDrag and drop blocks to build a responsive, table-based HTML email with inline styles.Organization Schema GeneratorCreate Organization JSON-LD with logo, URL, contact points, address and social profiles.PIN GeneratorGenerate random 4, 6 or 8-digit PINs that avoid sequences, repeats, dates and common PINs.Product Schema GeneratorBuild Product JSON-LD with price, availability, brand, GTIN, ratings and reviews.Question Keyword GeneratorFind the questions people ask about a topic, grouped by who, what, why, how, can and more.Recipe Schema GeneratorCreate Recipe JSON-LD with ingredients, steps, prep and cook times, nutrition and ratings.Security Headers GeneratorPick HSTS, CSP, frame, referrer and permissions options and get Apache, Nginx, Netlify or Cloudflare config.SKU GeneratorBuild consistent SKUs from brand, category, size and color, then export every variant as CSV.Typography Scale GeneratorBuild a modular type scale from a base size and ratio, then copy CSS variables or a Tailwind config.WordPress Salt GeneratorGenerate fresh WordPress security keys and salts for wp-config.php, .env or Docker in one click.ANSI Color Code GeneratorStyle terminal text with 16, 256 or RGB colors and get escape codes for bash, Python, JS and C.Apache Virtual Host GeneratorCreate an Apache VirtualHost config with SSL, redirects, reverse proxy or PHP-FPM in seconds.Bash Prompt GeneratorDrag and drop a custom PS1 prompt for bash or zsh with colors, git branch and a live preview.Changelog GeneratorTurn Conventional Commit messages into a grouped Keep a Changelog Markdown file per version.cURL Command BuilderBuild curl commands from a form: method, headers, query, JSON or form body, auth and flags.Docker Compose to KubernetesConvert docker-compose.yml into Kubernetes Deployment, Service, ConfigMap and PVC manifests.Docker Compose ValidatorCheck a docker-compose.yml for YAML errors, schema mistakes, broken references and deprecated keys.Dockerfile LinterLint a Dockerfile for best practices: pinned tags, apt cleanup, non-root USER and layer count.Dockerignore GeneratorBuild a .dockerignore from Node, Python, Go and Java templates, plus your own entries.ESLint Config GeneratorGenerate a flat eslint.config.js for JavaScript, TypeScript, React or Node with rule presets.Git Branch Name GeneratorTurn a ticket ID and title into a clean, valid git branch name like feature/PROJ-12-add-login.
See all 85 Code Generators & Builders →