Error correction levels
QR codes use Reed-Solomon error correction to remain scannable even when partially damaged or obscured. The application offers four levels:L - Normal
Recovery: ~7% of data
Use case: Clean, controlled environments
Density: Maximum data capacity
Use case: Clean, controlled environments
Density: Maximum data capacity
M - Good
Recovery: ~15% of data
Use case: General purpose applications
Density: Balanced capacity and resilience
Use case: General purpose applications
Density: Balanced capacity and resilience
Q - High
Recovery: ~25% of data
Use case: Outdoor use or rough surfaces
Density: Lower capacity, higher reliability
Use case: Outdoor use or rough surfaces
Density: Lower capacity, higher reliability
H - Maximum
Recovery: ~30% of data
Use case: Logos, damaged surfaces
Density: Lowest capacity, maximum resilience
Use case: Logos, damaged surfaces
Density: Lowest capacity, maximum resilience
Quality selector interface
The quality dropdown provides clear labels for each level:The “Máxima (Logo)” label indicates that level ‘H’ is required when using logos. The application automatically enforces this.
How error correction affects scannability
Error correction creates redundancy in the QR code data:Practical implications
More correction = More modules
More correction = More modules
Higher error correction levels require more space in the QR code. This means either:
- More dense patterns for the same size QR code
- Larger QR codes for the same data density
Data capacity trade-off
Data capacity trade-off
As error correction increases, the amount of user data that fits in a QR code decreases:
- Level L: Maximum ~2,953 alphanumeric characters
- Level H: Maximum ~1,852 alphanumeric characters
Scanning reliability
Scanning reliability
Higher levels handle:
- Dirt, scratches, or damage
- Poor printing quality
- Glare or shadows
- Partial obstruction (like logos)
- Camera focus issues
Size setting
The QR code size determines the dimensions in pixels:Default size
Value: 280 pixels
Display: Optimal for on-screen viewing
Print: Good for business cards and flyers
Display: Optimal for on-screen viewing
Print: Good for business cards and flyers
Applied to rendering
SVG preview: 280px × 280px
PNG export: 560px × 560px (2× resolution)
Logo size: 62px × 62px (22% of 280px)
PNG export: 560px × 560px (2× resolution)
Logo size: 62px × 62px (22% of 280px)
Size implementation
Size is passed directly to both rendering components:includeMargin setting
The margin (quiet zone) around the QR code is essential for reliable scanning:Why margins matter
Boundary definition
The quiet zone defines the QR code’s boundaries, separating it from surrounding content
The application always sets
includeMargin={true} to ensure compliance with QR code standards and maximum scannability.When to use each quality level
Choose your error correction level based on the deployment scenario:Level L (Normal)
Best for:
- Digital displays only (websites, apps)
- Clean, controlled environments
- Maximum data capacity needed
- High-quality printing on smooth surfaces
Level M (Good)
Best for:
- General purpose applications
- Indoor printed materials
- Business documents
- Standard marketing materials
Level Q (High)
Best for:
- Outdoor signage
- Rough or textured surfaces
- Long-term displays subject to wear
- Environments with variable lighting
Level H (Maximum)
Best for:
- QR codes with logos (required)
- Industrial applications
- Harsh environments
- Small print sizes
- When maximum reliability is critical
Automatic quality enforcement
The application intelligently manages quality settings:- Logo area (22%) fits within error correction tolerance (30%)
- QR code remains scannable with logo present
- Consistent behavior across all export formats
- No user intervention required
Quality and file size
Error correction level affects export file sizes:SVG exports
Higher levels create more complex patterns with more vector paths, slightly increasing file size
PNG exports
More complex patterns may compress differently, but the effect is minimal for typical QR codes