speedlify2

Lighthouse lab metrics, Axe, and Chrome UX Report field data for a list of sites recorded and compared over time. Follow us on Mastodon or Bluesky.

Charts Compare Measurement runs Embed a score Open to Work

bullrich.dev

https://bullrich.dev/

94PERF 80A11Y 100BEST 92SEO ✗AXE –CWV

Ranks Overall #1,422 Built Awesome #963

Data from Oct 3, 2026, 1:50 AM UTC old Measured once a week · 7 runs since Aug 20, 2026

Elsewhere: PageSpeed Insights · Calibre · Treo · CrUX Vis · Tame the Bots · Scoring Calculator · Wayback Machine

Lab data is measured using Lighthouse, Mobile mode unless otherwise specified. Field data is reported from Chrome UX Report (using p75 measurements).

Stack

Eleventy Built with Eleventy
GitHub Pages Hosted by GitHub Pages

Lighthouse Scores LAB Simulated

94
Performance
no change
80
Accessibility
no change
100
Best Practices
no change
92
SEO
no change

Metrics LAB

No field data: the Chrome UX Report is not being collected for this project, so every figure below is from the Lighthouse run.

Metric Lab Simulated
Value Change / range Trend
LCP CWV (estimate) Largest Contentful Paint 3.08 s needs work ↓ -10 ms (-0.3%) 3.06 s – 3.09 s
INP CWV Interaction to Next Paint — field only, no lab run can measure it n/a —
CLS CWV (estimate) Cumulative Layout Shift 0 good → no change 0 – 0
TBT Total Blocking Time 62 ms good ↑ +9 ms (+17%) 47 ms – 66 ms
FCP First Contentful Paint 909 ms good ↑ +6 ms (+0.7%) 903 ms – 912 ms
Speed Index 909 ms good ↑ +6 ms (+0.7%) 903 ms – 912 ms
TTFB Time to First Byte 609 ms good ↑ +6 ms (+1%) 603 ms – 612 ms

Page weight

Metric Value Change / range Trend
Page Weight 333 kB ↑ +1.9 kB (+0.6%) 328 kB – 333 kB
Requests 13 → no change 13 – 13
Third-party Weight 168 kB ↑ +1.7 kB (+1.1%) 163 kB – 168 kB
Third-party CPU 58 ms ↑ +5 ms (+9%) 50 ms – 60 ms
Unused JS 75.4 kB ↑ +1.1 kB (+1.5%) 71.3 kB – 75.4 kB
Unused CSS 0 B → no change 0 B – 0 B

By resource type

Type Transfer Share Size Requests
script 51.3% 170 kB 2
image 42% 140 kB 6
stylesheet 3.5% 11.6 kB 1
document 3% 10.1 kB 1
other 0.2% 500 B 2
Total 333 kB 13

Third parties 1 entities

Entity Transfer Size Main thread Simulated
Google Tag Manager script 168 kB 58 ms
Total 168 kB 58 ms

Page health

Metric Value Change / range Trend
Main Thread Work 693 ms ↓ -141 ms (-16.9%) 671 ms – 834 ms
Long Tasks 2 → no change 2 – 3
DOM Elements 475 → no change 475 – 475
Axe Violations Violating nodes from a full Axe CLI run (more than Lighthouse reports) 19 → no change 19 – 19
A11y Failures 4 → no change 4 – 4
A11y Failing Nodes 13 → no change 13 – 13

Main thread work

Task Time Share Duration Simulated
other 32% 218 ms
script evaluation 30% 211 ms
style layout 23% 158 ms
paint composite render 7% 50 ms
script parse compile 6% 41 ms
parse HTML 2% 15 ms
Total 693 ms

Axe violations axe-core 4.13.0, full rule set

