Documentation Python quickstart Blog Free tools hello@quanticdata.ioLog in

Zillow Proxies: 747 Words Over Plain HTTP

What Zillow returns to a plain HTTP client through a residential proxy on 28 September 2026: 747 words from the homepage in the United States, the same 747 words from Germany, a listing page with price, beds, baths and square feet in its meta description, and 20 listings from the search collector in 3.02 seconds
What Zillow returns to a plain HTTP client through a residential proxy on 28 September 2026: 747 words from the homepage in the United States, the same 747 words from Germany, a listing page with price, beds, baths and square feet in its meta description, and 20 listings from the search collector in 3.02 seconds

Zillow is a site where the plain request is the whole answer. On 28 September 2026 we fetched zillow.com through residential exits in the United States and Germany. A plain HTTP client, no JavaScript, got 200 OK and 747 words from both countries; a listing page got 755,913 bytes with its price, beds, baths and square feet already in the meta description. That is the setting for Zillow proxies: residential, plain HTTP, US exit, no browser. When you want rows, the Zillow search collector returned 20 listings in 3.02 seconds.

Every result on the page is a vendor, and none of them weighed the site

Search Zillow proxies from the US and the first page is a per-IP proxy product, a listicle of eight providers, two proxy landing pages, three Python tutorials, a ranking of scrapers, a teardown page and a Reddit thread from someone whose rotating datacenter proxy was denied on every request. There is no People Also Ask block and no AI Overview. Autocomplete for the proxy term returns nothing at all.

The scraper term is where the demand lives: Zillow scraper returns fifteen suggestions, led by github, api, chrome extension, free, reddit and python, and scrape Zillow returns "can you scrape zillow" and "can claude scrape zillow". The teardown page, the best of the ten, names the anti-bot vendors and quotes the terms. It does not say how many words a request returns or what a page costs. So we measured it.

Plain HTTP gets 747 words, from Germany too

We audited zillow.com from a US residential exit with no cookies and no Accept-Language header, then again from a German one, and fetched one homedetails page from the US.

FetchExitStatusBytesWordsSeconds
Homepage, plain HTTPUnited States200423,6977478.2
Homepage, plain HTTPGermany200not weighed7475.8
Listing page, plain HTTPUnited States200755,91315619.3
robots.txtUnited States20010,52415 sitemaps7.0

The homepage response carries the canonical, the title, the description, the h1 "Rentals. Homes. Agents. Loans." and 747 words of navigation, market links and marketing. No JSON-LD on the home. Every byte arrived on a plain request from a residential exit, first attempt, and that is the finding that decides the budget: the browser is an expense with no return on this site, so do not buy it.

The German fetch is the geo point, and it points the other way from most targets. Same URL, same 200, the same 747 words, no redirect, no localisation. Zillow is a US marketplace and it serves the US page to everyone. The exit country does not change what you read; it changes whether a US real-estate site sees a US visitor, which is the reason to pin it anyway.

The listing page puts the price in the head

The page that matters is the homedetails page. We fetched /homedetails/500-Denson-Dr-Austin-TX-78752/29412534_zpid/ over plain HTTP from a US exit and received 755,913 bytes. The extractable body was 156 words. The meta description was the whole listing:

<meta name="description"
  content="Zillow has 31 photos of this $395,000 3 beds, 2 baths,
  1,110 Square Feet single family home located at
  500 Denson Dr, Austin, TX 78752 built in 1951. MLS #5101952.">

Price, beds, baths, living area, address, year built and MLS number, in one server-rendered tag that a plain client reads in the first kilobyte of the head. For a list of properties you already know, that is the entire job: no render, no parser for the body, one regular expression over one attribute. It is the same pattern we found on Instagram and Facebook, where the follower count sits in the meta description, and it is the cheapest structured fact Zillow gives away.

The Reddit thread on the SERP is the counterexample worth reading. The poster used a rotating datacenter pool against homedetails URLs and was denied on every request. Our residential exit was answered on the first request with the listing in the head. The difference is not the script, it is the network the address belongs to; our comparison of residential and datacenter proxies covers why real-estate sites score the two differently.

The collectors return rows, and one of them reads the whole ZIP

Seven hundred kilobytes of HTML per listing is the wrong shape for a dataset. We ran two collectors on the same afternoon, each once, with the simplest input they accept.

