Back to the homepage
Carbon Calculation Methodology
Overview
This document provides a comprehensive explanation of how our website carbon calculator derives carbon footprint estimates. Our approach combines direct website measurement with established carbon intensity factors from leading sustainability research organizations.
Why Our Numbers May Appear Higher
Our carbon estimates may trend 6x higher than some other calculators because we use:
- Conservative global grid intensity (475g CO2/kWh global average) rather than location-specific factors
- Comprehensive measurement that includes both data transfer AND CPU processing energy
- Real browser measurement via Puppeteer rather than page size estimation
This approach provides worst-case scenario estimates that are valuable for sustainability planning, though actual user emissions will vary significantly based on their location's energy grid.
Data Collection Process
1. Real Browser Measurement with Puppeteer
Unlike calculators that estimate based on page size alone, we use Puppeteer (headless Chrome) to:
- Load your actual website in a real browser environment
- Track every network request including images, scripts, stylesheets, fonts, videos, and third-party resources
- Measure actual resource sizes after compression and optimization
- Record real performance metrics including load times and CPU usage
- Capture Web Vitals (First Contentful Paint, Largest Contentful Paint, Cumulative Layout Shift)
Our analysis captures:
- Network Activity: All HTTP requests and their payload sizes
- CPU Processing Time: Main thread work and JavaScript execution time
- Rendering Work: Browser painting and layout operations
- Third-Party Impact: External scripts, analytics, and widgets
- Cache Behavior: Initial vs. subsequent page load differences
Carbon Calculation Methodology
Primary Carbon Sources
Our calculations consider two main sources of carbon emissions:
1. Data Transfer Emissions
Carbon from Data Transfer = (Total Bytes ÷ 1024) × 0.0008 gCO2e per kB
2. CPU Processing Emissions
Carbon from Processing = (Main Thread Time in seconds) × 0.0004 gCO2e per second
Total CO2e per page view = Data Transfer Carbon + CPU Processing Carbon
Note: This methodology is consistently applied across data collection, storage, browser display, and PDF generation to ensure accuracy and reliability.
Carbon Intensity Factors
Our calculations use research-based carbon factors:
Factor | Value | Source |
---|
Data Transfer | 0.0008 gCO2e per kB | Green Web Foundation (2023) |
CPU Processing | 0.0004 gCO2e per second | Green Web Foundation (2023) |
Grid Intensity | 475g CO2 per kWh | IEA Global Average (2023) |
Energy per MB | 0.000072 kWh per MB | Data Center Efficiency Metrics (2023) |
Energy Calculation Model
Energy Consumption = Total MB × 0.000072 kWh per MB Carbon Emissions = Energy Consumption × 475g CO2 per kWh
Why We Use Global Grid Intensity
The Trade-off: Accuracy vs. Consistency
Global Average (Our Approach):
- ✅ Provides consistent, comparable results across all websites
- ✅ Represents worst-case scenario useful for sustainability planning
- ✅ Accounts for global user base and CDN distribution
- ❌ May overestimate emissions for users in clean energy regions
Location-Based Intensity (Alternative Approach):
- ✅ More accurate for specific geographic regions
- ✅ Lower estimates in areas with clean energy grids
- ❌ Requires user location data or assumptions
- ❌ Results vary based on testing location rather than website efficiency
Regional Grid Intensity Examples
Region | Grid Intensity (g CO2/kWh) | vs. Global Average |
---|
France (Nuclear) | ~60 | 8x cleaner |
Norway (Hydro) | ~20 | 24x cleaner |
Costa Rica (Renewables) | ~30 | 16x cleaner |
Global Average | ~475 | Baseline |
Poland (Coal) | ~700 | 1.5x dirtier |
This explains why location-based calculators may show significantly lower numbers—they may be testing from regions with exceptionally clean grids.
Comparison with Other Methodologies
- Approach: Page size estimation + regional grid factors
- Strengths: Fast, location-aware
- Limitations: Estimates rather than measures actual resources
CO2.js / Sustainable Web Design
- Approach: SWD model + location-based grid intensity
- Strengths: Well-established methodology, location-specific
- Limitations: May not capture all third-party resource impact
Our Approach
- Approach: Direct Puppeteer measurement + global grid average + CPU processing
- Strengths: Most accurate resource measurement, includes processing energy
- Limitations: Conservative global estimates, higher baseline numbers
Environmental Context Calculations
Yearly Impact Projections
We project annual environmental impact based on:
- Assumed traffic: 10,000 monthly page views (120,000 annually)
- Per-visit emissions: Measured carbon footprint
- Annual calculation:
CO2 per visit × annual visits
Environmental Equivalents
Our contextual comparisons use established conversion factors:
Equivalent | Conversion Factor | Source |
---|
Car driving | 240g CO2 per mile | EPA Average Vehicle Emissions |
Smartphone charging | 7g CO2 per charge | Industry Standard |
Coffee production | 70g CO2 per cup | Lifecycle Assessment Data |
Tree absorption | 22kg CO2 per year | Forest Carbon Research |
Household energy | 30kWh per day | Regional Average |
Methodology Validation
Research Foundation
Our approach builds on established research from:
- Green Web Foundation: Carbon intensity factors and data transfer calculations
- Sustainable Web Design: Energy modeling for digital services
- International Energy Agency (IEA): Global electricity carbon intensity data
- Web Performance Working Group: Browser measurement standards
Quality Assurance
- Real browser measurement eliminates estimation errors
- Multiple carbon sources provide comprehensive coverage
- Performance-based calculations reflect actual energy usage
- Conservative estimates err on the side of environmental caution
Limitations and Considerations
What Our Calculator Includes
- ✅ All network requests and resource transfers
- ✅ Client-side CPU processing energy
- ✅ Third-party script impact
- ✅ Real browser rendering work
- ✅ Compression and optimization effects
What Our Calculator Doesn't Include
- ❌ Server-side processing energy (varies by hosting)
- ❌ Network infrastructure energy (routers, cell towers)
- ❌ Device manufacturing carbon footprint
- ❌ End-user device energy consumption
- ❌ Geographic routing and CDN specifics
Variability Factors
Real-world emissions will vary based on:
- User location and local grid intensity
- Device efficiency (newer devices are more efficient)
- Network connection type and speed
- Cache state (repeat visits use less energy)
- Time of day (grid carbon intensity varies)
Using These Estimates
For Sustainability Planning
- Use our estimates as worst-case scenarios for carbon budgeting
- Focus on relative improvements between optimized and unoptimized versions
- Consider global user base impact rather than single-location estimates
- Larger page sizes correlate with higher emissions regardless of location
- CPU-intensive operations increase energy usage universally
- Third-party scripts add overhead that affects all users
For Reporting and Communication
- Specify that estimates use global average grid intensity
- Note that actual emissions vary by user location
- Emphasize relative improvements from optimization efforts
Continuous Improvement
We continuously refine our methodology based on:
- Latest research in digital carbon accounting
- Updated energy efficiency data from cloud providers
- Evolving web standards and measurement capabilities
- User feedback and industry best practices
Future Enhancements Under Consideration
- Optional location-based grid intensity calculations
- Server-side energy estimation integration
- Real-time grid carbon intensity data
- Industry-specific carbon factor adjustments
Questions or Feedback?
For questions about our methodology or suggestions for improvement, please reach out to our team. We believe transparency in carbon accounting is essential for meaningful climate action in the digital space.
Contact: hello@reallygood.workLast Updated: June 11, 2025Methodology Version: 1.0