19 violating nodes across 5 rules, 801 passing. This is a standalone Axe CLI run and is stricter than the subset Lighthouse already includes.

  • serious link-name — Links must have discernible text 7 nodes
    Offending elements (5 of 7)
    1. .hover\:scale-110.hover\:text-brand-orange[href="mailto:javier@bullrich.dev"]
      <a href="mailto:javier@bullrich.dev" class="text-white hover:text-brand-orange transition-all duration-300 transform hover:scale-110">
    2. .hover\:scale-110.hover\:text-brand-orange[href$="Bullrich"]
      <a href="https://github.com/Bullrich" class="text-white hover:text-brand-orange transition-all duration-300 transform hover:scale-110" target="_blank">
    3. .hover\:scale-110.hover\:text-brand-orange[target="_blank"]:nth-child(3)
      <a href="https://www.linkedin.com/in/javibullrich/?locale=en_US" class="text-white hover:text-brand-orange transition-all duration-300 transform hover:scale-110" target="_blank">
    4. .scroll-indicator
      <a href="#about" class="scroll-indicator animate-bounce"><svg class="w-12 h-12 drop-shadow-md" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="roun…
    5. .hover\:scale-110.duration-200[href="mailto:javier@bullrich.dev"]
      <a href="mailto:javier@bullrich.dev" class="transition-all duration-200 hover:scale-110">
  • moderate region — All page content should be contained by landmarks 6 nodes
    Offending elements (5 of 6)
    1. h1
      <h1 class="text-6xl md:text-8xl font-black text-brand-orange mb-2 tracking-tighter uppercase font-sans">
    2. .bottom-0
      <div class="absolute bottom-0 right-0 flex justify-end pointer-events-none md:w-1/2 animate-fade-in-up z-0 w-full overflow-hidden md:overflow-visible mix-blend-normal">
    3. #about
      <section id="about" class="bg-brand-blue relative z-20 py-20 px-6">
    4. #experience > .max-w-6xl.container.mx-auto
      <div class="container mx-auto max-w-6xl relative z-10">
    5. #latest-blog
      <section id="latest-blog" class="bg-brand-blue relative z-20 py-20 px-6 border-t border-brand-orange/20">
  • serious color-contrast — Elements must meet minimum color contrast ratio thresholds 4 nodes
    Offending elements
    1. .px-8
      <div class="relative bg-brand-orange border-4 border-white rounded-2xl px-8 py-4 text-white font-black text-lg uppercase tracking-wide hover:bg-white hover:text-brand-blue transition-all duration-300…
    2. a[href$="storybot.dev"] > .md\:group-hover\:-translate-y-1.bg-gray-900.border-4 > .mt-auto > .rounded.border.px-2
      <span class="inline-block px-2 py-1 bg-brand-orange text-white text-xs font-bold uppercase tracking-wider rounded border border-white/20">ChatGPT, Eleventy</span>
    3. a[href$="1-transfer.html"] > .md\:group-hover\:-translate-y-1.bg-gray-900.border-4 > .mt-auto > .rounded.border.px-2
      <span class="inline-block px-2 py-1 bg-brand-orange text-white text-xs font-bold uppercase tracking-wider rounded border border-white/20">Web3, Typescript, Polygon</span>
    4. .block.group[target="_blank"]:nth-child(3) > .md\:group-hover\:-translate-y-1.bg-gray-900.border-4 > .mt-auto > .rounded.border.px-2
      <span class="inline-block px-2 py-1 bg-brand-orange text-white text-xs font-bold uppercase tracking-wider rounded border border-white/20">Web3, Typescript, Polygon</span>
  • moderate heading-order — Heading levels should only increase by one 1 node
    Offending element
    1. div:nth-child(2) > h5
      <h5 class="text-lg font-bold mb-4 text-brand-orange uppercase tracking-wider">Legal Notice</h5>
  • moderate landmark-one-main — Document should have one main landmark 1 node
    Offending element
    1. html
      <html lang="en">

Accessibility failures 4 of 14 audits

  • link-name — Links do not have a discernible name 7 nodes
  • color-contrast — Background and foreground colors do not have a sufficient contrast ratio. 4 nodes
  • heading-order — Heading elements are not in a sequentially-descending order 1 node
  • landmark-one-main — Document does not have a main landmark. 1 node

SEO failures 1 of 9 audits

  • meta-description — Document does not have a meta description

Hygiene

HTTPS HSTS CSP Clickjacking protection Origin isolation Trusted Types bfcache h2

Measurement log

Every stored run for this URL, newest first.

When Scores PerfLCPCLSTBTWeight RunsSpreadBenchTook Archive
Oct 3, 2026, 1:50 AM UTC 94 3.08 s 0 62 ms 333 kB 3/3 ±7 2,477 0% 28.2s Wayback
Sep 25, 2026, 11:55 PM UTC 94 3.08 s 0 53 ms 331 kB 3/3 ±8 2,494 0% 30.7s Wayback
Sep 18, 2026, 8:32 PM UTC 94 3.07 s 0 53 ms 330 kB 3/3 ±1 2,477 0% 28.2s Wayback
Sep 11, 2026, 5:37 PM UTC 93 3.09 s 0 66 ms 329 kB 3/3 ±7 2,309 -7% 30.1s Wayback
Sep 4, 2026, 2:54 PM UTC 94 3.08 s 0 55 ms 329 kB 3/3 ±8 2,477 0% 28.6s Wayback
Aug 28, 2026, 1:53 PM UTC 94 3.06 s 0 47 ms 328 kB 3/3 ±11 2,311 -7% 28.7s Wayback
Aug 20, 2026, 7:33 PM UTC 94 3.06 s 0 50 ms 328 kB 3/3 ±8 2,356 -5% 30s Wayback

Embed this score

Use this web component to show bullrich.dev's scores on any website, updated whenever this instance re-measures. Don’t forget to bundle the speedlify2-score.js component code into your site!

<speedlify2-score speedlify-url="https://www.speedlify.dev/" url="https://bullrich.dev/"></speedlify2-score>