agentspeed.

upwork.com

scanned 7/26/2026, 6:26:35 AM · fresh · rubric 2026.08.0
robots.txt present: failrobots.txt allows AI agents: passContent-Signal directives: failllms.txt present: passSitemap present: failLink response headers: failCanonical URL: failMCP server card: failOAuth authorization metadata: failOAuth resource metadata: failAPI catalog / OpenAPI: failWeb Bot Auth: failMarkdown negotiation: failText-to-markup ratio: failContent without JavaScript: skipHeading hierarchy: failCookie wall blocks content: passPage title: passMeta description: failJSON-LD present: failStructured data validates: skipSchema type coverage: passPaywall / login wall: passAgent Skills manifest: failWebMCP actions: failPrimary action reachable: failReachability: failTime to first byte: passFull render time: skipPage weight: pass39/ 100 · F
Failing

This is how AI agents (not browsers) experience upwork.com. The score weights five categories of machine-readability; the ticks on the arc are the 30 individual checks behind it.

✉ Email me this report + alert me when it changes ↓

Top fixes

failSitemap presentDiscoverability

No reachable sitemap.xml. Publish one and reference it in robots.txt.

Fix: Publish /sitemap.xml and reference it from robots.txt with a Sitemap: line.

failCanonical URLDiscoverability

No <link rel="canonical"> tag in <head>. Agents use canonical URLs to dedupe and cite.

Fix: Add <link rel="canonical" href="…"> pointing at the primary URL of each page.

failMeta descriptionReadability

No <meta name="description">. Agents use it as a page summary; add a 50–200 character description.

Fix: Add `<meta name="description" content="...">` to your primary pages. Agents frequently use it as a summary.

failJSON-LD presentStructured data

No JSON-LD blocks found. Add a <script type="application/ld+json"> with a schema.org type for this page.

Fix: Add a <script type="application/ld+json"> describing the page (Organization, Article, Product, FAQPage).

failPrimary action reachableActionability

Page text too sparse to probe; agent has nothing to read.

Fix: If agents cannot identify what you sell within 3 steps, your primary-offer page is under-structured. Add a visible headline, price (or "contact us"), and canonical CTA.

failReachabilityActionability

Terminal HTTP 403.

Fix: Chained redirects multiply latency and break some agent crawlers. Collapse to a single redirect.

Don’t lose this report

Get it in your inbox now — and a heads-up whenever upwork.com’s agent-readiness score changes. Free, unsubscribe anytime.

Fix it

Generated, ready-to-ship files for the gaps above — copy them or download and drop them into your repo.

Add JSON-LD structured data
Paste inside <head>. Use Article/Product instead of Organization on those page types.
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Challenge - Upwork",
  "url": "https://upwork.com/"
}
</script>
Does AI actually recommend upwork.com?

This scan shows whether an agent can read the site. One free probe asks a real assistant a real buying question and records who it cited.

Run the free probe →
This scan graded one page. Your site is more than one page.

A 39/100 here means agents are missing things you meant them to see. The $29 Deep Scan audits the whole site against all 30 checks and emails a PDF with every failing check and its exact fix, ranked by severity. One-time, no subscription.

Order the Deep Scan →

What the agent receives

The agent’s-eye view
Challenge - Upwork Cloudflare Ray ID: a211556a38a19c11 Your IP: 44.220.48.190 © 2015 - 2025 Upwork® Global Inc.

Show your score

Embed this badge on your site. It links back to this live scan and updates on every rescan.

AgentSpeed score for upwork.com
<a href="https://agentspeed.com/scan/upwork.com"><img src="https://agentspeed.com/badge/upwork.com" alt="AgentSpeed agent-readiness score" height="56"></a>

Track this score

Get this report by email, then a heads-up when upwork.com’s agent-readiness actually changes — a check regressing, or the composite dropping.

Two things never trigger an email: a score change caused by us publishing a new rubric, because that is a different instrument rather than a change to your site, and movement explained only by timing-derived checks, which shift run to run on a site nobody touched.

Want it on your own schedule, with Slack or a webhook instead of email? Score-drift monitoring is on every paid plan.

This score says whether an AI agent could read upwork.com. AI traffic analytics says whether one actually came — and which pages turned it away.

