For more details in the Chrome UX Report, please check out the official documentation.
Below is a sample Test with cruxapi property that defines the
configuration for running a WebPageTest audit.
{
"label": "Example",
"origin": "https://example.com",
"gatherer": "cruxbigquery"
}
Please note that CrUX BigQuery API is required to fetch results in batch mode. Please
make sure to add the --batch-mode parameter when executing it via the CLI. For example:
./awp run json:examples/tests-cruxbigquery.json json:output/results.json --batch-mode
GCP_PROJECT_ID- The Google Cloud unique project ID. See the official doc for creating a GCP project.SERVICE_ACCOUNT_CREDENTIALS- The path to the Service Account json file.
CrUX BigQuery API returns the metrics immediately after executing run action. Hence,
there's no need to execute retrieve step. Optionally, you may want to re-retrieve the
metrics to a Result object by executing retrieve action.
origin: CrUX BigQuery gatherer takesoriginin aTestinstead ofurl. Please note that the origin should start with a protocol, e.g. https://. See
After running, the cruxbigquery object in a Result object will
contain the metrics object and its corresponding values, like below:
{
"label": "Example",
"origin": "https://example.com",
"status": "Retrieved",
"cruxbigquery": {
"status": "Retrieved",
"origin": "https://example.com",
"metrics": [
{
"Date": 201911,
"Origin": "https://example.com",
"Device": "desktop",
"p75_ttfb": 700,
"p75_fp": 1300,
"p75_fcp": 1300,
"p75_lcp": 1600,
"p75_fid": 0,
"p75_cls": "0.05",
"p75_dcl": 1600,
"p75_ol": 2600,
"fast_fp": 0.5394573064475977,
"avg_fp": 0.41921832213094345,
"slow_fp": 0.0413243714214588,
"fast_fcp": 0.785305105853051,
"avg_fcp": 0.14919053549190536,
"slow_fcp": 0.06550435865504359,
"fast_lcp": 0.9038031319910513,
"avg_lcp": 0.06062639821029082,
"slow_lcp": 0.03557046979865772,
"fast_fid": 0.9914021164021164,
"avg_fid": 0.006393298059964726,
"slow_fid": 0.002204585537918871,
"fast_dcl": 0.6841195356878241,
"avg_dcl": 0.27265991602864903,
"slow_dcl": 0.0432205482835268,
"fast_ol": 0.7125312713213555,
"avg_ol": 0.2572208323857176,
"slow_ol": 0.030247896292926995,
"fast_ttfb": 0.5149856658848059,
"avg_ttfb": 0.4289809747198332,
"slow_ttfb": 0.05603335939536096,
"small_cls": 0.7818437719915552,
"medium_cls": 0.15435139573070605,
"large_cls": 0.06380483227773867,
"desktopDensity": 0.4015,
"phoneDensity": 0,
"tabletDensity": 0,
"_4GDensity": 0.3854,
"_3GDensity": 0.0161,
"_2GDensity": 0,
"slow2GDensity": 0,
"offlineDensity": 0,
"notification_permission_accept": null,
"notification_permission_deny": null,
"notification_permission_ignore": null,
"notification_permission_dismiss": null
},
...
],
"errors": []
}
}
Please see Chrome UX Report API docs for full details of the metric definitions.