Our Trader Joe's Search API allows you to scrape products from Trader Joe's search results. For each product, the API returns its title, link, product ID, image, category, price, and size. Search all Trader Joe's products with q, or only the products sold in one store with store_id.


The API endpoint is https://serpapi.com/search?engine=trader_joes

Head to the playground for a live and interactive demo.

API Parameters

Search Query

q

Required

Parameter defines the search query. You can use anything that you would use in a regular Trader Joe's search.

Localization

store_id

Optional

Parameter defines the Trader Joe's store to search in, so only products sold in this store are returned (e.g., 454 for Austin - Northwest). Head to the Trader Joe's stores page for a full list of store IDs.

When it isn't set, or when no store has this ID, products sold in any store are returned.

Advanced Filters

category_id

Optional

Parameter defines the category of the products (e.g., 194 for Coffee & Tea). Head to the Trader Joe's categories page for a full list of category IDs.

characteristics

Optional

Parameter defines the characteristics the products must all have. It's a comma-separated list of options (e.g., organic,vegan).

Available options:
kosher - Kosher
organic - Organic
gluten_free - Gluten Free
vegan - Vegan
antibiotic_free - Antibiotic Free
dairy_free - Dairy Free
grass_fed - Grass Fed
vegetarian - Vegetarian
fair_trade - Fair Trade

tags

Optional

Parameter defines the tags the products must all have, from the Trader Joe's "fun tags" like Date Night or Cheese Board. It's a comma-separated list of options (e.g., date_night,cheese_board). Head to the Trader Joe's tags page for a full list of tags.

new_products

Optional

Parameter defines whether to only show the products Trader Joe's marks as new. It can be set to true or false (default).

Sorting

sort_by

Optional

Parameter defines the sorting order of the results. It defaults to relevance.

Available options:
price_low_to_high - Price Low to High
price_high_to_low - Price High to Low
popularity - Popularity

Pagination

page

Optional

Parameter defines the page number of the results (e.g., 1 (default) is the first page of results, 2 is the 2nd page of results, etc.). Trader Joe's returns up to 15 results per page.

Serpapi Parameters

engine

Required

Set parameter to trader_joes to use the Trader Joe's API engine.

no_cache

Optional

Parameter will force SerpApi to fetch the Trader Joe's results even if a cached version is already present. A cache is served only if the query and all parameters are exactly the same. Cache expires after 1h. Cached searches are free, and are not counted towards your searches per month. It can be set to false (default) to allow results from the cache, or true to disallow results from the cache. no_cache and async parameters should not be used together.

async

Optional

Parameter defines the way you want to submit your search to SerpApi. It can be set to false (default) to open an HTTP connection and keep it open until you got your search results, or true to just submit your search to SerpApi and retrieve them later. In this case, you'll need to use our Searches Archive API to retrieve your results. async and no_cache parameters should not be used together. async should not be used on accounts with Ludicrous Speed enabled.

zero_trace

Optional

Enterprise only. Parameter enables ZeroTrace mode. It can be set to false (default) or true. Enable this mode to skip storing search parameters, search files, and search metadata on our servers. This may make debugging more difficult.

api_key

Required

Parameter defines the SerpApi private key to use.

output

Optional

Parameter defines the format of the result. It can be set to json (default) to get a structured JSON of the results, html to get the raw HTML retrieved, or md to get a markdown-formatted version optimized for LLMs and AI agents.

json_restrictor

Optional

Parameter defines the fields you want to include in the output, reducing payload size for faster response. See the JSON Restrictor documentation for more details.

API Results

JSON Results

JSON output includes structured data for Organic Results.

A search status is accessible through search_metadata.status. It flows this way: Processing -> Success || Error. If a search has failed, error will contain an error message. search_metadata.id is the search ID inside SerpApi.

HTML Results

This API does not have a full HTML response, only text. search_metadata.prettify_html_file contains a link to the prettified version of the result. It is displayed in the playground.

Markdown Results

Markdown output is optimized for LLMs and AI agents. It provides a curated view of the JSON results in a token-efficient format using tables, markdown links, and YAML frontmatter.

To access, use the output=md parameter, the /search.md endpoint, or request header Accept: text/markdown.

API Examples

Example with q: coffee

Example with q: coffee

JSON Example

