Content
· 5 checks — Internal links, mixed-content guards, Open Graph previews, and structured data rolled into one auditable list.FOpen GraphActionOpen Graph tags need attention — social sharing previews may be incomplete.FIX
https://www.eib.org/photos/rs/ff58d908-cb76-4dbf-901e-5058a9854634/largeprvw/image.jpgThe og:image URL could not be fetched. Social platforms won't be able to display it.
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
The og:title tag controls the title shown in social sharing previews.
Without og:title, social shares fall back to the <title> tag — usually awkwardly truncated or branded for SEO not social.
Learn more ▾ ▴
og:title controls what appears as the headline in social-share cards (Twitter, Facebook, LinkedIn, Slack, iMessage). When omitted, platforms fall back to <title>, which is usually optimized for SEO (longer, brand-suffixed) and reads badly in social context. A 50-60-character og:title gives a clean preview.
Source: Open Graph Protocol
The og:description tag controls the description in social sharing previews.
No og:description means social cards either show no subtitle or scrape the first paragraph — usually unflattering.
Learn more ▾ ▴
Without og:description, social platforms either render no subtitle or pull whatever text appears first on the page. The first paragraph is rarely written for share-card context. A purpose-written 150-200 character og:description gives a polished card.
Source: Open Graph Protocol
The og:url tag specifies the canonical URL for the shared content.
Without og:url, social platforms infer the canonical URL — often picking a tracking-param variant that pollutes share counts.
Learn more ▾ ▴
og:url tells the social platform which URL to count this share against. Without it, platforms use the literal URL the user pasted (which may include utm_* parameters, ref codes, etc.). Setting og:url to the canonical form keeps share-count attribution clean.
Source: Open Graph Protocol
The og:type tag helps social platforms categorize the content.
Default og:type is 'website' but the right value (article, product, profile) unlocks richer metadata fields and higher engagement.
Learn more ▾ ▴
og:type controls which other og: fields a platform respects. og:type=article enables og:article:published_time, author, and section — surfaced in news cards. og:type=product enables price/availability fields surfaced by Pinterest and shopping integrations. Default 'website' silently disables those.
Source: Open Graph Protocol
The og:site_name tag displays the website name in social previews.
Without og:site_name, social cards omit the brand attribution — users see the post but not who published it.
Learn more ▾ ▴
og:site_name appears in the social card chrome (above the title in Facebook/LinkedIn previews). Without it, posts read as anonymous URLs. Set it to your brand name to get free attribution on every share.
Source: Open Graph Protocol
Without twitter:card, Twitter falls back to Open Graph tags. Adding it gives you more control.
Without twitter:card, Twitter renders posts as plain text — no preview image, no structured layout.
Learn more ▾ ▴
Twitter requires `<meta name="twitter:card" content="summary_large_image">` (or summary) to render share-cards at all. Without it, links appear as raw text and engagement plummets vs cards. Twitter also falls back to og:image if twitter:image isn't set, so configure both.
Source: Twitter Developer Platform
Preview

eib.org
No title set
No description
- twitter:card — Add <meta name="twitter:card" content="summary_large_image">
- twitter:title — falling back from <title>
- twitter:description — falling back from <meta name=description>
- twitter:image — falling back from og:image
twitter:card is missing
→ Add <meta name="twitter:card" content="summary_large_image">

EIB.ORG
No title set
No description
Description will be truncated (170 chars / 155 max)
- og:title — falling back from <title>
- og:description — falling back from <meta name=description>
- og:image — https://www.eib.org/photos/rs/ff58d908-cb76-4dbf-901e-5058a9854634/largeprvw/image.jpg
- og:type — Add og:type — Recommended — tells Facebook the content category
- og:url — Add og:url — Recommended — canonical URL for the share
- og:site_name — Add og:site_name — Recommended — site-level brand line in the preview
Description will be truncated on Facebook (170 chars, max 155)
→ Tighten og:description to ≤155 characters

No title set
eib.org
Description will be truncated (170 chars / 150 max)
- og:title — falling back from <title>
- og:description — falling back from <meta name=description>
- og:image — https://www.eib.org/photos/rs/ff58d908-cb76-4dbf-901e-5058a9854634/largeprvw/image.jpg
Description will be truncated on LinkedIn (170 chars, max 150)
→ Tighten og:description to ≤150 characters
eib.org
No title set
No description

