Web App Manifest Auditor avatar

Web App Manifest Auditor

Pricing

Pay per usage

Go to Apify Store
Web App Manifest Auditor

Web App Manifest Auditor

Audit one public page for web app manifest and favicon readiness. Checks manifest JSON, icons, name, start_url, display, theme_color, score, and recommendations.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Sanskar Jaiswal

Sanskar Jaiswal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Share

Audit one public web page for web app manifest and favicon readiness. The actor fetches the page, finds manifest and icon links, validates the manifest JSON, and returns a structured score with issues and recommendations.

Use cases

  • Check launch pages for missing favicons or web app manifests.
  • Monitor PWA installability basics across marketing sites and docs portals.
  • Validate CMS templates after redesigns or migrations.
  • Feed structured manifest and icon diagnostics into QA dashboards.

Input

FieldTypeRequiredDescription
startUrlstringYesPublic HTTP or HTTPS page URL to audit. Credentials and private network targets are rejected.
timeoutSecondsintegerNoRequest timeout for page and manifest fetches. Default is 10 seconds.

Output

Each run pushes one dataset item.

FieldTypeDescription
inputUrlstringOriginal URL submitted in the input.
normalizedInputUrlstringURL after adding a default HTTPS scheme when omitted.
finalUrlstringFinal page URL after safe redirects.
statusinteger or nullHTTP status returned by the page fetch.
okbooleanTrue when the page fetch completed with a 2xx or 3xx status and no fetch error.
checkedAtstringISO timestamp for the audit.
manifestUrlstring or nullFirst resolved rel="manifest" URL found on the page.
manifestStatusinteger or nullHTTP status returned by the manifest fetch.
manifestValidbooleanTrue when the manifest was reachable and parsed as JSON.
manifestNamestring or nullManifest name, when present.
manifestShortNamestring or nullManifest short_name, when present.
faviconCountintegerNumber of favicon, shortcut icon, mask icon, and Apple touch icon links found.
faviconsarrayIcon link records with rel, href, resolvedHref, sizes, and type.
manifestIconCountintegerNumber of icons declared in the manifest.
manifestIconsarrayRaw manifest icon records.
hasNamebooleanTrue when the manifest has name or short_name.
hasStartUrlbooleanTrue when the manifest has start_url.
hasDisplaybooleanTrue when the manifest has display.
hasThemeColorbooleanTrue when the manifest has theme_color.
scoreintegerReadiness score from 0 to 100.
gradestringLetter grade from A to F.
issuesarrayProblems found during the audit.
recommendationsarraySuggested fixes.
errorstring or nullFetch or validation error, when one occurred.

Example input

{
"startUrl": "https://example.com",
"timeoutSeconds": 10
}

Example output

{
"inputUrl": "https://example.com",
"normalizedInputUrl": "https://example.com/",
"finalUrl": "https://example.com/",
"status": 200,
"ok": true,
"checkedAt": "2026-07-15T00:00:00.000Z",
"manifestUrl": "https://example.com/site.webmanifest",
"manifestStatus": 200,
"manifestValid": true,
"manifestName": "Example App",
"manifestShortName": "Example",
"faviconCount": 1,
"favicons": [
{
"rel": "icon",
"href": "/favicon.ico",
"resolvedHref": "https://example.com/favicon.ico",
"sizes": "any",
"type": null
}
],
"manifestIconCount": 2,
"manifestIcons": [
{ "src": "/icon-192.png", "sizes": "192x192", "type": "image/png" },
{ "src": "/icon-512.png", "sizes": "512x512", "type": "image/png" }
],
"hasName": true,
"hasStartUrl": true,
"hasDisplay": true,
"hasThemeColor": true,
"score": 100,
"grade": "A",
"issues": [],
"recommendations": [],
"error": null
}

Security

The actor fetches only public HTTP and HTTPS URLs. It rejects URL credentials, localhost and private IP literals, and hostnames that resolve to private IPv4 or IPv6 ranges. Redirect targets are validated before following. Response bodies are capped at 2 MB.

Pricing

Suggested pay-per-event pricing:

EventSuggested price
Actor start$0.005
Page audited$0.01

This keeps single-page checks inexpensive while supporting scheduled QA and batch workflows.

FAQ

Does this check full PWA installability?

No. It checks manifest and icon readiness signals that can be verified from static HTML and manifest JSON. It does not run a browser, service worker, or Lighthouse audit.

Does it download every icon?

No. It extracts icon declarations and manifest icon records. It does not fetch each image file, which keeps runs fast and low maintenance.

Can I audit private staging sites?

No. The actor is designed for public unauthenticated pages only and blocks private network targets for SSRF safety.