Skip to content
https://cpj.org

Content

· 5 checks — Internal links, mixed-content guards, Open Graph previews, and structured data rolled into one auditable list.
SCORE
96
GRADE
A
FIX
0
REVIEW
1
PASS
4
INFO
0
Checks
5
4 PASS 1 REVIEW
C
Brand Presence
Action
Site-name consistency, favicon, social image, meta tags, schema, and contact signals
REVIEW

Brand Presence

Your brand name differs across channels — visitors see inconsistent identity.

C

64/100

Site name appears as

Page titleFilter Icon
og:site_nameCommittee to Protect Journalists
twitter:site@pressfreedom
Organization.name

Inconsistent — names differ across channels

Brand assets

Favicon

15/15

covers multiple sizes + apple-touch-icon

Social share image

14/20

og:image set; twitter:image missing

Meta completeness

20/20

Organization schema

0/15

Contact info discoverable

10/10

contact page + mailto link

Findings

  • Brand name differs across channels — users see inconsistent identity
  • Add twitter:image — Twitter falls back to og:image only when it's larger than 300×157
  • No Organization schema — Google can't render your logo in the knowledge panel

How consistently your brand appears across channels — shared link previews, structured data, favicon, contact info.

A+
Mixed Content
No mixed content detected — all resources use HTTPS.
PASS
No mixed content detected — all resources use HTTPS.
Info::
No mixed content detected — all resources use HTTPS
A
Open Graph
Open Graph tags are well configured for social sharing.
PASS
Open Graph tags are well configured for social sharing.
Critical::
og:image is not reachable
The og:image URL could not be fetched. Social platforms won't be able to display it.
Got: https://cpj.org/wp-content/uploads/2020/05/cpj-logo-1.png
Info::
og:title is long (67 characters)
Titles over 60 characters may be truncated in social sharing previews.
Got: 67 chars Expected: 25–60 chars
Info::
og:description is short (48 characters)
Ideal length is 55–200 characters for social sharing previews.
Got: 48 chars Expected: 55–200 chars
URL: https://cpj.org/wp-content/uploads/2020/05/cpj-logo-1.png

The og:image URL could not be fetched. Social platforms won't be able to display it.

Why this matters

An unreachable og:image URL (404, DNS fail, slow timeout) means social platforms cache the failure and serve no image for hours.

Learn more

Social platforms (Facebook, Twitter) cache OG metadata aggressively — including failed image fetches. A momentarily-broken og:image can leave your shares imageless for hours. Test og:image URLs in Facebook's Sharing Debugger to force re-cache after fixing.

Source: Open Graph Protocol / Facebook Sharing Debugger

URL: 67 chars

Titles over 60 characters may be truncated in social sharing previews.

Expected: 25–60 chars
Why this matters

og:title borderline-too-long — Facebook/LinkedIn may truncate. Aim for ~60-70 characters max.

Source: Open Graph Protocol

URL: 48 chars

Ideal length is 55–200 characters for social sharing previews.

Expected: 55–200 chars
Why this matters

og:description very short — provides little context in social cards.

Source: Open Graph Protocol

Preview

cpj.org

Committee to Protect Journalists – Defending Journalists Worldwide.

Latest press freedom news from around the globe.

Preview quality · Twitter/X A · 85/100
  • twitter:card — summary_large_image
  • twitter:title — falling back from og:title
  • twitter:description — falling back from og:description
  • twitter:image — falling back from og:image

CPJ.ORG

Committee to Protect Journalists – Defending Journalists Worldwide.

Latest press freedom news from around the globe.

Preview quality · Facebook A+ · 95/100

Title will be truncated (69 chars / 60 max)

  • og:title — Committee to Protect Journalists – Defending Journalists Worldwide.
  • og:description — Latest press freedom news from around the globe.
  • og:image — https://cpj.org/wp-content/uploads/2020/05/cpj-logo-1.png
  • og:type — website
  • og:url — https://cpj.org/
  • og:site_name — Committee to Protect Journalists
  • Title will be truncated on Facebook (69 chars, max 60)

    → Shorten og:title to ≤60 characters

  • og:image is below recommended size (500×375)

    → Upload an image ≥1200×630 for the large preview card

Committee to Protect Journalists – Defending Journalists Worldwide.