CollectorInputRowsSecondsPrice per row
Zillow searchAustin, TX, for sale, max 20203.02$0.001
Redfin listingsZIP 7870150 of 2407.01$0.0008

Each Zillow row carries the zpid, address split into fields, price as text and as a number, beds, baths, living area, lot size, home type, coordinates, listing type, broker, days on Zillow and, where Zillow publishes one, the Zestimate and rent Zestimate. Twenty rows for Austin ranged from $195,000 to $3,395,000, four of them with a Zestimate. Twenty listings cost $0.02.

The Redfin run is the one that changes how you plan. Asked for ZIP 78701 with the default cap of 50, it delivered 50 rows and reported that the region holds 240, because it reads the API response Redfin embeds in its own page, which carries every listing for the ZIP in one fetch. Same addresses, a second source, MLS ids included, at $0.0008 a row. A property dataset that cross-checks Zillow against Redfin per ZIP is two collector calls, and the Zillow property collector fills in the full detail for a chosen zpid at $0.005.

What robots.txt and the Terms allow, and what they license

zillow.com/robots.txt opens with a line pointing at the Terms of Use and runs to 10,524 bytes. The wildcard agent is given a precise allow list, /homes/for_sale/, /homes/for_rent/, /homes/recently_sold/ and their paginated forms, and then a Disallow on /homes/ itself, on /api/, /graphql/, /captcha/, /captchaPerimeterX/, and on homedetails in owner view. A separate group of AI crawlers, Applebot-Extended, Amazonbot, AI2Bot and meta-externalagent among them, is limited to the blog, research and guide sections with a crawl delay of one second, and four bots are disallowed entirely. Fifteen sitemap lines follow, split by listing status: for sale by agent, by owner, new construction, auction, pending, recently sold, for rent, off market.

The Terms of Use say two things a buyer needs. Section C states that you may copy information from the Services without the aid of any automated processes, and only for personal or Pro use. That is the line; we leave it plain, and no residential IP changes a contract. The same section then licenses something: the aggregate data on the Zillow Local-Info pages may be used for non-personal uses such as market analysis, and derivative works may be displayed as long as every page cites "Data Provided by Zillow Group". For market-level research, that is the route with permission attached, and it costs nothing.

Public listing data sits between those lines. Reading what the server hands an anonymous visitor is a technical fact, and under US case law it is not intrusion; we cover that ground in is web scraping legal in the US. Zillow's permission is a separate matter and it is Zillow's to give.

The cost of a Zillow page on residential bandwidth

Every fetch here went through residential proxies on the Basic line at $0.80/GB. Counting a gigabyte as 10^9 bytes:

JobBytes per requestRequests per GBCost per request
Homepage, plain HTTP (747 words)423,6972,360$0.00034
Listing page, plain HTTP (price in the meta tag)755,9131,322$0.00060
20 listings from the Zillow search collectornone billed as bandwidthn/a$0.02 per run
50 listings from the Redfin collectornone billed as bandwidthn/a$0.04 per run

A thousand listing pages is 60 cents of bandwidth and about 756 megabytes, with no browser session anywhere in the bill. The collector costs $1 for the same thousand listings as rows with coordinates and Zestimates, and no parser to keep alive when Zillow changes a class name. Choose by the shape of the output you need, not by the cheaper line, because both are cheap. Mobile exits at $2.30/GB would triple the bandwidth line for a site that answered a residential request on the first try.

The setting that works on Zillow

  • Network: residential proxies, Basic line, $0.80/GB. The homepage and a listing page both answered the first plain request from a residential exit with 200 and the content.
  • Fetch mode: engine: tls, never rendered. Plain HTTP returned 747 words on the homepage and the full listing summary in the meta description of a homedetails page; the browser adds cost and nothing else here.
  • Country: pin country=us. The words do not change from abroad, 747 from Germany as from the US, but Zillow is a US marketplace and a US exit is the visitor it expects.
  • When the proxy is not enough: the Zillow search collector returned 20 listings for Austin, TX in 3.02 seconds at $0.001 a row, and the Redfin collector returned 50 of 240 listings for ZIP 78701 in 7.01 seconds at $0.0008 a row, as a second source on the same addresses.
  • The free tier is real: every account gets $2 of free API usage per month, which is 2,000 Zillow rows or 3,300 listing pages through the web scraping API before you pay anything.

