How SnipeWork scores jobs
The exact rules behind the numbers you see on every job: the fit score, the client score, the client quality filters and the weekly Market Index. No black box, no hidden weighting.
Where the data comes from
SnipeWork reads Upwork job posts through the official Upwork API (OAuth 2.0). There is no scraping and no browser automation. A shared scanner checks Upwork every minute, stores each new job with the client signals Upwork exposes (payment verification, jobs posted, hires, total spend, feedback score, number of proposals, publish time) and keeps a rolling 7-day window.
Job age is measured from the time Upwork published the post, not the time it was created, because Upwork can hold a post for 5 to 18 minutes before it appears in search.
Fit score (0 to 100)
The fit score tells you how well a job matches your profile. Each keyword you add in Config is one signal. If you have not added keywords, the categories you picked are used instead, each category counting as one signal with all of its synonyms (for example "logo design", "logo designer", "logo creation").
| Signals found in the title or description | Base score |
|---|---|
| 4 or more | 95 |
| 3 | 85 |
| 2 | 70 |
| 1 | 50 |
| None | 15 |
Signals that appear in the job title add a bonus: +5 for one, +10 for two or more. The result is capped at 100. If you have neither keywords nor categories, SnipeWork shows "Add skills for a fit score" instead of inventing a number.
Client score (0 to 100) and A to D grades
The client score estimates how likely a client is to be worth your Connects. It adds up six parts:
| Signal | Points |
|---|---|
| Payment verified | 25 if verified, 8 if unknown, 0 if not verified |
| Proposals already sent | 25 under 5, 18 under 10, 12 under 15, 6 under 20, 3 under 30, 0 at 30+, 8 if unknown |
| Hire rate (hires / jobs posted) | 20 at 70%+, 16 at 50%+, 10 at 30%+, 5 at 10%+, 8 for new clients |
| Total spent on Upwork | 20 at $10k+, 16 at $5k+, 12 at $1k+, 6 at $100+, 3 above $0 |
| Job age | 10 under 1 hour, 7 under 3 h, 5 under 6 h, 3 under 12 h, 1 under 24 h |
| Client feedback | +5 at 4.8+, +2 at 4.5+, minus 8 below 4.0 |
Grades: A 75 and above (Excellent), B 55 to 74 (Good), C 35 to 54 (Fair), D below 35 (Low). The score only ranks the feed; it never hides a job on its own.
Client quality filters
Filters are the hard gate: a job that misses a threshold is hidden. Missing data never hides a job, only a value we can read that misses the bar.
| Preset | Max proposals | Payment verified | Min hire rate | Min client spend | Max job age |
|---|---|---|---|---|---|
| Balanced | 20 | Required | None | None | None |
| Strict | 10 | Required | 30% | $500 | 24 h |
| Elite | 5 | Required | 50% | $1,000 | 12 h |
You can also set every threshold yourself (Custom) and choose whether brand-new clients with no history stay in your feed.
Payment verification when Upwork hides the flag
Upwork does not always return the payment-verified flag. When it is missing, SnipeWork infers it:
- The client has already spent money or hired someone: treated as verified.
- The client posted 3 or more jobs, hired nobody and spent nothing: treated as not verified.
- Anything else: unknown, and never filtered out.
Weekly Upwork Market Index
The Market Index is a weekly snapshot (ISO weeks, UTC) of every job the scanner saw that week, grouped by category and client country. For each budget we take the midpoint of the stated range (for example $30 to $50/hr counts as $40/hr), then report medians and averages for fixed-price and hourly jobs separately. The current week updates daily and is final after Sunday. A stored week is never overwritten with a smaller dataset.
The same data powers Upwork rates by category, the live market dashboard, the public REST API and the MCP server for AI agents.
Limits you should know about
- SnipeWork only sees what the Upwork API returns. Private and invite-only jobs are not included.
- Fit is keyword based. It does not read your portfolio or judge quality; it tells you where your skills appear in the post.
- The client score is a heuristic built from public signals, not a guarantee about a client.
- AI proposals are drafts. You review, edit and send every proposal yourself; SnipeWork never applies on your behalf.
Questions or a case where a score looks wrong? Email support@snipework.com. We change these rules in public and list every change in the changelog.
Get the weekly Upwork Market Index by email
Double opt-in. Unsubscribe anytime.