- og:title — falling back from <title>
- og:description — falling back from <meta name=description>
- og:image — https://www.eib.org/photos/rs/ff58d908-cb76-4dbf-901e-5058a9854634/largeprvw/image.jpg
Social preview quality
Averaged across Twitter/X, Facebook, LinkedIn, and Slack.
| Field | Twitter/X | Slack | ||
|---|---|---|---|---|
| og:title | ⚠ | ⚠ | ⚠ | |
| og:description | ⚠ | ⚠ | ⚠ | |
| og:image | ||||
| og:type | ||||
| og:url | ||||
| og:site_name | ||||
| twitter:card | — | — | — | |
| twitter:title | ⚠ | — | — | — |
| twitter:description | ⚠ | — | — | — |
| twitter:image | ⚠ | — | — | — |
DBrand PresenceActionSite-name consistency, favicon, social image, meta tags, schema, and contact signalsFIX
Brand Presence
Partial brand coverage — a few channels are missing brand signals.
D
47/100
Site name appears as
| Page title | en | |
| og:site_name | — | |
| twitter:site | — | |
| Organization.name | — |
Consistent
Brand assets
Favicon
15/15covers multiple sizes + apple-touch-icon
Social share image
14/20og:image set; twitter:image missing
Meta completeness
8/20Organization schema
0/15Contact info discoverable
5/10contact page
Findings
- Missing brand name in: og:site_name, twitter:site, Organization.name
- Add twitter:image — Twitter falls back to og:image only when it's larger than 300×157
- og:title missing
- twitter:card missing
- No Organization schema — Google can't render your logo in the knowledge panel
- Only partial contact info discoverable — consider adding a dedicated contact page or mailto/tel link
How consistently your brand appears across channels — shared link previews, structured data, favicon, contact info.
BLinks200 links checked, 52 healthy, 1 brokenREVIEW
Broken Links (1)
| Status | URL | Found in | Error |
|---|---|---|---|
| ERR | https://cdn1.Readspeaker.com/script/3/webReader/r/... | <link> | Get "https://cdn1.Readspeaker.com/script... |
A+Mixed ContentNo mixed content detected — all resources use HTTPS.PASS
A+Structured Data2 JSON-LD block(s) found — structured data is well configured.PASS
JSON-LD Blocks
{
"@context": "https://schema.org",
"@type": [
"GovernmentOrganization"
],
"name": "European Investment Bank (EIB)",
"@id": "https://www.eib.org/en/about/index",
"url": "https://www.eib.org/en/index",
"logo": "https://www.eib.org/img/logos/eib-logogroup.png",
"description": "The European Investment Bank (EIB) is the long-term lending institution of the European Union owned by its Member States.",
"sameAs": [
"https://twitter.com/EIB",
"https://www.linkedin.com/company/european-investment-bank/",
"https://en.wikipedia.org/wiki/European_Investment_Bank",
"https://www.facebook.com/EuropeanInvestmentBank",
"https://www.youtube.com/EIBtheEUbank",
"https://www.instagram.com/europeaninvestmentbank/",
"https://whatsapp.com/channel/0029VaAMHR12kNFwddDgU20r"
],
"contactPoint": {
"@type": "ContactPoint",
"email": "info@eib.org",
"telephone": "+352 4379 1",
"areaServed": "EU and Global",
"availableLanguage": [
"en",
"fr",
"de",
"es",
"it",
"pt"
]
},
"address": {
"@type": "PostalAddress",
"streetAddress": "98-100, boulevard Konrad Adenauer",
"addressLocality": "Luxembourg",
"postalCode": "L-2950",
"addressCountry": "LU"
},
"knowsAbout": [
"EIB Group strategic priorities",
"Projects supported by the EIB",
"EIB products",
"Regions of activity",
"EIB stories and essays",
"EIB Group newsroom",
"Affordable and sustainable housing",
"Security and defence",
"TechEU",
"Procurement",
"Investor relations",
"Careers",
"Economic research",
"EIB publications",
"EIB Group at a glance"
]
}{
"@context": "https://schema.org",
"@type": "WebPage",
"name": "Homepage | European Investment Bank",
"description": "The European Investment Bank (EIB) is the lending arm of the European Union. We are the world’s largest multilateral lender and the biggest provider of climate finance.",
"url": "https://www.eib.org/en/index",
"publisher": {
"@id": "https://www.eib.org/en/about/index"
},
"datePublished": "2026-04-21T09:27:17Z",
"dateModified": "2026-04-21T09:27:09Z",
"inLanguage": "en-EN",
"isAccessibleForFree": true,
"potentialAction": [
{
"@type": "SearchAction",
"target": "https://www.eib.org/en/search?q={search_term_string}",
"query-input": "name=search_term_string"
}
],
"mainEntity": {
"@type": "ItemList",
"name": "services",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Projects",
"url": "https://www.eib.org/en/projects/index"
},
{
"@type": "ListItem",
"position": 2,
"name": "News",
"url": "https://www.eib.org/en/press/index"
}
]
}
}