Proxies
Rotating Residential Proxies
from $2.42
ISP Proxies (Static Residential)
from $4.00
Rotating Datacenter Proxies
from $1.21
Rotating Mobile Proxies
from $4.84
Locations
Use cases

Proxies for e-commerce price monitoring

Last updated

Short answer

Price monitoring means collecting public product prices, stock levels and promotions from retailer websites on a schedule. Prices often change by country and region, so proxies in each target market show what local shoppers see. Rotating residential proxies with country targeting suit most retail sites; check only public pages, at a modest rate.

What can you monitor?

Prices and promotions

List and sale prices, the currency and tax shown, bundles and on-page promotions.

Stock and delivery

Availability, delivery times and shipping costs in each region you sell to.

Which proxy type should you use?

SituationProxy typeWhy
Large retailers and marketplacesRotating residentialHousehold IPs in each country, a new IP per request
Prices that differ by city or ZIP codeRotating residential with city or ZIP targetingShows local prices; billed at double rate
Small shops without bot protectionDatacenterFastest and cheapest per request
Prices shown in mobile apps or mobile sitesMobileReal 4G and 5G carrier IPs

Residential proxies start at $2.42 per GB.

Why location matters

Retailers localise more than the currency. Tax display, shipping, stock and even the base price can depend on where a visitor appears to be. Add country targeting to the proxy username to see each market, for example __cr.us for the United States or __cr.de for Germany.

Some prices change within a country, such as grocery delivery by ZIP code. City and ZIP targeting cover those cases: City, state, ZIP and ASN targeting on per-GB pools uses traffic at 2x the standard rate. Location targeting lists every parameter.

How to build a reliable price monitor

  1. List the product pages

    Start from the products you sell or compete with, and keep a list of their URLs. Do not try to crawl a whole store when you only need a few hundred products.

  2. Read structured data first

    Most product pages include schema.org Product data with the price, currency and availability. It changes less often than the page layout, so your parser breaks less.

  3. Schedule by how fast prices move

    Daily is enough for most catalogs. Spread requests across the day instead of sending them in one burst.

  4. Use a clean session per check

    Send each check from the target country with no cookies from earlier visits, so the result is the price a new local shopper sees.

  5. Store history and alert on change

    Keep every observation with its time and country, and alert only when a price or stock status actually changes.

  6. Back off on errors

    Treat 429 and 5xx responses as a signal to slow down, retry later with exponential backoff, and stop if a site asks you to.

Python example: read a price from product structured data

import json
import re

import requests

# Country targeting goes after the username: __cr.us = United States
PROXY = "http://USERNAME__cr.us:PASSWORD@HOST:PORT"
proxies = {"http": PROXY, "https": PROXY}
JSON_LD = re.compile(r"<script[^>]*application/ld\+json[^>]*>(.*?)</script>", re.S | re.I)


def products(node):
    """Yield every schema.org Product in a JSON-LD document."""
    if isinstance(node, list):
        for item in node:
            yield from products(item)
    elif isinstance(node, dict):
        kind = node.get("@type")
        if kind == "Product" or (isinstance(kind, list) and "Product" in kind):
            yield node
        yield from products(node.get("@graph", []))


def offer(url: str) -> dict | None:
    html = requests.get(url, proxies=proxies, timeout=30).text
    for block in JSON_LD.findall(html):
        try:
            data = json.loads(block)
        except json.JSONDecodeError:
            continue
        for product in products(data):
            offers = product.get("offers") or {}
            first = offers[0] if isinstance(offers, list) else offers
            return {
                "price": first.get("price"),
                "currency": first.get("priceCurrency"),
                "availability": first.get("availability"),
            }
    return None


print(offer("https://shop.example.com/product/123"))

Stay within the law and each site's rules

  • Public pages only. Do not log in, use member-only prices you are not entitled to, or get around paywalls or other access controls.
  • Follow the site's rules. Respect robots.txt and the site's terms, keep request rates modest, and stop if the site asks you to.
  • Leave out personal data. Prices and stock are enough. Do not collect reviewer names, profiles or other personal data without a lawful basis.
  • Price independently. Use what you collect to set your own prices. Sharing pricing data with competitors to align prices can break competition law.
  • Prefer official feeds. Where a retailer or marketplace offers a product feed, affiliate feed or seller API, use it.

The FuseProxy acceptable use policy lists what is not allowed on the network.

FAQ

Questions, answered

Is price monitoring with proxies legal?
Collecting publicly displayed prices is lawful in many jurisdictions, but the rules vary by country and by how you collect and use the data. Use public pages only, follow each site's terms and robots.txt, leave out personal data, and take legal advice for your market. Use the data to set your own prices independently, never to coordinate prices with competitors.
Which proxy type is best for price monitoring?
Rotating residential proxies with country targeting work on the widest range of retail sites, because each request comes from a household IP in the market you are measuring. Add city or ZIP targeting only when prices really differ by area, such as grocery or same-day delivery.
How often should I check prices?
Match the schedule to how often prices change, typically daily for most catalogs and a few times a day for fast-moving categories such as electronics or travel. Checking more often than prices change adds load on the retailer's site and cost for you without giving you new information.
Why do I see different prices through a proxy?
Retailers set prices, currencies, taxes and shipping by the visitor's location, so a proxy in another country shows that market's prices. Cookies from earlier visits can also change what you see, so start each check with a clean session.

Start with the proxies you need

Create an account, top up and connect in minutes. Every price is on the pricing page.