# Plans for 30,000 plain HTML pages a month

Every plan checked against these conditions, with the official sentence each verdict rests on. 59 of 77 plans meet every condition.

- 30,000 plain HTML pages a month
- Checked 2026-09-28 – 2026-10-14
- Data version 392e2a978b5e
- Change these conditions: https://plans.intoperson.com/search?plain_html=30000
- Page for people: https://plans.intoperson.com/answers/30-000-plain-html-pages-a-month-70fc786d

## Full matches (59)

Every required condition is met. Showing the first 10.

### ZenRows Build B1

Plan id: `zenrows-build-b1` · Full match · Billing: billed yearly · Monthly cost: $15.83–$16/month

$15.83–$16/month billed annually ($190–$192 per year up front) includes 45,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 45,000 credits included → $15.83–$16/month.

Annual price: [zenrows.com/\_static/pricing.a8f7dac7ba2d.js](https://www.zenrows.com/_static/pricing.a8f7dac7ba2d.js) · checked 2026-10-14
> {cr:45e3,m:19,a:16}

Annual price: How the value follows from the source: Table 12 × $16 = $192/year; FAQ 10 × $19 = $190/year.
- Met · Covers the monthly volume: 155,000 requests per month (needs at least 30,000 requests per month).

Included per month: [docs.zenrows.com/first-steps/pricing](https://docs.zenrows.com/first-steps/pricing) · checked 2026-10-14
> Build B1 $19 45,000

Units per plain HTML page: [docs.zenrows.com/first-steps/pricing](https://docs.zenrows.com/first-steps/pricing) · checked 2026-10-14
> Standard request 1 JavaScript Rendering 5 Premium Proxies 10 JS Rendering + Premium Proxies (protected) 25

Visit: [Pricing page](https://plans.intoperson.com/go/zenrows-build-b1?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### ScrapingAnt Enthusiast

Plan id: `scrapingant-enthusiast` · Full match · Billing: billed monthly · Monthly cost: $19/month

$19/month includes 100,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 100,000 credits included → $19/month.

Monthly price: [scrapingant.com](https://scrapingant.com/) · checked 2026-10-14
> Enthusiast 100K credits / mo $19 /mo
- Met · Covers the monthly volume: No cap on requests per month (needs at least 30,000 requests per month).

Included per month: [scrapingant.com](https://scrapingant.com/) · checked 2026-10-14
> Enthusiast 100K credits / mo $19 /mo

Units per plain HTML page: [docs.scrapingant.com/credits-cost](https://docs.scrapingant.com/credits-cost) · checked 2026-10-14
> Request settings API credits cost Simple request (no browser usage) + standard (datacenter) proxy 1

Visit: [Pricing page](https://plans.intoperson.com/go/scrapingant-enthusiast?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Scrape.do Hobby

Plan id: `scrapedo-hobby` · Full match · Billing: billed yearly · Monthly cost: $24.17/month · $290 paid up front

$24.17/month billed annually ($290 per year up front) includes 250,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 250,000 credits included → $24.17/month.

Annual price: [scrape.do/pricing/](https://scrape.do/pricing/) · checked 2026-10-14
> Hobby is $290/year instead of $29/month

Annual price: How the value follows from the source: Per-month equivalent = yearly price / 12. Annual billing is set up manually through support.
- Met · Covers the monthly volume: No cap on requests per month (needs at least 30,000 requests per month).

Included per month: [scrape.do/pricing/](https://scrape.do/pricing/) · checked 2026-10-14
> 250,000 Successful API Credits 10 Concurrent Requests

Units per plain HTML page: [scrape.do/documentation/request-costs/](https://scrape.do/documentation/request-costs/) · checked 2026-10-14
> Normal request (datacenter proxy) 1 Datacenter + headless browser ( render=true ) 5 Residential / mobile ( super=true ) 10 Residential / mobile + headless browser ( super + render ) 25

Visit: [Pricing page](https://plans.intoperson.com/go/scrapedo-hobby?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### ZenRows Build B2

Plan id: `zenrows-build-b2` · Full match · Billing: billed yearly · Monthly cost: $24–$24.17/month

$24–$24.17/month billed annually ($288–$290 per year up front) includes 80,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 80,000 credits included → $24–$24.17/month.

Annual price: [zenrows.com/\_static/pricing.a8f7dac7ba2d.js](https://www.zenrows.com/_static/pricing.a8f7dac7ba2d.js) · checked 2026-10-14
> {cr:8e4,m:29,a:24}

Annual price: How the value follows from the source: Table 12 × $24 = $288/year; FAQ 10 × $29 = $290/year.
- Met · Covers the monthly volume: 210,000 requests per month (needs at least 30,000 requests per month).

Included per month: [docs.zenrows.com/first-steps/pricing](https://docs.zenrows.com/first-steps/pricing) · checked 2026-10-14
> Build B2 $29 80,000

Units per plain HTML page: [docs.zenrows.com/first-steps/pricing](https://docs.zenrows.com/first-steps/pricing) · checked 2026-10-14
> Standard request 1 JavaScript Rendering 5 Premium Proxies 10 JS Rendering + Premium Proxies (protected) 25

Visit: [Pricing page](https://plans.intoperson.com/go/zenrows-build-b2?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Oxylabs Starter

Plan id: `oxylabs-starter` · Full match · Billing: billed monthly · Monthly cost: $30/month · before tax

30,000 plain HTML pages × $1 per 1,000 = $30; usage $30 is within the $30/month plan fee, which is spent at these rates → $30/month.

Price per result type: [oxylabs.io/products/scraper-api/web/pricing](https://oxylabs.io/products/scraper-api/web/pricing) · checked 2026-10-14
> Google non-JS $1.00/1K res. Up to 5K results $1.00/1K res. Up to 22K results

Price per result type: Plain and JavaScript pages use the Custom domain scraping rows, searches use the Google non-JS row. The plan fee is spent at these rates.

Monthly price: [oxylabs.io/products/scraper-api/web/pricing](https://oxylabs.io/products/scraper-api/web/pricing) · checked 2026-10-14
> Starter $ 30 /mo VAT may apply
- Met · Covers the monthly volume: At least 30,000 requests per month (needs at least 30,000 requests per month).

Price per result type: [oxylabs.io/products/scraper-api/web/pricing](https://oxylabs.io/products/scraper-api/web/pricing) · checked 2026-10-14
> Google non-JS $1.00/1K res. Up to 5K results $1.00/1K res. Up to 22K results

Price per result type: Plain and JavaScript pages use the Custom domain scraping rows, searches use the Google non-JS row. The plan fee is spent at these rates.

Extra usage beyond the plan: [developers.oxylabs.io/help-center/most-popular-questions/how-pricing-and-billing-work.md](https://developers.oxylabs.io/help-center/most-popular-questions/how-pricing-and-billing-work.md) · checked 2026-10-14
> A one-time payment added to your balance immediately, without changing your plan.

Extra usage beyond the plan: A one-time top-up can be added to the balance without changing the plan; the pages state no maximum amount.

Visit: [Pricing page](https://plans.intoperson.com/go/oxylabs-starter?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Scrapfly Discovery

Plan id: `scrapfly-discovery` · Full match · Billing: billed monthly · Monthly cost: $30/month

$30/month includes 200,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 200,000 credits included → $30/month.

Monthly price: [scrapfly.io/pricing](https://scrapfly.io/pricing) · checked 2026-10-14
> DISCOVERY $30 /mo $0.15 per 1k credits, prepaid 200,000 API credits / month 5 concurrent requests
- Met · Covers the monthly volume: 200,000 requests per month (needs at least 30,000 requests per month).

Included per month: [scrapfly.io/pricing](https://scrapfly.io/pricing) · checked 2026-10-14
> DISCOVERY $30 /mo $0.15 per 1k credits, prepaid 200,000 API credits / month 5 concurrent requests

Units per plain HTML page: [scrapfly.io/pricing](https://scrapfly.io/pricing) · checked 2026-10-14
> 1 credit HTTP scrape on datacenter IP

Visit: [Pricing page](https://plans.intoperson.com/go/scrapfly-discovery?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### ZenRows Build B3

Plan id: `zenrows-build-b3` · Full match · Billing: billed yearly · Monthly cost: $32.50–$33/month

$32.50–$33/month billed annually ($390–$396 per year up front) includes 120,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 120,000 credits included → $32.50–$33/month.

Annual price: [zenrows.com/\_static/pricing.a8f7dac7ba2d.js](https://www.zenrows.com/_static/pricing.a8f7dac7ba2d.js) · checked 2026-10-14
> {cr:12e4,m:39,a:33}

Annual price: How the value follows from the source: Table 12 × $33 = $396/year; FAQ 10 × $39 = $390/year.
- Met · Covers the monthly volume: 550,000 requests per month (needs at least 30,000 requests per month).

Included per month: [docs.zenrows.com/first-steps/pricing](https://docs.zenrows.com/first-steps/pricing) · checked 2026-10-14
> Build B3 $39 120,000

Units per plain HTML page: [docs.zenrows.com/first-steps/pricing](https://docs.zenrows.com/first-steps/pricing) · checked 2026-10-14
> Standard request 1 JavaScript Rendering 5 Premium Proxies 10 JS Rendering + Premium Proxies (protected) 25

Visit: [Pricing page](https://plans.intoperson.com/go/zenrows-build-b3?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Scrapingdog Lite

Plan id: `scrapingdog-lite` · Full match · Billing: billed yearly · Monthly cost: $33.33/month · $400 paid up front

$33.33/month billed annually ($400 per year up front) includes 200,000 credits; 30,000 plain HTML pages × 1 = 30,000 credits; within the 200,000 credits included → $33.33/month.

Annual price: [scrapingdog.com/pricing/](https://www.scrapingdog.com/pricing/) · checked 2026-10-14
> LITE $40 /month 200,000 Requests Credits 5 Concurrency Access To All APIs Geotargeting

Annual price: How the value follows from the source: Yearly price = 10 × monthly price; per-month equivalent = yearly / 12.
- Met · Covers the monthly volume: At least 200,000 requests per month (needs at least 30,000 requests per month).

Included per month: [scrapingdog.com/pricing/](https://www.scrapingdog.com/pricing/) · checked 2026-10-14
> LITE $40 /month 200,000 Requests Credits 5 Concurrency Access To All APIs Geotargeting

Units per plain HTML page: [scrapingdog.com/pricing/](https://www.scrapingdog.com/pricing/) · checked 2026-10-14
> General web scraping Rotating proxy 1 credit / req

Visit: [Pricing page](https://plans.intoperson.com/go/scrapingdog-lite?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Zyte Pay as you go

Plan id: `zyte-payg` · Full match · Billing: pay as you go · Monthly cost: $3.90–$38.10/month

30,000 plain HTML pages × $0.13–$1.27 per 1,000 (HTTP, tier 1–5) = $3.90–$38.10 depending on the difficulty tier the provider assigns to each site → $3.90–$38.10/month.

Price per website difficulty tier: [zyte.com/pricing/](https://www.zyte.com/pricing/) · checked 2026-10-14
> From $ 0.13 to $ 1.27 per 1,000 requests Per-tier prices ( HTTP response body ) 1 Simple $ 0.13 2 Easy $ 0.23 3 Moderate $ 0.44 4 Complex $ 0.70 5 Advanced $ 1.27

Price per website difficulty tier: Tier 1 (simple) to tier 5 (advanced); Zyte assigns the tier per website.
- Met · Covers the monthly volume: No cap on requests per month (needs at least 30,000 requests per month).

Price per website difficulty tier: [zyte.com/pricing/](https://www.zyte.com/pricing/) · checked 2026-10-14
> From $ 0.13 to $ 1.27 per 1,000 requests Per-tier prices ( HTTP response body ) 1 Simple $ 0.13 2 Easy $ 0.23 3 Moderate $ 0.44 4 Complex $ 0.70 5 Advanced $ 1.27

Price per website difficulty tier: Tier 1 (simple) to tier 5 (advanced); Zyte assigns the tier per website.

Visit: [Pricing page](https://plans.intoperson.com/go/zyte-payg?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Spider Unlimited (2 concurrent)

Plan id: `spider-unlimited-2` · Full match · Billing: billed monthly · Monthly cost: $40/month

30,000 plain HTML pages × 1; unlimited requests for a flat $40/month → $40/month.

Monthly price: [spider.cloud/pricing](https://spider.cloud/pricing) · checked 2026-10-14
> 2 concurrency, $40 per month
- Met · Covers the monthly volume: No cap on requests per month (needs at least 30,000 requests per month).

Included per month: [spider.cloud/pricing](https://spider.cloud/pricing) · checked 2026-10-14
> Pick any amount from 2 ($40/mo) up to 1,538 ($19,994/mo) and run unlimited requests through it for a flat monthly price.

Units per plain HTML page: [spider.cloud/pricing](https://spider.cloud/pricing) · checked 2026-10-14
> Pick any amount from 2 ($40/mo) up to 1,538 ($19,994/mo) and run unlimited requests through it for a flat monthly price.

Units per plain HTML page: How the value follows from the source: Each request counts once against unlimited requests.

Visit: [Pricing page](https://plans.intoperson.com/go/spider-unlimited-2?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

## Partial matches (16)

Nothing required is known to fail, but at least one required condition is not stated on the official pages. Showing the first 10.

### Bright Data Free Tier

Plan id: `brightdata-unlocker-free` · Partial match · Billing: free plan · Monthly cost: at least $0/month

Unknown: covers the monthly volume

Needs 30,000 requests; the plan includes 5,000 and the extra-usage terms are not stated on the official page.

Monthly price: [brightdata.com/pricing/web-unlocker](https://brightdata.com/pricing/web-unlocker) · checked 2026-10-14
> Free Tier 5K requests Start free 5K requests per month No credit card required
- Unknown · Covers the monthly volume: At least 5,000 requests per month; needs at least 30,000 requests per month, which holds only at some of these figures. The extra-usage terms are not stated on the official page.

Included per month: [brightdata.com/pricing/web-unlocker](https://brightdata.com/pricing/web-unlocker) · checked 2026-10-14
> Free Tier 5K requests Start free 5K requests per month No credit card required

Extra usage beyond the plan: What happens after the free 5K requests is not stated.

Units per plain HTML page: [brightdata.com/pricing/web-unlocker](https://brightdata.com/pricing/web-unlocker) · checked 2026-10-14
> Every plan gives you full access - pay less per record as you scale Data Collection Automated proxy management Full browser rendering CAPTCHA solving Performance at Scale Unlimited concurrency

Units per plain HTML page: How the value follows from the source: One successful request is one billed unit whether or not it needs rendering or unblocking.

Visit: [Pricing page](https://plans.intoperson.com/go/brightdata-unlocker-free?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-28

### Jina AI Free without API key

Plan id: `jina-reader-keyless` · Partial match · Billing: free plan · Monthly cost: at least $0/month · before tax

Unknown: covers the monthly volume

The monthly allowance is not recorded.

Monthly price: [jina.ai/reader](https://jina.ai/reader) · checked 2026-10-14
> Reader is free for basic usage: prepend 'https://r.jina.ai/' to your URL. Supplying an API key raises the rate limit and charges tokens based on content length.
- Unknown · Covers the monthly volume: Cannot be computed from published prices (included units unknown).

Included per month: No monthly quota is stated for use without an API key, and no statement says use is unlimited; the pages give only a rate limit of 20 requests per minute per IP address.

Units per plain HTML page: [jina.ai/reader](https://jina.ai/reader) · checked 2026-10-14
> Reader is free for basic usage: prepend 'https://r.jina.ai/' to your URL. Supplying an API key raises the rate limit and charges tokens based on content length.

Units per plain HTML page: How the value follows from the source: Keyless requests are not charged; each page is one request against the rate limit.

Visit: [Pricing page](https://plans.intoperson.com/go/jina-reader-keyless?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### Scrape.do Free

Plan id: `scrapedo-free` · Partial match · Billing: free plan · Monthly cost: at least $0/month

Unknown: covers the monthly volume

Needs 30,000 credits; the plan includes 1,000 and the extra-usage terms are not stated on the official page.

Monthly price: [scrape.do/pricing/](https://scrape.do/pricing/) · checked 2026-10-14
> The free plan includes 1,000 successful API calls per month with full access to residential and mobile proxies, geo-targeting, CAPTCHA handling, JavaScript rendering
- Unknown · Covers the monthly volume: At least 1,000 requests per month; needs at least 30,000 requests per month, which holds only at some of these figures. The extra-usage terms are not stated on the official page.

Included per month: [scrape.do/pricing/](https://scrape.do/pricing/) · checked 2026-10-14
> The free plan includes 1,000 successful API calls per month with full access to residential and mobile proxies, geo-targeting, CAPTCHA handling, JavaScript rendering

Extra usage beyond the plan: Buying additional credits on the free plan is not described.

Units per plain HTML page: [scrape.do/documentation/request-costs/](https://scrape.do/documentation/request-costs/) · checked 2026-10-14
> Normal request (datacenter proxy) 1 Datacenter + headless browser ( render=true ) 5 Residential / mobile ( super=true ) 10 Residential / mobile + headless browser ( super + render ) 25

Visit: [Pricing page](https://plans.intoperson.com/go/scrapedo-free?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### ScrapingAnt Free

Plan id: `scrapingant-free` · Partial match · Billing: free plan · Monthly cost: at least $0/month

Unknown: covers the monthly volume

Needs 30,000 credits; the plan includes 10,000 and the extra-usage terms are not recorded.

Monthly price: [scrapingant.com](https://scrapingant.com/) · checked 2026-10-14
> The free plan includes 10,000 API credits every month with no credit card required.
- Unknown · Covers the monthly volume: At least 10,000 requests per month; needs at least 30,000 requests per month, which holds only at some of these figures. The extra-usage terms are not recorded.

Included per month: [scrapingant.com](https://scrapingant.com/) · checked 2026-10-14
> The free plan includes 10,000 API credits every month with no credit card required.

Units per plain HTML page: [docs.scrapingant.com/credits-cost](https://docs.scrapingant.com/credits-cost) · checked 2026-10-14
> Request settings API credits cost Simple request (no browser usage) + standard (datacenter) proxy 1

Visit: [Pricing page](https://plans.intoperson.com/go/scrapingant-free?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

### Scrapingdog Free

Plan id: `scrapingdog-free` · Partial match · Billing: free plan · Monthly cost: at least $0/month

Unknown: covers the monthly volume

Needs 30,000 credits; the plan includes 100 and the extra-usage terms are not stated on the official page.

Monthly price: [scrapingdog.com/pricing/](https://www.scrapingdog.com/pricing/) · checked 2026-10-14
> FREE $0 forever 100 Requests Credits 1 Concurrency Access To All APIs No Credit Card Required
- Unknown · Covers the monthly volume: At least 100 requests per month; needs at least 30,000 requests per month, which holds only at some of these figures. The extra-usage terms are not stated on the official page.

Included per month: [scrapingdog.com/pricing/](https://www.scrapingdog.com/pricing/) · checked 2026-10-14
> FREE $0 forever 100 Requests Credits 1 Concurrency Access To All APIs No Credit Card Required

Extra usage beyond the plan: Buying extra credits within a month is not described.

Units per plain HTML page: [scrapingdog.com/pricing/](https://www.scrapingdog.com/pricing/) · checked 2026-10-14
> General web scraping Rotating proxy 1 credit / req

Visit: [Pricing page](https://plans.intoperson.com/go/scrapingdog-free?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### Apify Business

Plan id: `apify-business` · Partial match · Billing: billed monthly · Monthly cost: Not computable

Unknown: covers the monthly volume

Cost per page depends on the Actor and the resources it uses; no per-page price is published.
- Unknown · Covers the monthly volume: Cannot be computed from published prices (units unknown).

Units per plain HTML page: Cost per page depends on the Actor and the resources it uses; no per-page price is published.

Visit: [Pricing page](https://plans.intoperson.com/go/apify-business?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### Apify Free

Plan id: `apify-free` · Partial match · Billing: free plan · Monthly cost: Not computable

Unknown: covers the monthly volume

Cost per page depends on the Actor and the resources it uses; no per-page price is published.
- Unknown · Covers the monthly volume: Cannot be computed from published prices (units unknown).

Units per plain HTML page: Cost per page depends on the Actor and the resources it uses; no per-page price is published.

Visit: [Pricing page](https://plans.intoperson.com/go/apify-free?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### Apify Scale

Plan id: `apify-scale` · Partial match · Billing: billed monthly · Monthly cost: Not computable

Unknown: covers the monthly volume

Cost per page depends on the Actor and the resources it uses; no per-page price is published.
- Unknown · Covers the monthly volume: Cannot be computed from published prices (units unknown).

Units per plain HTML page: Cost per page depends on the Actor and the resources it uses; no per-page price is published.

Visit: [Pricing page](https://plans.intoperson.com/go/apify-scale?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### Apify Starter

Plan id: `apify-starter` · Partial match · Billing: billed monthly · Monthly cost: Not computable

Unknown: covers the monthly volume

Cost per page depends on the Actor and the resources it uses; no per-page price is published.
- Unknown · Covers the monthly volume: Cannot be computed from published prices (units unknown).

Units per plain HTML page: Cost per page depends on the Actor and the resources it uses; no per-page price is published.

Visit: [Pricing page](https://plans.intoperson.com/go/apify-starter?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-09-29

### Browserbase Developer

Plan id: `browserbase-developer` · Partial match · Billing: billed monthly · Monthly cost: Not computable

Unknown: covers the monthly volume

Needs browser_seconds_per_page to compute browser time.
- Unknown · Covers the monthly volume: Cannot be computed from published prices (needs browser seconds).

Browser time billing: [browserbase.com/pricing](https://www.browserbase.com/pricing) · checked 2026-10-14
> 100 browser hours then $0.12/browser hr

Browser time billing: Billed in browser hours; per-session rounding is not published.

Visit: [Pricing page](https://plans.intoperson.com/go/browserbase-developer?r=ill2ir5c) (Opens the provider's pricing page; choose this plan there or after signing up.) · Checked 2026-10-14

## Notes

- Budgets are compared with listed USD prices before tax; annual plans use their per-month equivalent.
- Monthly volume is covered from the plan allowance plus published extra-usage rules; one-time free credits are not counted as monthly.
- Values come from official pricing pages and docs on the check date shown with each fact. Confirm the final price, taxes, promotions and account limits with the seller before buying.
- Order within full matches is by monthly cost (a cost range at its upper end), then by preferred conditions met, then by plan id. Affiliate relationships do not affect order.