Sources & further reading

FAQ

Quick answers on zillow proxies.

Something else? Ask us →

Do I need to render JavaScript to scrape Zillow?

No. On 28 September 2026 a plain HTTP fetch of zillow.com through a US residential exit returned 200 OK and 747 words, and a homedetails page returned 755,913 bytes with the price, beds, baths, square feet, address, year built and MLS number in its meta description. Use engine: tls and leave the browser out of the budget.

Does the proxy exit country change what Zillow serves?

No. The homepage returned the same 747 words from a US residential exit and from a German one, with no redirect and no localisation. Pin country=us anyway: Zillow is a US marketplace, and the Reddit thread ranking for this term describes a non-residential pool being denied on every request while our US residential exit was answered on the first.

Where is the listing price in a Zillow page without JavaScript?

In the meta description. The homedetails page we fetched carried "Zillow has 31 photos of this $395,000 3 beds, 2 baths, 1,110 Square Feet single family home located at 500 Denson Dr, Austin, TX 78752 built in 1951. MLS #5101952." in one server-rendered tag, with 156 words of body text around it. For known addresses, one regular expression over that attribute is the whole extraction.

How fast are the Zillow and Redfin collectors?

The Zillow search collector returned 20 for-sale listings for Austin, TX in 3.02 seconds at $0.001 a row, with zpid, coordinates, beds, baths, area, broker, days on Zillow and Zestimate where published. The Redfin collector returned 50 listings for ZIP 78701 in 7.01 seconds at $0.0008 a row and reported 240 in the ZIP, because it reads the full API response Redfin embeds in its page.

Does Zillow allow scraping?

Its Terms of Use, section C, permit copying information only without automated processes and only for personal or Pro use, and its robots.txt disallows /homes/, /api/ and /graphql/ for the wildcard agent while publishing 15 sitemaps of listings. The same section licenses the aggregate data on the Local-Info pages for non-personal uses such as market analysis, with the citation "Data Provided by Zillow Group" on every page.

How much does scraping Zillow cost in proxy bandwidth?

On residential Basic at $0.80/GB, counting a gigabyte as 10^9 bytes, the homepage is 423,697 bytes and $0.00034 and a listing page 755,913 bytes and $0.00060, so a thousand listing pages is about 60 cents. The same thousand listings as collector rows cost $1.00 from Zillow or $0.80 from Redfin, with coordinates and ids included and nothing to parse.

Read the listing from the head, or take the rows

Zillow answers a plain request with the price in the meta tag, and our collectors return listings as rows in three seconds. Try both on the same key and pay only for what arrives. Every account gets $2 of free API usage per month.

Related reading

Use casesDoorDash Proxies: 485 Words, No Browser Needed

DoorDash measured on 28 September 2026 through residential exits in the United States and Canada. The homepage answers a plain HTTP client with 200 OK and 485 words; a store page answers with 2.95 MB and 1,087 words of menu and prices, no JavaScript run. The browser is the one thing you should not buy here. When you want rows instead of pages, the DoorDash restaurants collector returned 50 restaurants for Austin, TX in 5.98 seconds.

Read →
Use casesPayPal Proxies: 1 Static IP for Payflow

PayPal proxies, the developer version. Payflow Pro lets a merchant allowlist up to 16 Internet-facing server IPs in PayPal Manager and answers everything else with RESULT=1, User authentication failed. PayPal’s own help says REST and Classic APIs need no allowlisting and recommends DNS over hard-coded ranges. For an app on cloud infrastructure whose egress changes, a dedicated static ISP IP is one address to register once. Measured on 28 September 2026: paypal.com/us/home is 1,693 words over plain HTTP from the US and identical from Germany, so nothing here needs a browser either.

Read →
Use casesUber Eats Proxies: 99 Words Until You Render

Uber Eats measured on 28 September 2026 through residential exits in the United States and the United Kingdom. The homepage answers a plain HTTP client with 200 OK and 99 words from the US, and redirects a UK exit to /gb with 42 words. Rendered in a browser it returns 206 words for 1,951,573 bytes. Nothing on the storefront exists until JavaScript runs and a delivery address is set, and Uber’s terms reserve commercial use of the data to parties with written permission.

Read →