cpj.org

Preview quality · LinkedIn A+ · 100/100
  • og:title — Committee to Protect Journalists – Defending Journalists Worldwide.
  • og:description — Latest press freedom news from around the globe.
  • og:image — https://cpj.org/wp-content/uploads/2020/05/cpj-logo-1.png

cpj.org

Committee to Protect Journalists – Defending Journalists Worldwide.

Latest press freedom news from around the globe.

Preview quality · Slack A+ · 100/100
  • og:title — Committee to Protect Journalists – Defending Journalists Worldwide.
  • og:description — Latest press freedom news from around the globe.
  • og:image — https://cpj.org/wp-content/uploads/2020/05/cpj-logo-1.png

Social preview quality

Averaged across Twitter/X, Facebook, LinkedIn, and Slack.

A+ · 95/100
FieldTwitter/XFacebookLinkedInSlack
og:title
og:description
og:image
og:type
og:url
og:site_name
twitter:card
twitter:title
twitter:description
twitter:image
A+
Structured Data
1 JSON-LD block(s) found — structured data is well configured.
PASS
1 JSON-LD block(s) found — structured data is well configured.
Info::
Custom type "CollectionPage" — unable to validate specific properties

JSON-LD Blocks

Block 1 : CollectionPage
2 properties Valid
{
  "@context": "https:\/\/schema.org",
  "@graph": [
    {
      "@type": "CollectionPage",
      "@id": "https:\/\/cpj.org\/",
      "url": "https:\/\/cpj.org\/",
      "name": "Committee to Protect Journalists – Defending Journalists Worldwide. - Committee to Protect Journalists",
      "isPartOf": {
        "@id": "https:\/\/cpj.org\/#website"
      },
      "about": {
        "@id": "https:\/\/cpj.org\/#organization"
      },
      "description": "Latest press freedom news from around the globe.",
      "breadcrumb": {
        "@id": "https:\/\/cpj.org\/#breadcrumb"
      },
      "inLanguage": "en-US"
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https:\/\/cpj.org\/#breadcrumb",
      "itemListElement": []
    },
    {
      "@type": "WebSite",
      "@id": "https:\/\/cpj.org\/#website",
      "url": "https:\/\/cpj.org\/",
      "name": "Committee to Protect Journalists",
      "description": "Defending Journalists Worldwide.",
      "publisher": {
        "@id": "https:\/\/cpj.org\/#organization"
      },
      "potentialAction": [
        {
          "@type": "SearchAction",
          "target": {
            "@type": "EntryPoint",
            "urlTemplate": "https:\/\/cpj.org\/?s={search_term_string}"
          },
          "query-input": {
            "@type": "PropertyValueSpecification",
            "valueRequired": true,
            "valueName": "search_term_string"
          }
        }
      ],
      "inLanguage": "en-US"
    },
    {
      "@type": "Organization",
      "@id": "https:\/\/cpj.org\/#organization",
      "name": "Committee to Protect Journalists",
      "url": "https:\/\/cpj.org\/",
      "logo": {
        "@type": "ImageObject",
        "inLanguage": "en-US",
        "@id": "https:\/\/cpj.org\/#\/schema\/logo\/image\/",
        "url": "https:\/\/cpj.org\/wp-content\/uploads\/2020\/05\/cpj-logo-1.png",
        "contentUrl": "https:\/\/cpj.org\/wp-content\/uploads\/2020\/05\/cpj-logo-1.png",
        "width": 500,
        "height": 375,
        "caption": "Committee to Protect Journalists"
      },
      "image": {
        "@id": "https:\/\/cpj.org\/#\/schema\/logo\/image\/"
      },
      "sameAs": [
        "https:\/\/www.facebook.com\/committeetoprotectjournalists\/",
        "https:\/\/x.com\/pressfreedom",
        "https:\/\/www.instagram.com\/committeetoprotectjournalists\/?hl=en",
        "https:\/\/www.linkedin.com\/company\/cpj\/",
        "https:\/\/www.youtube.com\/channel\/UCJ6Fa7MQH9-3yBFwYUZRJMQ",
        "https:\/\/en.wikipedia.org\/wiki\/Committee_to_Protect_Journalists"
      ]
    }
  ]
}
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback