Mercado Libre Scraper
Pricing
Pay per usage
Mercado Libre Scraper
Extract Mercado Libre and Mercado Livre data from all 18 Latin American marketplaces: products, prices, discounts, sellers, official stores, daily deals and buyer reviews with ratings and photos. Export data, run via API, schedule runs, or integrate with other tools or AI workflows.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Matvey
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
9 minutes ago
Last modified
Categories
Share
Mercado Libre Scraper extracts public Mercado Libre and Mercado Livre data from all 18 Latin American marketplaces without the official API: product cards from search and category pages, full product details, buyer reviews with ratings and photos, official store catalogs and today's deals. No login, no API key and no Mercado Libre developer account are needed. Export to JSON, CSV or Excel, run it via API, schedule runs, or plug it into n8n, Make, Zapier, Google Sheets or an AI agent through MCP.

What is Mercado Libre Scraper?
Mercado Libre (mercadolibre.com.mx, .com.ar, .cl, .com.co, .com.pe … and Mercado Livre mercadolivre.com.br) is the largest e-commerce marketplace in Latin America. Its official API requires an app, OAuth tokens and seller permissions, and since 2024 the public search and item endpoints return 403 forbidden for anonymous calls. This Actor reads the public web pages instead and gives you clean, structured Mercado Libre data for price monitoring, market research, competitor tracking, catalog enrichment, review analysis and lead generation.
Five modes in one Actor:
| Mode | What you get | Input |
|---|---|---|
| 🔍 Products from search | Product cards: title, price, original price, discount %, installments, rating, sold quantity, seller, official-store flag, condition, image, position, page | keywords or search / category URLs |
| 📦 Product details | Everything on the product page: price, stock, specifications (60+ attributes), description, gallery, variations, seller reputation, shipping, warranty, category path | product URLs or IDs |
| ⭐ Reviews | Every buyer review: stars, text, variant bought, date, helpful votes, photos, plus the product's rating breakdown and AI-summary status | product URLs or IDs |
| 🔥 Deals (Ofertas) | Today's deals page of any country: discounted products with old/new price, discount %, seller, rating, sold quantity | country or /ofertas URL |
| 🏪 Official store | Store profile (brand, official store ID, seller ID, creation date, status) and its featured products | /tienda/... URL |
Reviews, deals and official-store pages are fetched with plain HTTP requests and do not consume any proxy traffic. Search and product pages sit behind Mercado Libre's bot gate, so the Actor opens them in a real browser through residential proxies of the matching country. That is included in the per-result price. You never see a CAPTCHA, a "log in to continue" wall or a proof-of-work challenge in your results, and blocked pages are retried automatically.
What data can Mercado Libre Scraper extract?
🔍 Product cards (search, category, deals, store)
| Field | Example |
|---|---|
title | Apple iPhone 15 128 GB Negro |
price / originalPrice / discountPercent | 12919 / 16999 / 24 |
currency | MXN |
installmentsText | 12 meses sin intereses de $1,076 |
rating / reviewCount / soldQuantity | 4.8 / 312 / 250000 |
seller / isOfficialStore | Kritech / true |
condition | Reacondicionado |
freeShipping / fullShipping / isSponsored | true / false / false |
labels | ["OFERTA DEL DÍA"] |
variationsText | Disponible en 4 colores |
productId / itemId | MLM27172677 / MLM2120627201 |
url / imageUrl | product link, main picture |
position / page / searchTerm / totalResults | 2 / 1 / iphone 15 / 759 |
siteId / country | MLM / MX |
📦 Product details
Everything above plus description, specs (flat object with all technical specifications: brand, model, memory, screen, battery, dimensions…), specGroups, images (full gallery), variations, availableQuantity, stockText, availability, shippingText, logisticType, listingType, categoryId, categoryPath, breadcrumb, warranty, returnAvailable, dealIds and a seller object with id, name, url, officialStoreId, reputationLevel (e.g. 5_green), powerSellerStatus (platinum), statusTitle (MercadoLíder Platinum) and sales volume.
⭐ Reviews
| Field | Example |
|---|---|
rating | 5 |
text | Excelente compra. El colchón viene tal cual en las imágenes… |
variant | Color: negro · Talla: XXL |
createdAt / dateText | 2026-06-13T22:30:12Z / Hace 2 meses |
likes | 96 |
images | ["https://http2.mlstatic.com/D_NQ_NP_715568-MLA98663772743_112025-O.webp"] |
productId / productUrl / country | MLM4700406170 / link / MX |
One extra product_rating row per product holds ratingAverage, ratingCount, reviewsWithText, ratingBreakdown (count and % per star), picturesCount and aiSummaryStatus (whether Mercado Libre has generated an AI summary of the reviews).
🏪 Official stores
name, brandName, officialStoreId, sellerId, storeType, status, hasDebts, hasModerations, createdAt, tags, homeUrl, searchUrl and the featured products of the store home page.
Supported Mercado Libre marketplaces
Every country runs on its own domain and currency. Prices are returned exactly as the marketplace shows them and are never converted, so a Brazilian row is in BRL and a Mexican row in MXN.
| Country | Site ID | Domain | Currency |
|---|---|---|---|
| 🇲🇽 Mexico | MLM | mercadolibre.com.mx | MXN |
| 🇧🇷 Brazil | MLB | mercadolivre.com.br | BRL |
| 🇦🇷 Argentina | MLA | mercadolibre.com.ar | ARS |
| 🇨🇱 Chile | MLC | mercadolibre.cl | CLP |
| 🇨🇴 Colombia | MCO | mercadolibre.com.co | COP |
| 🇵🇪 Peru | MPE | mercadolibre.com.pe | PEN |
| 🇺🇾 Uruguay | MLU | mercadolibre.com.uy | UYU |
| 🇪🇨 Ecuador | MEC | mercadolibre.com.ec | USD |
| 🇻🇪 Venezuela | MLV | mercadolibre.com.ve | VES |
| 🇧🇴 Bolivia | MBO | mercadolibre.com.bo | BOB |
| 🇵🇾 Paraguay | MPY | mercadolibre.com.py | PYG |
| 🇩🇴 Dominican Republic | MRD | mercadolibre.com.do | DOP |
| 🇨🇷 Costa Rica | MCR | mercadolibre.co.cr | CRC |
| 🇵🇦 Panama | MPA | mercadolibre.com.pa | USD |
| 🇬🇹 Guatemala | MGT | mercadolibre.com.gt | GTQ |
| 🇭🇳 Honduras | MHN | mercadolibre.com.hn | HNL |
| 🇸🇻 El Salvador | MSV | mercadolibre.com.sv | USD |
| 🇳🇮 Nicaragua | MNI | mercadolibre.com.ni | NIO |
Mix countries freely in one run: pick a country for keyword searches and paste URLs from any other marketplace. Each row carries siteId and country so you can split the dataset afterwards.
How much does it cost to scrape Mercado Libre?
The Actor uses Apify's pay-per-event pricing: you pay only for results, nothing per run, per page or per proxy gigabyte.
| Event | Price | Per 1,000 |
|---|---|---|
| Product (search card, deal or store product) | $0.0025 | $2.50 |
| Product detail (full product page) | $0.025 | $25 |
| Review | $0.001 | $1 |
Residential proxies and browser rendering for gated pages are included. The Apify Free plan ($5 monthly credit) gives you about 2,000 product cards, 200 product details or 5,000 reviews every month. Bronze, Silver and Gold Store tiers get a discount on top.
How to scrape Mercado Libre
- Open Mercado Libre Scraper on Apify and click Try for free (a free Apify account is enough).
- Choose What to scrape – for example Products from search.
- Pick the Country (Mexico, Brazil, Argentina, Chile, Colombia, Peru, Uruguay, Ecuador, Venezuela, Bolivia, Paraguay, Dominican Republic, Costa Rica, Panama, Guatemala, Honduras, El Salvador, Nicaragua).
- Type your Search keywords or paste Mercado Libre URLs (search results, categories, products, official stores or the deals page). You can mix countries: every URL keeps its own marketplace.
- Set Max products and, for reviews, Max reviews per product, then click Start.
- When the run finishes, open the Output tab and download the dataset as JSON, CSV, Excel, XML or HTML, or read it through the API.
⬇️ Input

Search Mexico for two keywords, new items only, sorted by price, 200 products per keyword:
{"mode": "search","country": "MX","searchTerms": ["iphone 15", "galaxy s24"],"condition": "new","sort": "price_asc","maxItems": 200}
Full product pages for a list of products (URLs from any country, or bare IDs like MLB3568040961):
{"mode": "product","startUrls": ["https://www.mercadolibre.com.mx/apple-iphone-15-128-gb-negro/p/MLM27172677","https://produto.mercadolivre.com.br/MLB-3568040961-_JM"]}
All reviews of a product, newest first, only 1-star reviews:
{"mode": "reviews","startUrls": ["MLM4700406170"],"maxReviewsPerProduct": 5000,"reviewsRating": "1","reviewsSort": "date_desc"}
Today's deals in Brazil and an official store in Argentina in one run (auto mode picks the right parser by URL):
{"startUrls": ["https://www.mercadolivre.com.br/ofertas","https://www.mercadolibre.com.ar/tienda/samsung"],"maxItems": 100}
Search filters
sort (relevance, price_asc, price_desc), condition (any, new, used), minPrice, maxPrice, freeShippingOnly, officialStoresOnly, includeSponsored. Filters are translated into Mercado Libre's own URL segments (_OrderId_PRICE, _PriceRange_1000-5000, _CostoEnvio_Gratis, _Tienda_all) so results match what a shopper sees. Turn on Fetch full product details to open every search result and merge the product page into the row (billed as product details).
⬆️ Output

One product card from search:
{"type": "product","title": "Apple iPhone 15 128 GB Negro","url": "https://www.mercadolibre.com.mx/apple-iphone-15-128-gb-negro/p/MLM27172677","productId": "MLM27172677","itemId": "MLM2120627201","siteId": "MLM","country": "MX","currency": "MXN","price": 12919,"originalPrice": 16999,"discountPercent": 24,"installmentsText": "12 meses sin intereses de $1,076","condition": null,"rating": 4.8,"reviewCount": null,"seller": "Kritech","isOfficialStore": true,"freeShipping": false,"isSponsored": false,"labels": [],"imageUrl": "https://http2.mlstatic.com/D_Q_NP_2X_669616-MLA95935383067_102025-E.webp","position": 2,"page": 1,"searchTerm": "iphone 15","totalResults": 759,"scrapedAt": "2026-09-03T04:30:25.570Z"}
Reviews come back one row per buyer, with the exact product variant that was bought:

One review:
{"type": "review","reviewId": 2954413987,"productId": "MLM4700406170","siteId": "MLM","country": "MX","rating": 5,"text": "Material: fresco pero no es algodón, no trae encaje…","variant": "Color: negro blanco piel marrón · Talla: XXL","dateText": "Hace 2 meses","createdAt": "2026-06-13T22:30:12Z","likes": 96,"images": [],"scrapedAt": "2026-09-03T04:27:28.979Z"}
Deals mode returns the same product shape, with the pre-discount price and the discount percentage filled in:

Rows carry a type (product, product_detail, deal, review, product_rating, store, error) so you can filter one dataset in a spreadsheet or in code. Pages that could not be scraped are reported as error rows with the URL and reason instead of silently disappearing.
Use cases for Mercado Libre data
Price monitoring and repricing
Schedule a daily run for your product keywords or competitor URLs and track price, originalPrice, discountPercent and installmentsText over time. Feed the dataset into Google Sheets or your repricing tool.
Market and competitor research
Search a category in several countries in one run, compare sellers, official stores, sold quantities and ratings, and spot which products win the first positions (position, isSponsored).
Review mining and product quality
Pull thousands of reviews with star ratings, purchase variants and photos, then run sentiment analysis or feed them to an LLM to find recurring complaints before you source a product.
Catalog enrichment
Product details include brand, model, 60+ specifications, gallery images and category path — enough to build or enrich your own catalog or a comparison site.
Seller and store intelligence
Official-store mode returns store IDs, creation dates and status; product details include seller reputation (5_green), MercadoLíder level and sales volume, so you can qualify suppliers and partners.
AI agents and RAG
Flat rows with literal field names and a minimal set of required inputs make the Actor easy to call from an AI agent through the Apify MCP server or the API.
Integrations
- API – start a run and read the dataset with any HTTP client. Python example:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("lergassy/mercadolibre-scraper").call(run_input={"mode": "search", "country": "BR", "searchTerms": ["air fryer"], "maxItems": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["price"], item["currency"])
- JavaScript –
npm i apify-client, thenclient.actor('lergassy/mercadolibre-scraper').call(input). - n8n, Make, Zapier, Google Sheets, Airtable, Slack, webhooks – use the Apify integrations to trigger runs and push results.
- MCP – add the Apify MCP server to Claude, ChatGPT, Cursor or any MCP client and let the agent call
lergassy/mercadolibre-scraperwith a keyword and a country. - Scheduling and monitoring – Apify schedules, run notifications and dataset diffs work out of the box.
Error items and troubleshooting
Mercado Libre protects search and product pages with a bot gate. The Actor opens those pages in a real browser through residential proxies of the matching country, warms up the session on the marketplace home page and retries with a fresh browser identity whenever a page comes back blocked. Only after several failed attempts does a URL end up in the dataset as an error row:
{"type": "error","url": "https://www.mercadolibre.com.mx/apple-iphone-15/p/MLM27172677","error": "blocked (403, 2581 bytes)","kind": "item","scrapedAt": "2026-09-03T05:12:44.101Z"}
Common cases and what to do:
| What you see | What it means | Fix |
|---|---|---|
error rows for a few products | Those pages stayed blocked after the retries | Re-run just those URLs; the gate is per-IP and usually passes on a second run |
| Empty dataset in search mode | The keyword returns no listings on that marketplace | Check the keyword on the site itself, or use a listing URL |
rating and reviewCount are null | Search cards only show what the card shows | Turn on Fetch full product details or use Product details mode |
| Reviews mode returns only a rating row | The product has ratings but no written reviews | Look at reviewsWithText in the product_rating row |
Fewer results than Max products | The query ran out of pages before the cap | Broaden the keyword or remove filters |
🤖 For AI Agents & LLM Apps
Compact reference for agents calling this Actor through the Apify MCP server or the Apify API (lergassy/mercadolibre-scraper).
Purpose: returns Mercado Libre listings, reviews and rating summaries across the Latin American marketplaces — by search term or by product URL — with price, instalment offer, discount, seller and shipping promise. Use it to answer "what does this cost in Mexico today", "who sells it officially", "how do buyers rate it" and "which listings are paid placements".
Minimal input:
{ "searchTerms": ["iphone 15"], "country": "MX", "maxItems": 50 }
Output: one row per listing — type, title, url, productId, itemId,
country, currency, price, originalPrice, discountPercent,
installmentsText, brand, condition, soldQuantity, rating, reviewCount,
seller, isOfficialStore, freeShipping, fullShipping, shippingText,
isSponsored, labels, location, imageUrl, position, page, searchTerm,
totalResults, scrapedAt. Review rows carry text, variant, createdAt,
likes and images; rating rows carry ratingAverage, ratingCount and
ratingBreakdown; store rows describe official stores; unreadable pages arrive as
type: "error".
Behaviors an agent should know:
modedefaults toauto: search terms run search mode, product URLs run product mode. Ask forreviewsexplicitly when you want review rows.countryselects the marketplace, the site code and the currency. Prices are in local currency — Brazilian reais and Mexican pesos are not comparable numbers.installmentsTextmatters more than price in this region: most purchases are made in interest-free instalments, so quote it when a user asks about affordability.isSponsoredmarks paid placements. Exclude them withincludeSponsored: falsebefore drawing conclusions about organic ranking, and note thatpositionis the rank as displayed, sponsored rows included.maxItems(default 50) caps listings;maxReviewsPerProduct(default 100) caps reviews separately.enrichProductsadds a page fetch per product.officialStoresOnlyandfreeShippingOnlyfilter at the source, which is cheaper and more reliable than filtering rows afterwards.- Review text is Spanish or Portuguese depending on the country. Translate before sentiment scoring.
❓ FAQ
Is it legal to scrape Mercado Libre?
The Actor only collects data that is publicly visible to any visitor: listings, prices, specifications, store pages and reviews that buyers chose to publish. It does not log in, does not access accounts and does not collect private data. Personal data in reviews is limited to what Mercado Libre shows publicly. You are responsible for using the data in line with local law (LGPD in Brazil, LFPDPPP in Mexico, GDPR if you process EU residents' data) and Mercado Libre's terms; consult a lawyer for your specific case.
Which countries are supported?
All 18 Mercado Libre marketplaces: Mexico (MLM), Brazil (MLB), Argentina (MLA), Chile (MLC), Colombia (MCO), Peru (MPE), Uruguay (MLU), Ecuador (MEC), Venezuela (MLV), Bolivia (MBO), Paraguay (MPY), Dominican Republic (MRD), Costa Rica (MCR), Panama (MPA), Guatemala (MGT), Honduras (MHN), El Salvador (MSV) and Nicaragua (MNI). Prices stay in the local currency and are not converted.
Do I need a proxy or a browser?
No. Search and product pages are opened in a browser through residential proxies of the matching country automatically, and reviews, deals and stores are fetched without any proxy. Everything is included in the per-result price.
Why do some fields come back empty?
Search cards only contain what Mercado Libre shows on the card: a listing without reviews has rating: null, a card without a discount has originalPrice: null. Use Product details (or Fetch full product details) for the complete record.
How many results can one search return?
Mercado Libre paginates listings 48 per page and stops around 2,000 results per query. Use narrower keywords, category URLs or price ranges to go deeper.
Can I get the whole catalog of a seller?
Yes: paste the seller's listing URL (for example https://listado.mercadolibre.com.mx/_CustId_49477299 or https://listado.mercadolibre.com.mx/tienda/apple/) as a start URL in search mode. Official store mode returns the store profile and its featured products.
Can I use the Actor with the Apify API, MCP or n8n?
Yes. See the Integrations section. The input is plain JSON; startUrls accepts URLs or bare product IDs.
Does it return one row per product?
Yes. Each product, review, deal or store is one row with a type field. Product details from Fetch full product details are merged into the product row.
What happens if Mercado Libre blocks a page?
Blocked sessions are retired and the page is retried with a fresh browser identity and IP. If it still fails, you get an error row with the URL and you are not charged for it.
How do I scrape Mercado Livre in Brazil?
Set Country to Brazil, or paste any mercadolivre.com.br URL. Brazilian listings live on lista.mercadolivre.com.br and product pages on produto.mercadolivre.com.br; both are recognised automatically, and results come back in BRL with Portuguese field values.
Can I scrape Mercado Libre without an API key?
Yes. That is the point of this Actor. Mercado Libre's own API needs an application, OAuth tokens and seller permissions, and its anonymous endpoints have returned 403 forbidden since 2024. This Actor reads the same public pages a shopper sees, so you only need an Apify account.
What is the difference between productId and itemId?
productId (also called the catalog product, e.g. MLM27172677) is the catalogue entry that groups every seller offering the same product. itemId (e.g. MLM2120627201) is one seller's individual listing. Search cards carry both when the listing belongs to a catalogue; marketplace-only listings have just an itemId.
Can I track price history?
The Actor returns the current state of a page. Schedule a daily or hourly run on Apify, keep each dataset, and you build your own history with scrapedAt as the timestamp. Apify's dataset storage and integrations make it easy to append everything to one sheet or database.
How often can I run it?
As often as your plan allows. Reviews, deals and store modes are plain HTTP requests and cheap to repeat. For search and product pages, spread heavy jobs out rather than hammering a marketplace: the built-in concurrency limit defaults to three pages at a time.
Does it collect buyer questions and answers?
No. Mercado Libre only renders the question thread for logged-in users, and this Actor never logs in. Reviews, ratings and the AI review summary status are collected instead.
Can I scrape a whole category?
Yes. Copy a category listing URL from the site (anything starting with listado. or lista., or a /c/ category page) and paste it into Mercado Libre URLs. Pagination is followed automatically up to your Max products limit.
Your feedback
Found a page that does not parse, or need another field (questions and answers, seller catalog pagination, price history)? Open an issue in the Issues tab or leave a review — requests from users decide what ships next.
You might also like
| Actor | What it does |
|---|---|
| Agoda Reviews Scraper | Hotel reviews from Agoda and Booking.com |
| Tokopedia Reviews Scraper | Shop reviews from Indonesia's Tokopedia |
| Google Flights Scraper | Flight prices, airlines and price insights from Google Flights |
| Email & Phone Verifier | Checks e-mails and phone numbers in bulk: deliverability, throwaway and role flags, numbering plan, US state and time zone |