Deep blog SEO audit
Title, meta, keywords, headings, content depth, links, images, schema, social, and technical checks for this post.
@if (! $audit || empty($audit['parameters']))
No audit yet. Click Recalculate audit to score this blog post.
@else
@php
$score = (int) ($audit['score'] ?? 0);
$grade = $audit['grade'] ?? '';
$serp = $audit['serp'] ?? ['desktop' => [], 'mobile' => []];
$priorityColors = [
'critical' => 'bg-red-100 text-red-800',
'high' => 'bg-orange-100 text-orange-800',
'medium' => 'bg-amber-100 text-amber-800',
'low' => 'bg-slate-100 text-slate-700',
];
@endphp
Overall score
{{ $score }}/100
{{ $grade }}
@if (! empty($audit['checked_at']))
Checked {{ \Illuminate\Support\Carbon::parse($audit['checked_at'])->diffForHumans() }}
@endif
@foreach (($audit['categories'] ?? []) as $cat => $stats)
{{ str_replace('_', ' ', $cat) }}
{{ $stats['score'] ?? 0 }}
{{ $stats['pass'] ?? 0 }} pass · {{ $stats['warn'] ?? 0 }} warn · {{ $stats['fail'] ?? 0 }} fail
@endforeach
@foreach (['desktop' => 'Desktop search preview', 'mobile' => 'Mobile search preview'] as $device => $labelText)
@php $preview = $serp[$device] ?? []; @endphp
{{ $labelText }}
{{ $device === 'desktop' ? '≈600px' : '≈360px' }}
{{ strtoupper(substr($preview['site_name'] ?? 'A', 0, 1)) }}
{{ $preview['site_name'] ?? config('apex.name') }}
{{ $preview['host'] ?? '' }}{{ $preview['path'] ?? '/' }}
{{ $preview['title'] ?? 'Title' }}
{{ $preview['description'] ?? '' }}
Title {{ $preview['title_chars'] ?? 0 }} chars
Desc {{ $preview['description_chars'] ?? 0 }} chars
@endforeach
Suggestions to strengthen SEO
@forelse (($audit['suggestions'] ?? []) as $suggestion)
{{ $suggestion['priority'] ?? 'medium' }}
{{ str_replace('_', ' ', $suggestion['area'] ?? '') }}
Impact {{ $suggestion['impact'] ?? 0 }}
{{ $suggestion['title'] ?? '' }}
{{ $suggestion['detail'] ?? '' }}
@empty
No suggestions — looking strong.
@endforelse
All audit parameters
@foreach ($audit['parameters'] as $param)
{{ str_replace('_', ' ', $param['category'] ?? '') }} ·
{{ str_replace('_', ' ', $param['key'] ?? '') }}
{{ $param['message'] ?? '' }}
{{ $param['score'] ?? 0 }}
@endforeach
@endif