Full breakdown

8 pass0 warn19 fail3 skip
Discoverability
fail
robots.txt present
No reachable robots.txt at the site root. Publish one so agents can discover your crawl policy and sitemap.
0/100
pass
robots.txt allows AI agents
All 9 answer-time access agents allowed.
100/100
fail
Content-Signal directivesemerging
No Content-Signal directives. Add e.g. `Content-Signal: ai-train=no, ai-summarize=yes` to declare granular AI usage policy beyond binary allow/disallow.
0/100
pass
llms.txt present
Found /llms.txt but missing H1 header and markdown links. Not scored.
100/100
fail
Sitemap present
No reachable sitemap.xml. Publish one and reference it in robots.txt.
0/100
fail
Link response headers
No HTTP Link: response headers. Emit canonical/alternate/describedby relations so HEAD-only or stream-rendering agents get them without parsing HTML.
0/100
fail
Canonical URL
No <link rel="canonical"> tag in <head>. Agents use canonical URLs to dedupe and cite.
0/100
fail
MCP server cardemerging
No valid MCP Server Card at /.well-known/mcp/server-card.json. Publish one so agents can discover your tools without HTML scraping.
0/100
fail
OAuth authorization metadataemerging
No RFC 8414 metadata at /.well-known/oauth-authorization-server. Agents that act on behalf of users need this to discover your authorization endpoints.
0/100
fail
OAuth resource metadataemerging
No RFC 9728 metadata at /.well-known/oauth-protected-resource. Publish it so agents can discover required scopes without hand-coded credentials.
0/100
fail
API catalog / OpenAPIemerging
No /.well-known/api-catalog (RFC 9727) and no /openapi.json|yaml. Publish one so agents that integrate with APIs can discover your endpoints.
0/100
fail
Web Bot Authemerging
No Web Bot Auth JWKS at /.well-known/http-message-signatures-directory.json. Publish one to allow trusted agents while keeping a default-deny posture for the rest.
0/100
Readability
fail
Markdown negotiationemerging
Accept: text/markdown returns HTML, not markdown. Serve a markdown variant of primary content when requested; agents summarize and cite it more reliably.
0/100
fail
Text-to-markup ratio
Visible text is 0.0% of HTML weight (113/344257 bytes). Low. Markup may be crowding out agent-usable text.
0/100
skip
Content without JavaScript
Browser pass unavailable; cannot measure JS dependency.
fail
Heading hierarchy
No headings found. Add at least an <h1>; structure helps agents summarise.
0/100
pass
Cookie wall blocks content
No common consent-modal markers detected.
100/100
pass
Page title
A concise <title> is present (18 chars).
100/100
fail
Meta description
No <meta name="description">. Agents use it as a page summary; add a 50–200 character description.
0/100
Structured data
fail
JSON-LD present
No JSON-LD blocks found. Add a <script type="application/ld+json"> with a schema.org type for this page.
0/100
skip
Structured data validates
No JSON-LD blocks present; nothing to validate (covered by structured_data.jsonld_present).
pass
Schema type coverage
Page intent unclear; no specific schema.org type expected.
100/100
Actionability
pass
Paywall / login wall
No paywall or login-wall detected on the landing URL.
100/100
fail
Agent Skills manifestemerging
No Agent Skills manifest at /.well-known/agent-skills.json. Enumerate the tasks agents can perform (search, add-to-cart, contact-support) so they pick the right one without scraping.
0/100
fail
WebMCP actionsemerging
No WebMCP detected. On pages with first-class actions (cart, support, account), embed a WebMCP server so on-page agents invoke tools directly.
0/100
fail
Primary action reachable
Page text too sparse to probe; agent has nothing to read.
0/100
fail
Reachability
Terminal HTTP 403.
0/100
Performance
pass
Time to first byte
TTFB 180ms. Healthy.
100/100
skip
Full render time
Full-render time unavailable (browser pass skipped or failed).
pass
Page weight
Initial document is a lean 336 KB.
100/100
Beyond the scan

Running AI agents of your own? AgentSpeed also monitors them in production — every run, its latency, cost, and failures, with alerts when something breaks. Free for 10,000 events a month, no credit card.

Start watching free →See plans