{
  ...
  "search_information": {
    "total_results": 82
  },
  "organic_results": [
    {
      "product_id": "097234",
      "title": "Pumpkin Spice Coffee",
      "link": "https://www.traderjoes.com/home/products/pdp/pumpkin-spice-coffee-097234",
      "serpapi_link": "https://serpapi.com/search.json?engine=trader_joes_product&product_id=097234",
      "thumbnail": "https://www.traderjoes.com/content/dam/trjo/products/m304/97234.png/jcr:content/renditions/cq5dam.web.1280.1280",
      "category": "Coffee & Tea",
      "category_link": "https://www.traderjoes.com/home/products/category/coffee-tea-194",
      "price": "$9.99",
      "extracted_price": 9.99,
      "size": "14 Oz"
    },
    {
      "product_id": "066148",
      "title": "Autumn Maple Coffee",
      "link": "https://www.traderjoes.com/home/products/pdp/autumn-maple-coffee-066148",
      "serpapi_link": "https://serpapi.com/search.json?engine=trader_joes_product&product_id=066148",
      "thumbnail": "https://www.traderjoes.com/content/dam/trjo/products/m304/66148.png/jcr:content/renditions/cq5dam.web.1280.1280",
      "category": "Coffee & Tea",
      "category_link": "https://www.traderjoes.com/home/products/category/coffee-tea-194",
      "price": "$9.99",
      "extracted_price": 9.99,
      "size": "14 Oz"
    },
    {
      "product_id": "081315",
      "title": "Ethiopia Guji Coffee",
      "link": "https://www.traderjoes.com/home/products/pdp/ethiopia-guji-coffee-081315",
      "serpapi_link": "https://serpapi.com/search.json?engine=trader_joes_product&product_id=081315",
      "thumbnail": "https://www.traderjoes.com/content/dam/trjo/products/m304/81315.png/jcr:content/renditions/cq5dam.web.1280.1280",
      "category": "Coffee & Tea",
      "category_link": "https://www.traderjoes.com/home/products/category/coffee-tea-194",
      "price": "$10.99",
      "extracted_price": 10.99,
      "size": "12 Oz"
    },
    ...
  ],
  ...
}

Example with store_id: 454

Each Trader Joe's store sells part of the products. With store_id, only the products sold in this store are returned, like on the Trader Joe's website after selecting a store. Here, 60 of the 82 coffee products are sold in the Austin - Northwest store.

Example with store_id: 454

JSON Example

{
  ...
  "search_parameters": {
    "engine": "trader_joes",
    "q": "coffee",
    "store_id": "454"
  },
  "search_information": {
    "total_results": 60
  },
  "organic_results": [
    {
      "product_id": "097234",
      "title": "Pumpkin Spice Coffee",
      "link": "https://www.traderjoes.com/home/products/pdp/pumpkin-spice-coffee-097234",
      "serpapi_link": "https://serpapi.com/search.json?engine=trader_joes_product&product_id=097234&store_id=454",
      "thumbnail": "https://www.traderjoes.com/content/dam/trjo/products/m304/97234.png/jcr:content/renditions/cq5dam.web.1280.1280",
      "category": "Coffee & Tea",
      "category_link": "https://www.traderjoes.com/home/products/category/coffee-tea-194",
      "price": "$9.99",
      "extracted_price": 9.99,
      "size": "14 Oz"
    },
    ...
  ],
  ...
}

Example with page: 2

Example with page: 2

JSON Example

{
  ...
  "organic_results": [
    {
      "product_id": "063482",
      "title": "Cold Brew Coffee Bags",
      "link": "https://www.traderjoes.com/home/products/pdp/cold-brew-coffee-bags-063482",
      "serpapi_link": "https://serpapi.com/search.json?engine=trader_joes_product&product_id=063482",
      "thumbnail": "https://www.traderjoes.com/content/dam/trjo/products/m304/63482.png/jcr:content/renditions/cq5dam.web.1280.1280",
      "category": "Coffee & Tea",
      "category_link": "https://www.traderjoes.com/home/products/category/coffee-tea-194",
      "price": "$8.49",
      "extracted_price": 8.49,
      "size": "8.5 Oz"
    },
    ...
  ],
  "serpapi_pagination": {
    "current": 2,
    "previous": "https://serpapi.com/search.json?engine=trader_joes&page=1&q=coffee",
    "next": "https://serpapi.com/search.json?engine=trader_joes&page=3&q=coffee",
    "other_pages": {
      "1": "https://serpapi.com/search.json?engine=trader_joes&page=1&q=coffee",
      "3": "https://serpapi.com/search.json?engine=trader_joes&page=3&q=coffee",
      "4": "https://serpapi.com/search.json?engine=trader_joes&page=4&q=coffee",
      "5": "https://serpapi.com/search.json?engine=trader_joes&page=5&q=coffee",
      "6": "https://serpapi.com/search.json?engine=trader_joes&page=6&q=coffee"
    }
  }
}

JSON Structure Overview

{
  ...
  "search_information": {
    "total_results": "Integer - Number of products matching the search.",
    "organic_results_state": "String - 'Fully empty' when the page has no products, because no product matches the search or the page is after the last one."
  },
  "organic_results": [
    {
      "product_id": "String - Trader Joe's product ID (SKU). (Ex. 097234)",
      "title": "String - Name of the product.",
      "link": "String - Link to the product page on Trader Joe's.",
      "serpapi_link": "String - Link to the product details with SerpApi's Trader Joe's Product API.",
      "thumbnail": "String - Link to the image of the product.",
      "category": "String - Category of the product. (Ex. Coffee & Tea)",
      "category_link": "String - Link to the category page on Trader Joe's.",
      "price": "String - Price of the product, as displayed. Absent when Trader Joe's shows the price as not available. (Ex. $9.99)",
      "extracted_price": "Float - Price of the product.",
      "size": "String - Size of the product the price is for. (Ex. 14 Oz, 1 Each)"
    },
    ...
  ],
  "serpapi_pagination": {
    "current": "Integer - Current page number.",
    "previous": "String - Link to the previous page of results with SerpApi.",
    "next": "String - Link to the next page of results with SerpApi.",
    "other_pages": {
      "page_number": "String - Link to this page of results with SerpApi."
    }
  },
  ...
}