Dice Jobs, With the Salary Bands Marked avatar

Dice Jobs, With the Salary Bands Marked

Pricing

from $0.01 / 1,000 job advert returneds

Go to Apify Store
Dice Jobs, With the Salary Bands Marked

Dice Jobs, With the Salary Bands Marked

Tech job adverts from dice.com with every salary labelled as either the employer's own figure or one of Dice's five salary bands. About one advert in five publishes a band edge in the salary field, and it reads exactly like a real wage.

Pricing

from $0.01 / 1,000 job advert returneds

Rating

0.0

(0)

Developer

Gregory Bolshakov

Gregory Bolshakov

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Dice jobs

Tech job adverts from dice.com, with every salary labelled as either the employer's own figure or one of Dice's five salary bands.

One advert in five publishes a band, not a wage

On 16 September 2026 a run of 120 adverts came back with these salaries:

  • 46 were the employer's own range, like USD 119,543.00 - 152,749.00 per year
  • 26 were USD 80,001.00 - 120,000.00 or USD 40,001.00 - 80,000.00 or one of three more
  • 37 published nothing
  • 11 said words, like Depends on Experience

The 26 are not wages. They are the edges of Dice's own salary bands, and they sit in the same field, in the same format, as the real ones. Nothing on the page marks them.

It is worse in the structured data. The advert whose salary reads USD 80,001.00 - 120,000.00 per year publishes this for search engines:

"baseSalary": { "@type": "MonetaryAmount", "currency": "USD", "value": 80001 }

One number. It is the band's lower edge plus one, in the field every structured data reader takes as the salary.

Every row here carries salaryIsDiceBand. Filter on it before you average anything.

Read salaryPeriod before you compare two rows

Hourly and yearly pay sit in the same column on dice.com. USD 30.00 per hour and USD 152,749.00 per year are both in it. Every row says which one it is.

Sometimes dice.com says neither. On the visa sponsorship search, every advert with numbers wrote them like $$70 - $80 or $$100,000 - $140,000, with no period anywhere. That is an hourly rate and a yearly range in one column, and only the size of the number tells you which.

salaryPeriod is null on those rows. This Actor does not guess the unit from the magnitude.

salaryRaw keeps the string exactly as dice.com published it, including the double dollar sign the site writes on those adverts.

The board will not give you what it says it has

Asked for adverts offering visa sponsorship, dice.com reported 1,163 adverts across 39 pages. It served 730 across 25 pages, then served page 25 again, and again, for ever. There is no empty page and no error. A scraper that pages until it runs out never runs out, and it bills you for the same 30 adverts every time.

This run stops when a page repeats everything it has already seen. The run summary says what the board claimed, what it served, and the gap between them.

Two fields both mean remote and they disagree

dice.com publishes workplaceTypes with 10,706 adverts tagged Remote. It also publishes work from home available, which is true on 450. Same board, same day. Both are in the output under their own names. Use workplaceTypes. The other one cannot be filtered on at all, and neither can isRemote, which the site lists with counts and then ignores.

Filters take the value, not the label

Contract type is FULLTIME, PARTTIME, CONTRACTS or THIRD_PARTY. Sending Full-time returns zero adverts rather than an error. The input is a list, so you cannot send the wrong one.

A place dice.com cannot resolve is the same trap. Zzzqqq, XX, ZZ returns 111,682 adverts, the whole United States board, under a search that says it is for that place. This run checks the total against the unfiltered board and stops rather than writing them.

What it costs

$0.00001 per run and $0.00001 per advert. A run that matches nothing costs nothing, because both charges happen after the rows are saved. A run stopped by a bad filter value or an unresolved place costs nothing either.

dice.com's robots.txt disallows /jobs?q*, so this Actor never sends a keyword. Narrow the board with place, contract type, workplace, who is advertising, posted date, easy apply or visa sponsorship instead. Asking for a keyword stops the run with that explanation.

Fields

jobId is dice.com's own uuid and joins to the Dice job details Actor. companyProfileId is the employer key, not companyName, which is neither unique nor stable. employerType says whether you are looking at the employer or an agency, and its three values add up to the whole board exactly, so it is the one filter that cuts the board into parts that do not overlap.