
Google Ads Scraper
scrape.ly/store/querystone/google-ads-scraperLead generationSEO tools
4 monthly users

Scrape Jumia products from searches, categories and product pages in Nigeria, Kenya, Egypt, Ghana, Morocco, Côte d'Ivoire and Senegal: prices, discounts, ratings, sellers, stock and specifications. No login needed.
Pull product data from Jumia, the online marketplace, in seven countries: Nigeria, Kenya, Egypt, Ghana, Morocco, Côte d'Ivoire and Senegal. Search by keyword or paste category and product links, and get prices, old prices and discounts, ratings, stock, Official Store and Express flags, categories and images. Turn on Product details to add the seller, specifications and key features. No login needed. In our test runs, 1,000 products took about a minute.
laptop or air fryer) and pick the Jumia shop to search in, or paste Jumia search, category or product URLs from any supported country.| Field | What it does |
|---|---|
searchQueries | Keywords to search, one per line. |
startUrls | Jumia search, category, brand or product pages. The shop comes from each URL. |
country | Shop for keywords: ng, ke, eg, gh, ma, ci or sn. |
maxResults | Products per keyword or URL (0 = everything the listing holds). |
sortBy | popularity, newest, lowest-price, highest-price or rating. |
minPrice / maxPrice | Price range in the shop's own currency. |
minRating | Minimum stars (1 to 5). |
officialStoreOnly / expressOnly | Only Official Store or only Jumia Express products. |
maxPagesPerQuery | Optional page limit per keyword or URL (40 products per page). |
enrichDetails | Product details add-on: seller, specifications, key features, description. |
{
"searchQueries": ["laptop", "air fryer"],
"startUrls": ["https://www.jumia.co.ke/phones-tablets/"],
"country": "ng",
"maxResults": 100,
"sortBy": "popularity",
"minRating": 4,
"enrichDetails": false
}
Each row is one product. Fields marked details are filled when Product details is on (product URLs always get the seller, stock note and description).
| Field | Description |
|---|---|
name, brand, sku, productId | Product identity |
price, priceText, oldPrice, oldPriceText, discountPercent, currency, priceEur | Current price, price before discount and discount, in the shop's currency (plus Jumia's euro price) |
rating, reviewsCount | Average stars (empty when unrated) and number of ratings |
inStock, isOfficialStore, isExpress, isSponsored, badges | Availability, Official Store and Express flags, sponsored placement, deal badges |
category, categoryPath | Deepest category and full category path |
imageUrl, images | Main image and image gallery |
url, country, countryCode, domain | Product page and shop |
searchQuery, sourceUrl, page, position | Where the product was found |
seller, sellerUrl, sellerId, sellerScore, sellerFollowers, sellerRatings | Seller name, shop page, score (%), followers and performance ratings (details) |
stockText, description, keyFeatures, specifications, breadcrumbs | Stock note, description, key features, specification table, breadcrumbs (details) |
enriched, scrapedAt | Whether details were added, and when the row was scraped |
Example row from a test run with Product details on (long lists shortened):
{
"sku": "GE840EA1NK1KGNAFAMZ",
"productId": "169423000",
"name": "RichRipple Pro3 Bluetooth Headsets Wireless Pods Pro Earpods Earphones",
"brand": "RichRipple",
"price": 399,
"priceText": "KSh 399",
"oldPrice": 756,
"oldPriceText": "KSh 756",
"discountPercent": 47,
"currency": "KES",
"priceEur": 2.74,
"rating": 3.7,
"reviewsCount": 4654,
"inStock": true,
"isOfficialStore": false,
"isExpress": true,
"isSponsored": false,
"badges": ["Black Friday deal"],
"category": "Bluetooth & Corded Headsets",
"categoryPath": ["Phones & Tablets", "Accessories", "Bluetooth & Corded Headsets"],
"sellerId": "87878",
"imageUrl": "https://ke.jumia.is/unsafe/fit-in/300x300/filters:fill(white)/product/00/0324961/1.jpg?8863",
"images": ["https://ke.jumia.is/unsafe/fit-in/520x520/filters:fill(white)/product/00/0324961/1.jpg?8863"],
"url": "https://www.jumia.co.ke/richripple-pro3-bluetooth-headsets-wireless-pods-pro-earpods-earphones-169423000.html",
"country": "Kenya",
"countryCode": "ke",
"domain": "jumia.co.ke",
"searchQuery": null,
"sourceUrl": "https://www.jumia.co.ke/phones-tablets/",
"page": 1,
"position": 1,
"seller": "RichRipple OfficialStore-SEA-COD",
"sellerUrl": "https://www.jumia.co.ke/richripple-officialstore-sea-cod/",
"sellerScore": 84,
"sellerFollowers": 2209,
"sellerRatings": {"Shipping speed": "Excellent", "Quality Score": "Average", "Customer Rating": "Average", "Cancellation Rate": "Excellent"},
"stockText": "In stock",
"description": "RichRipple Pro3 Wireless Bluetooth Earphone For IPhone Samsung Pods",
"keyFeatures": ["Bluetooth version: 5.0", "Bluetooth distance: 5-10 meters"],
"specifications": {"Model": "Pro3 Wireless Bluetooth Earphone For IPhone Samsung Pods", "Production Country": "China", "Weight (kg)": "0.1"},
"breadcrumbs": ["Phones & Tablets", "Accessories", "Bluetooth & Corded Headsets"],
"enriched": true,
"scrapedAt": "2026-10-21T23:35:24.550Z"
}
Worked examples: 1,000 products ≈ $3.50 plus about $0.01 of usage. 1,000 products with details ≈ $6.50 plus usage. You never pay for blocked pages, retries or products that were not saved, and a run stops cleanly when it reaches your maximum charge.
Is it legal to scrape Jumia? The scraper only reads public product pages that anyone can open without an account. You are responsible for how you use the data; check Jumia's terms and the laws that apply to you, especially for personal data.
Do I need a Jumia account or my own proxies? No. No login, cookies or account. Residential exits in each shop's country are used by default and are included in the platform usage.
How many products can I get? As many as the listing holds. Jumia shows at most 2,000 products (50 pages) per search or category, so for bigger limits the scraper walks the listing in price ranges. In a test run it saved 10,000 products for "phone" on jumia.com.ng in about 2 minutes.
Why is a field empty?
Jumia does not show every field for every product: unrated products have no rating, products without a discount have no oldPrice, and the seller, specifications and key features need the Product details add-on (or a product URL).
Can I scrape several countries at once?
Yes. Paste URLs from different Jumia shops in one run; keywords are searched in the shop picked under "Jumia shop". Each row carries country, countryCode and currency.
Can I schedule runs or use the API?
Yes. Schedule the actor to track prices daily or weekly, and start runs and read results through the API or with webhooks. Moving from a similar actor on another platform? The input field names (searchQueries, startUrls, country, maxResults, maxPagesPerQuery, enrichDetails) are the same, so existing inputs run as they are. One difference: here maxResults applies to each keyword or URL, not to the whole run.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
searchQueriesarrayOptionalSearch keywords
Words to search for on Jumia, one per line (for example "laptop" or "air fryer"). Each keyword is searched on the Jumia shop picked under "Jumia shop".
startUrlsarrayOptionalJumia URLs
Jumia search, category, brand or product pages from any supported shop (jumia.com.ng, jumia.co.ke, jumia.com.eg, jumia.com.gh, jumia.ma, jumia.ci, jumia.sn). Search and category pages are read page by page; a product page returns that one product with its seller and stock. The shop comes from each URL.
countryenumOptionaldefault "ng"Jumia shop
Which Jumia shop the search keywords are searched on. URLs always use their own shop.
maxResultsintegerOptionaldefault 20Max products per keyword or URL
How many products to save from each search keyword and each search or category URL. Product URLs always return their one product. 0 = no limit (everything the listing holds). A Jumia listing shows at most 2,000 products (50 pages); for bigger limits the run splits the listing into price ranges to reach more of it.
sortByenumOptionalSort by
Order of search and category results.
minPriceintegerOptionalMin price
Only products at or above this price, in the shop's own currency (for example naira on jumia.com.ng).
maxPriceintegerOptionalMax price
Only products at or below this price, in the shop's own currency.
minRatingintegerOptionalMin star rating
Only products rated at least this many stars (1 to 5). Leave empty or 0 for all products, rated or not.
officialStoreOnlybooleanOptionaldefault falseOfficial stores only
Only products sold by Jumia Official Stores (brand-run shops).
expressOnlybooleanOptionaldefault falseJumia Express only
Only products shipped by Jumia Express (stocked in Jumia's warehouse, faster delivery).
maxPagesPerQueryintegerOptionalMax pages per keyword or URL
Stop each keyword or category after this many result pages (40 products each). Empty or 0 = read pages until "Max products" is reached or the listing ends.
enrichDetailsbooleanOptionaldefault falseProduct details
Also open each product's own page and add the seller (name, score, followers, performance ratings), stock note, full description, key features, specifications, full image gallery and breadcrumbs. Charged per product as an add-on (see Pricing). Product URLs always include the seller, stock note and description; this option adds key features and specifications to them too.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["RESIDENTIA…Proxy configuration
Jumia refuses datacenter IPs, so residential exits in each shop's own country are used by default. If you pick datacenter and Jumia refuses it, the run switches to residential exits by itself.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| sku | string | null | Jumia SKU |
| productId | string | null | Numeric product id from the URL |
| name | string | null | Product name |
| brand | string | null | Brand |
| price | number | null | Current price in the shop's currency |
| priceText | string | null | Price as shown |
| oldPrice | number | null | Price before discount |
| oldPriceText | string | null | Old price as shown |
| discountPercent | number | null | Discount in percent |
| currency | string | null | ISO currency code |
| priceEur | number | null | Price in euros as reported by Jumia |
| rating | number | null | Average stars (null when unrated) |
| reviewsCount | number | null | Number of ratings |
| inStock | boolean | null | Can be bought now |
| isOfficialStore | boolean | null | Sold by a Jumia Official Store |
| isExpress | boolean | null | Shipped by Jumia Express |
| isSponsored | boolean | null | Sponsored placement |
| badges | array | null | Badges shown on the product card |
| category | string | null | Deepest category |
| categoryPath | array | null | Category path |
| sellerId | string | null | Seller id |
| imageUrl | string | null | Main image |
| images | array | null | Image gallery |
| url | string | null | Product page |
| country | string | null | Shop country |
| countryCode | string | null | Shop code (ng, ke, eg, gh, ma, ci, sn) |
| domain | string | null | Shop domain |
| searchQuery | string | null | Keyword that found the product |
| sourceUrl | string | null | Listing or product URL that was read |
| page | number | null | Result page |
| position | number | null | Position in the listing |
| seller | string | null | Seller name (details) |
| sellerUrl | string | null | Seller shop page (details) |
| sellerScore | number | null | Seller score in percent (details) |
| sellerFollowers | number | null | Seller followers (details) |
| sellerRatings | object | null | Seller performance ratings (details) |
| stockText | string | null | Stock note such as 'Few units left' (details) |
| description | string | null | Product description (details) |
| keyFeatures | array | null | Key features (details) |
| specifications | object | null | Specifications (details) |
| breadcrumbs | array | null | Breadcrumbs (details) |
| enriched | boolean | null | Product details were added |
| scrapedAt | string | null | When the row was scraped (UTC) |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Product details | Add-on per product when Product details is on: seller name, score, followers and ratings, stock note, full description, key features, specifications, image gallery and breadcrumbs. | $0.003 |
| Product | One saved Jumia product with name, brand, SKU, price, old price and discount, rating, stock, Official Store and Express flags, category path and images. | $0.0035 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('shelfbright/jumia-scraper').call({
"searchQueries": [
"laptop"
],
"country": "ng",
"maxResults": 20,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"RESIDENTIAL"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run shelfbright/jumia-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=shelfbright/jumia-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Two keyword searches on jumia.com.eg, 8 products each.
Category page with the Product details add-on: seller, specs, key features.
Price range, 4+ stars, Official Store and Express only, cheapest first.
A category URL read across several result pages.
Product URLs from Nigeria and Kenya with seller, specs and description.

Scrape Google Maps places for any search term and city, with no code or with one API call. A real run, its output, its log and its exact cost, plus the limits and the legal side.
Read the article
Paste an Amazon search or product URL into a ready-made Actor and get one row per product with price, ASIN, rating and review count. This guide covers the no-code steps, the API, ZIP code pricing, a real run and its cost.
Read the article
Scrape Google search results by query and country and get each results page as JSON: organic results with positions, People Also Ask and related searches. Run it without code or from Python, with a real run, the cost per page and Google's terms.
Read the articleScrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.