Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: Facets 3.0.6 Minor update available for module facets (3.0.6). Release: Facets 3.0.5 Minor update available for module facets (3.0.5). Release: Flag 5.1.0 Minor update available for module flag (5.1.0). Release: Random Name 1.2.3 Minor update available for module random_name_chooser (1.2.3). Release: Text with summary 1.0.0 Initial release available for module text_with_summary (1.0.0)! Release: Ágora Transparency Theme 1.0.7 Minor update available for theme agora_theme (1.0.7). Release: Automated Revision Log 1.1.3 Minor update available for module ai_revision_log (1.1.3). Release: Views HTTP Client 1.0.4 Minor update available for module views_http_client (1.0.4). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Module Revived: ЮKassa (YooMoney) для Drupal v7 2.6.1 Module yoomoney_api updated after 7 months of inactivity (2.6.1).

Analyze

141 sites Security covered Drupal 10–11

Part of the Analyze ecosystem · 11 projects

View on drupal.org

Analyze provides a single tab on content pages to display various performance metrics, including SEO data, readability scores, AI insights, link health, and traffic statistics. It consolidates information typically scattered across multiple modules into a consistent and actionable interface for content editors.

One Tab to Understand All Your Content

Content editors shouldn’t need five different modules with five different UIs to understand how their content is performing. Analyze puts SEO data, readability scores, AI insights, link health, and traffic stats in a single tab: consistent, scannable, and actionable.

You need Analyze if

  • Your content tools are scattered across different modules with inconsistent interfaces
  • Editors waste time switching between tabs and admin pages to understand content performance
  • You want a single entry point where all content insights live, from word count to AI analysis to search rankings
  • You're building custom analysis tools and need a framework that handles the UI so you can focus on the data

How It Works

Analyze adds an "Analyze" tab to every content entity. Enable the analysis plugins you want per content type, and editors immediately see summary gauges and tables, with full reports one click deeper. No custom theme work, no per-module configuration UIs to learn.

What Plugs Into It

Modules marked with * ship inside the Analyze project Module What It Shows Key Metrics Basic Content Info* Fundamental content stats Word count, Image count Node Statistics* Traffic from Drupal's statistics module Total views, Today's views Google Analytics* GA data per page Page views, Views per user, Bounce rate Search Console Google Search performance per page Clicks, Impressions, CTR, Position PostHog Analytics Product analytics per page Pageviews, Visitors, Bounce rate, Conversions Broken Links Link health for every page Healthy %, broken count, status codes AI Brand Voice Brand alignment scoring Voice alignment (-1.0 to +1.0) AI Sentiments Multi-dimensional content tone Trust, Objectivity, Audience, Reading level AI Marketing Audit Content marketing effectiveness Usability, Actionability, Business value AI Security Audit Sensitive data leak detection PII risk, Credentials exposure SEO Analysis Traditional SEO scoring 12 checks: title, meta, headings, alt text, links, Schema.org AI Optimization Analysis AI answer engine readiness 8 checks: headings, JSON-LD, semantic HTML, FAQ patterns

Getting Started

  1. Enable the Analyze module and any analysis submodules you want
  2. Go to Configuration > Content > Analyze Settings and toggle which analyzers run on which content types
  3. Open any content entity and click the Analyze tab. Your data is there

Drush CLI & AI Agent Support

  • Centralized Batch Processing: Run any combination of analyzers across all content from the admin UI or drush analyze:batch. Filter by analyzer, content type, and entity count.
  • AI Agent Integration: Supports the Agent Skills standard for AI coding assistants (Claude Code, Codex, Gemini CLI, Copilot, Cursor). Run drush analyze:setup-ai to install skill files.

AI Coding Assistant Integration

The Analyze module includes a built-in Agent Skills file that teaches AI coding assistants how to run content analysis through natural language. Run drush analyze:setup-ai to enable, then ask naturally:

  • "Run sentiment analysis on all articles"
  • "Analyze brand voice consistency across the site"
  • "Check all pages for broken links"
  • "List available analyzers and which content types they cover"
  • "Re-analyze the last 50 published nodes with all analyzers"

Compatible with Claude Code, Codex CLI, Gemini CLI, GitHub Copilot, Cursor, and other tools supporting the standard.

For Developers: Build Your Own Analyzer

Create a plugin in src/Plugin/Analyze/, extend AnalyzePluginBase, implement renderSummary() and renderFullReport(). The framework handles routing, tabs, access control, and per-content-type configuration. See the included example plugin for a working reference.

Two display components are available: analyze_gauge for spectrum-based scores and analyze_table for key-value metrics.

Analyze is included in DXPR CMS, a Drupal distribution that ships the full Analyze suite alongside DXPR Builder and DXPR Theme so content teams can start auditing content quality out of the box.

FAQ

How many analyzers can I enable at once?

All of them. Each analyzer can be toggled independently per content type on the settings page, so you can enable only the ones you need or turn them all on. The Analyze tab groups every enabled analyzer's output into a single summary view with gauges and tables, and full reports are one click deeper.

Do all analyzers require an AI provider?

No. Several analyzers are fully deterministic: Basic Content Info (word count, image count), Node Statistics, Google Analytics, Search Console, PostHog Analytics, Broken Links, and SEO Analysis all run without any AI provider. Only the AI-prefixed analyzers (Brand Voice, Sentiments, Marketing Audit, Security Audit) and AI Optimization Analysis require an LLM provider via the AI module.

Does Analyze work with custom entity types?

Yes. Analyze works with any content entity type in Drupal, not just nodes. The settings page lets you configure which analyzers run on which entity types, so you can analyse taxonomy terms, media items, commerce products, or any other content entity your site defines.

Can I build my own analyzer plugin?

Yes. Create a plugin class in src/Plugin/Analyze/, extend AnalyzePluginBase, and implement renderSummary() and renderFullReport(). The framework handles routing, tab placement, access control, and per-content-type configuration automatically.

Two display components are available: analyze_gauge for spectrum-based scores and analyze_table for key-value metrics. See the included example plugin for a working reference.

How do I run analysis across all content at once?

Use the batch processing feature from the admin UI or run drush analyze:batch from the command line. You can filter by analyzer, content type, and entity count. The batch system handles rate-limit backoff for AI-powered analyzers automatically, so large sites can process thousands of entities without hitting provider limits.

Related modules

Analyze plugins: these modules register @Analyze plugins that appear in the Analyze tab:

Data sources used by bundled submodules:

  • AI - LLM provider for AI-powered analyzer plugins; the batch system handles rate-limit backoff
  • Statistics - Provides page view counts to the bundled Node Statistics analyzer
  • Google Analytics Reports - Provides per-page GA data to the bundled Google Analytics analyzer

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

5 tracked projects depend on this one

Activity

Tracked releases
11
Tracked since
Dec 2024
Latest release
6 days ago
Releases (12 mo)
8 ▲ from 3
Maintenance
Active

Release Timeline

Releases

Version Type Core Release date
1.4.0 Stable 10–11 Aug 26, 2026
1.3.0 Stable 10–11 Aug 7, 2026
1.2.1 Stable 10–11 Aug 3, 2026
1.2.0 Stable 10–11 Apr 7, 2026
1.1.1 Stable 10–11 Jan 29, 2026
1.1.0 Stable 10–11 Jan 5, 2026
1.0.1 Stable 10–11 Sep 26, 2025
1.0.0 Stable 10–11 Sep 11, 2025
1.0.0-beta4 Pre-release 10–11 Aug 5, 2025
1.0.0-beta3 Pre-release 10–11 Jan 28, 2025
1.0.0-beta1 Pre-release 10–11 Dec 10, 2024