Runs PageSpeed analysis on the page at the specified URL, and returns PageSpeed scores, a list of suggestions to make that page faster, and other information.


You will need authorization for the openid scope to make a valid call.

If unset, the scope for this method defaults to openid. You can set the scope for this method like this: pagespeedonline5 --scope <scope> pagespeedapi runpagespeed ...

Required Scalar Argument

  • <url> (string)
    • Required. The URL to fetch and analyze

Optional Output Flags

The method's return value a JSON encoded structure, which will be written to standard output by default.

  • -o out
    • out specifies the destination to which to write the server's result to. It will be a JSON-encoded structure. The destination may be - to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.

Optional Method Properties

You may set the following properties to further configure the call. Please note that -p is followed by one or more key-value-pairs, and is called like this -p k1=v1 k2=v2 even though the listing below repeats the -p for completeness.

  • -p captcha-token=string

    • The captcha token passed when filling out a captcha.
  • -p category=string

    • A Lighthouse category to run; if none are given, only Performance category will be run
  • -p locale=string

    • The locale used to localize formatted results
  • -p strategy=string

    • The analysis strategy (desktop or mobile) to use, and desktop is the default
  • -p utm-campaign=string

    • Campaign name for analytics.
  • -p utm-source=string

    • Campaign source for analytics.

Optional General Properties

The following properties can configure any call, and are not specific to this method.

  • -p $-xgafv=string

    • V1 error format.
  • -p access-token=string

    • OAuth access token.
  • -p alt=string

    • Data format for response.
  • -p callback=string

    • JSONP
  • -p fields=string

    • Selector specifying which fields to include in a partial response.
  • -p key=string

    • API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
  • -p oauth-token=string

    • OAuth 2.0 token for the current user.
  • -p pretty-print=boolean

    • Returns response with indentations and line breaks.
  • -p quota-user=string

    • Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
  • -p upload-type=string

    • Legacy upload protocol for media (e.g. "media", "multipart").
  • -p upload-protocol=string

    • Upload protocol for media (e.g. "raw", "multipart").