Performance Profiling

VerifiedCaution

Principles for measuring, analyzing, and optimizing performance. Covers Core Web Vitals, bundle analysis, and runtime profiling.

Sby Skills Guide Bot
DevelopmentIntermediate
7/25/2026
Claude Code
#performance-profiling#web-vitals#lighthouse#bundle-analysis#frontend-performance

Recommended for

Automated summary

This skill guides web performance profiling: establish a baseline, identify the bottleneck, apply a targeted fix, and validate the improvement.

Strengths

  • Covers Core Web Vitals (LCP, INP, CLS) with explicit good and poor thresholds.
  • Provides a four-step workflow and a tool-selection table for Lighthouse, bundle analysis, and browser DevTools.
  • Includes quick-win priorities and concrete anti-patterns that discourage premature optimization.
  • Ships with a Lighthouse audit script for automated measurement.

Limitations

  • Focused on front-end web performance; limited relevance for backend, database, or native app performance.
  • Stays at the level of principles and diagnostic tables rather than detailed tool-by-tool procedures.
  • Production validation relies on external RUM data that the skill does not supply.
When to use it

Use it when a web page is slow, Core Web Vitals are failing, or you need to analyze a bundle or runtime profile before optimizing.

When not to use it

Avoid it for non-browser performance issues such as slow SQL queries, backend services, or native mobile apps, or when no measurement can be taken.

Security analysis

Caution
Quality score78/100

The skill uses Bash to run a network-based profiling script, which is a legitimate but powerful capability. No destructive or exfiltration instructions are present, but the script execution and network access warrant a caution rating.

Findings
  • •Uses Bash to execute a Python script that makes network requests to a user-provided URL.
  • •The contents of scripts/lighthouse_audit.py are not included, so its behavior cannot be fully audited.
How this analysis is made

Examples

Lighthouse audit
Run a Lighthouse performance audit on https://example.com, summarize the Core Web Vitals, and recommend the top three fixes.
Slow page triage
My landing page takes 6 seconds to load. Establish a baseline, identify the main bottleneck, and propose a targeted optimization plan with validation steps.
Bundle review
Analyze my JavaScript bundle for large dependencies, duplicate code, and routes that should be code-split.

name: performance-profiling description: Performance profiling principles. Measurement, analysis, and optimization techniques. allowed-tools: Read, Glob, Grep, Bash

Performance Profiling

Measure, analyze, optimize - in that order.

🔧 Runtime Scripts

Execute these for automated profiling:

| Script | Purpose | Usage | |--------|---------|-------| | scripts/lighthouse_audit.py | Lighthouse performance audit | python scripts/lighthouse_audit.py https://example.com |


1. Core Web Vitals

Targets

| Metric | Good | Poor | Measures | |--------|------|------|----------| | LCP | < 2.5s | > 4.0s | Loading | | INP | < 200ms | > 500ms | Interactivity | | CLS | < 0.1 | > 0.25 | Stability |

When to Measure

| Stage | Tool | |-------|------| | Development | Local Lighthouse | | CI/CD | Lighthouse CI | | Production | RUM (Real User Monitoring) |


2. Profiling Workflow

The 4-Step Process

1. BASELINE → Measure current state
2. IDENTIFY → Find the bottleneck
3. FIX → Make targeted change
4. VALIDATE → Confirm improvement

Profiling Tool Selection

| Problem | Tool | |---------|------| | Page load | Lighthouse | | Bundle size | Bundle analyzer | | Runtime | DevTools Performance | | Memory | DevTools Memory | | Network | DevTools Network |


3. Bundle Analysis

What to Look For

| Issue | Indicator | |-------|-----------| | Large dependencies | Top of bundle | | Duplicate code | Multiple chunks | | Unused code | Low coverage | | Missing splits | Single large chunk |

Optimization Actions

| Finding | Action | |---------|--------| | Big library | Import specific modules | | Duplicate deps | Dedupe, update versions | | Route in main | Code split | | Unused exports | Tree shake |


4. Runtime Profiling

Performance Tab Analysis

| Pattern | Meaning | |---------|---------| | Long tasks (>50ms) | UI blocking | | Many small tasks | Possible batching opportunity | | Layout/paint | Rendering bottleneck | | Script | JavaScript execution |

Memory Tab Analysis

| Pattern | Meaning | |---------|---------| | Growing heap | Possible leak | | Large retained | Check references | | Detached DOM | Not cleaned up |


5. Common Bottlenecks

By Symptom

| Symptom | Likely Cause | |---------|--------------| | Slow initial load | Large JS, render blocking | | Slow interactions | Heavy event handlers | | Jank during scroll | Layout thrashing | | Growing memory | Leaks, retained refs |


6. Quick Win Priorities

| Priority | Action | Impact | |----------|--------|--------| | 1 | Enable compression | High | | 2 | Lazy load images | High | | 3 | Code split routes | High | | 4 | Cache static assets | Medium | | 5 | Optimize images | Medium |


7. Anti-Patterns

| ❌ Don't | ✅ Do | |----------|-------| | Guess at problems | Profile first | | Micro-optimize | Fix biggest issue | | Optimize early | Optimize when needed | | Ignore real users | Use RUM data |


Remember: The fastest code is code that doesn't run. Remove before optimizing.

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/performance-profiling-mrzxupxk/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/performance-profiling-mrzxupxk' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/performance-profiling-mrzxupxk/download' --output '.skill-downloads/performance-profiling-mrzxupxk/SKILL.md.part' && mv '.skill-downloads/performance-profiling-mrzxupxk/SKILL.md.part' '.skill-downloads/performance-profiling-mrzxupxk/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Tools declared by the author (check availability in your agent): Read, Glob, Grep, Bash

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/performance-profiling-mrzxupxk/SKILL.md' && test -s '.skill-downloads/performance-profiling-mrzxupxk/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/performance-profiling' && cp -R '.skill-downloads/performance-profiling-mrzxupxk' '.claude/skills/performance-profiling'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/performance-profiling-mrzxupxk'

openskills read 'performance-profiling-mrzxupxk'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/performance-profiling-mrzxupxk/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills