> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/speedyapply/JobSpy/llms.txt
> Use this file to discover all available pages before exploring further.

# Indeed

> Scrape job postings from Indeed across 60+ countries using JobSpy.

Indeed is one of the world's largest job search engines. JobSpy's Indeed scraper uses Indeed's GraphQL API and supports searches across 60+ countries. It is currently the best-performing scraper in JobSpy — it imposes minimal rate limiting and returns rich employer data not available from other boards.

## Basic usage

Set `site_name` to `"indeed"` and provide a `country_indeed` value:

```python theme={null}
from jobspy import scrape_jobs

jobs = scrape_jobs(
    site_name="indeed",
    search_term="software engineer",
    location="Austin, TX",
    results_wanted=50,
    hours_old=48,
    country_indeed="USA",
)
print(f"Found {len(jobs)} jobs")
print(jobs.head())
```

## Supported parameters

| Parameter        | Type   | Description                                      |
| ---------------- | ------ | ------------------------------------------------ |
| `search_term`    | `str`  | Keywords to search for                           |
| `location`       | `str`  | City, state, or region to narrow results         |
| `distance`       | `int`  | Search radius in miles (default: 50)             |
| `job_type`       | `str`  | `fulltime`, `parttime`, `internship`, `contract` |
| `is_remote`      | `bool` | Filter for remote jobs                           |
| `hours_old`      | `int`  | Only jobs posted within this many hours          |
| `easy_apply`     | `bool` | Filter for Indeed Apply (hosted on Indeed) jobs  |
| `results_wanted` | `int`  | Number of results to return                      |
| `offset`         | `int`  | Start results from this position                 |
| `country_indeed` | `str`  | Country to search in (required — see below)      |

## Search filter limitations

Indeed only supports **one** of the following filter groups per search:

* `hours_old`
* `job_type` and/or `is_remote`
* `easy_apply`

Combining filters from different groups in the same search call will result in only one group being applied.

## `country_indeed` parameter

The `country_indeed` parameter is required to determine which Indeed regional site to search. Use the exact country name from the table below.

Countries marked with `*` also support [Glassdoor](/job-boards/glassdoor) searches.

|                 |                 |                      |                |
| --------------- | --------------- | -------------------- | -------------- |
| Argentina       | Australia `*`   | Austria `*`          | Bahrain        |
| Bangladesh      | Belgium `*`     | Brazil `*`           | Bulgaria       |
| Canada `*`      | Chile           | China                | Colombia       |
| Costa Rica      | Croatia         | Cyprus               | Czech Republic |
| Denmark         | Ecuador         | Egypt                | Estonia        |
| Finland         | France `*`      | Germany `*`          | Greece         |
| Hong Kong `*`   | Hungary         | India `*`            | Indonesia      |
| Ireland `*`     | Israel          | Italy `*`            | Japan          |
| Kuwait          | Latvia          | Lithuania            | Luxembourg     |
| Malaysia        | Malta           | Mexico `*`           | Morocco        |
| Netherlands `*` | New Zealand `*` | Nigeria              | Norway         |
| Oman            | Pakistan        | Panama               | Peru           |
| Philippines     | Poland          | Portugal             | Qatar          |
| Romania         | Saudi Arabia    | Singapore `*`        | Slovakia       |
| Slovenia        | South Africa    | South Korea          | Spain `*`      |
| Sweden          | Switzerland `*` | Taiwan               | Thailand       |
| Turkey          | Ukraine         | United Arab Emirates | UK `*`         |
| USA `*`         | Uruguay         | Venezuela            | Vietnam `*`    |

## Writing effective search queries

Indeed searches both the job title and the description, which can produce unrelated results for broad queries. You can use query operators to refine your results:

| Syntax             | Effect                                    |
| ------------------ | ----------------------------------------- |
| `"exact phrase"`   | Requires the exact phrase in results      |
| `-word`            | Excludes jobs containing this word        |
| `(java OR python)` | Requires at least one of the listed terms |

<Tip>
  Combine operators for precise results. This query finds engineering internship postings that mention a programming language but excludes unrelated roles:

  ```python theme={null}
  search_term='"engineering intern" software summer (java OR python OR c++) 2025 -tax -marketing'
  ```
</Tip>

## Extra output fields

Indeed returns detailed employer data not available from other job boards:

| Field                   | Type  | Description                                   |
| ----------------------- | ----- | --------------------------------------------- |
| `company_industry`      | `str` | Industry of the hiring company                |
| `company_addresses`     | `str` | Primary address of the company                |
| `company_num_employees` | `str` | Employee count label (e.g., `"1001 to 5000"`) |
| `company_revenue`       | `str` | Revenue label (e.g., `"$100M to $500M"`)      |
| `company_description`   | `str` | Brief description of the company              |
| `company_logo`          | `str` | URL of the company's square logo              |

## Notes

* Indeed is the best scraper currently, with minimal rate limiting compared to other boards.
* All job board searches, including Indeed, are capped at approximately 1,000 results per query.
* If you see unrelated roles in the results, refine your `search_term` using the query operators described above.
