diff --git a/content/docs/overview/browser-tools/overview.mdx b/content/docs/overview/browser-tools/overview.mdx index ba209ef9..84f60fee 100644 --- a/content/docs/overview/browser-tools/overview.mdx +++ b/content/docs/overview/browser-tools/overview.mdx @@ -13,7 +13,11 @@ Browser Tools are stateless, single-call endpoints that spin up a managed browse | `POST /v1/screenshot` | Loads a URL and returns a hosted PNG of the page. | | `POST /v1/pdf` | Loads a URL and returns a hosted PDF of the page. | -Each call counts as 1 credit and is rate limited to 20 requests per minute per organization. Reach for [Sessions](/overview/sessions-api/overview) instead when you need cookies, multi-step navigation, or extension state. +Browser Tools cost $5 per 1,000 calls on Launch and Scale, with custom Enterprise pricing. +Steel-managed proxy bandwidth is billed separately at your plan's rate. Calls are rate +limited to 20 requests per minute per organization. See [Pricing/Limits](/overview/pricinglimits) +for rates and proxy access requirements. Reach for [Sessions](/overview/sessions-api/overview) +instead when you need cookies, multi-step navigation, or extension state. ### Scrape @@ -177,7 +181,7 @@ All three endpoints accept the same handful of options for controlling how the p | Option | Type | What it does | | ---------- | --------- | ---------------------------------------------------------------------------------- | -| `useProxy` | `boolean` | Route the request through a Steel-managed residential proxy. Paid plans only. | +| `useProxy` | `boolean` | Route the request through a Steel-managed residential proxy. Requires proxy access. | | `delay` | `number` | Milliseconds to wait after navigation before capturing. Useful for hydrated sites. | A common pattern for client-rendered pages is to combine `delay` with a residential proxy: @@ -203,18 +207,11 @@ result = client.scrape( ``` -:::callout -type: warn -### Hobby plans cannot use Steel proxies on Browser Tools -`useProxy: true` returns `402 Payment Required` on the hobby plan. Upgrade, or pass your own proxy by opening a [Session](/overview/sessions-api/overview) and scraping through it. -::: - - ### Errors | Status | Meaning | | ------ | ---------------------------------------------------------------- | -| 402 | `useProxy: true` requested on a plan that does not allow it. | +| 402 | `useProxy: true` requested before proxy access is enabled. | | 408 | The browser timed out before completing the action. | | 429 | Concurrent session limit for your plan reached, or 20 RPM hit. | | 503 | No browser capacity available right now. Safe to retry. | @@ -227,6 +224,7 @@ Browser Tools are stateless. Each call opens a fresh browser, performs the actio - Persist cookies or local storage across navigations - Submit forms, click through flows, or interact with the page - Pin a proxy to a specific country (`useProxy: { geolocation: { country } }`) +- Route requests through your own proxy provider - Reuse an authenticated profile or extension You can still scrape, screenshot, or generate a PDF from inside a session. The Browser Tools endpoints are just the shortcut when you don't need the rest. diff --git a/content/docs/overview/pricinglimits.mdx b/content/docs/overview/pricinglimits.mdx index 20150e53..437e225b 100644 --- a/content/docs/overview/pricinglimits.mdx +++ b/content/docs/overview/pricinglimits.mdx @@ -4,11 +4,11 @@ description: "Steel pricing: start free with $30 in usage credits (about 300 bro sidebarTitle: Pricing/Limits llm: true --- -**Last Edit:** June 30th, 2026 +**Last Edit:** October 23rd, 2026 ### Pricing Table -| Tier | Price | Included usage | +| Tier | Monthly price | Included usage | | ---------- | -------------- | ----------------------------------------- | | Launch | $0 + usage | $30 free usage credits, one time | | Scale | $250 + usage | $100 free usage credits / month | @@ -33,7 +33,7 @@ llm: true | Support | Dedicated Slack channel | - | Included | Included | | Support | 911 email | - | - | Included | | Support | Support & uptime SLAs | - | - | Included | -| Security | Enterprise SSO | - | Included | Included | +| Security | Enterprise SSO | - | - | Included | | Security | HIPAA-ready BAA | - | Included | Included | \* Browser hours are billed by the minute, rounded up. @@ -58,9 +58,14 @@ type: warn ### Verify your Launch account with a $10 deposit To use CAPTCHA solving or Steel-provided proxies on Launch, verify your account by adding $10 in paid balance. Free credits do not count. The deposit goes toward usage, not an extra -fee. Scale includes anti-bot; Enterprise is custom. +fee. Scale includes access to managed proxies and CAPTCHA solving, billed at its usage +rates. Enterprise pricing and access are custom. ::: +Stealth Browser is Steel's custom Chromium fork. It is available on Enterprise at no +additional cost, with access enabled per workload. Enterprise SSO is also Enterprise-only; +Scale includes a HIPAA-ready BAA. + ### Usage Examples If you spent your included credits on a single usage category, you would get roughly: @@ -131,7 +136,8 @@ Enterprise pricing. Verify your Launch account by adding $10 in paid balance. This enables CAPTCHA solving and Steel-provided proxies. Free credits do not count. The deposit goes toward usage, not an extra -fee. Scale includes anti-bot; Enterprise is custom. +fee. Scale includes access to managed proxies and CAPTCHA solving, billed at its usage +rates. Enterprise pricing and access are custom. ### How much do Browser Tools cost? diff --git a/content/docs/overview/self-hosting/steel-local-vs-steel-cloud.mdx b/content/docs/overview/self-hosting/steel-local-vs-steel-cloud.mdx index 8a88b436..6b421ad5 100644 --- a/content/docs/overview/self-hosting/steel-local-vs-steel-cloud.mdx +++ b/content/docs/overview/self-hosting/steel-local-vs-steel-cloud.mdx @@ -8,7 +8,7 @@ llm: true | Feature | Steel Local | Steel Cloud | |------------------|-------------------------------------------|--------------------------------------------------------------| -| Concurrency | 1 | 100+ | +| Concurrency | 1 | 10 on Launch, 100 on Scale, 1,000+ on Enterprise | | Stealth | Limited | Advanced Stealth (docs) | | CAPTCHA Solving | None | Supported with the CAPTCHAs API | | Proxies | Bring your own | Bring your own + Steel Managed Proxies | @@ -18,6 +18,7 @@ llm: true The defining factor between running Steel locally and using Steel Cloud is concurrency. +See [Pricing/Limits](/overview/pricinglimits) for Cloud plan availability and rates. For the Extensions API, if you put the extensions you would like to build/load in the `api/src/extensions/` folder then Steel Local will build these and inject them into the session. Credentials are not supported in Steel Local. diff --git a/content/docs/overview/sessions-api/dedicated-ips.mdx b/content/docs/overview/sessions-api/dedicated-ips.mdx index 5a76f5fa..f138cd9c 100644 --- a/content/docs/overview/sessions-api/dedicated-ips.mdx +++ b/content/docs/overview/sessions-api/dedicated-ips.mdx @@ -36,9 +36,10 @@ Together: ## Lease Dedicated IPs Dedicated IPs are leased from **Settings > Network** in the Steel dashboard. They are -available on paid plans; Hobby workspaces need to upgrade before leasing dedicated IPs. +available on Scale and Enterprise; Launch workspaces need to upgrade before leasing them. -Each dedicated IP is billed as a monthly subscription at **$5 per dedicated IP / month**. +On Scale, each dedicated IP is billed as a monthly subscription at **$5 per dedicated IP / month**. +Enterprise pricing is custom. See [Pricing/Limits](/overview/pricinglimits) for plan details. You can lease up to 25 dedicated IPs self-serve from the Network page. If you need more, contact support. diff --git a/content/docs/overview/sessions-api/quickstart.mdx b/content/docs/overview/sessions-api/quickstart.mdx index 040e0ab2..684f9ac1 100644 --- a/content/docs/overview/sessions-api/quickstart.mdx +++ b/content/docs/overview/sessions-api/quickstart.mdx @@ -14,7 +14,7 @@ This guide will walk you through setting up your Steel account, creating your fi 1. Sign up for a free account at steel.dev -2. The free plan includes $30 in usage credits (about 300 browser hours) to get you started +2. Launch includes $30 in one-time free usage credits, valid for 90 days. See [Pricing/Limits](/overview/pricinglimits) for current rates and limits. 3. No credit card required @@ -32,15 +32,18 @@ This guide will walk you through setting up your Steel account, creating your fi 2. Add your Steel API key: +```bash +STEEL_API_KEY=ste-your-api-key-here +``` Make sure to add `.env` to your `.gitignore` file to keep your key secure ### Installing Dependencies -Install the Steel SDK and Playwright: +Install the Steel SDK, Playwright, dotenv to load your `.env` file, and tsx to run TypeScript: ```package-install -steel-sdk playwright +steel-sdk playwright dotenv tsx ``` Using Python? `pip install steel-sdk playwright`, then `playwright install chromium`. The PyPI package is `steel-sdk`, but the import is `from steel import Steel`. @@ -48,59 +51,64 @@ Using Python? `pip install steel-sdk playwright`, then `playwright install chrom ### Create Your First Session -Let's create a simple script that launches and then releases a Steel session: +Save the following as `steel-client.ts`. It creates a session, connects with Playwright, visits a page, and releases the session even if a browser operation fails: ```typescript Typescript -wcn -f steel-client.ts import Steel from 'steel-sdk'; -import dotenv from 'dotenv'; +import { chromium } from 'playwright'; +import 'dotenv/config'; -dotenv.config(); +async function main() { + const apiKey = process.env.STEEL_API_KEY; + if (!apiKey) { + throw new Error('Set STEEL_API_KEY in your .env file'); + } -const client = new Steel({ - steelAPIKey: process.env.STEEL_API_KEY, -}); + const client = new Steel({ + steelAPIKey: apiKey, + }); -async function main() { - // Create a session const session = await client.sessions.create(); console.log('Session created:', session.id); console.log(`View live session at: ${session.sessionViewerUrl}`); - // Your session is now ready to use! - // When done, release the session - await client.sessions.release(session.id); - console.log('Session released'); + try { + const browser = await chromium.connectOverCDP( + `wss://connect.steel.dev?apiKey=${encodeURIComponent(apiKey)}&sessionId=${session.id}`, + ); + const page = await browser.contexts()[0].newPage(); + await page.goto('https://example.com'); + console.log('Page title:', await page.title()); + } finally { + // Releasing the session closes its remote browser and connection. + await client.sessions.release(session.id); + console.log('Session released'); + } } -main().catch(console.error); +main().catch((error) => { + console.error(error); + process.exitCode = 1; +}); ``` -### Connecting to Your Session - -Now that you have a session, you can connect to it using your preferred automation tool. - - -```typescript Typescript -wcn -f puppeteer.ts -import puppeteer from 'puppeteer'; - -const browser = await puppeteer.connect({ - browserWSEndpoint: `wss://connect.steel.dev?apiKey=${process.env.STEEL_API_KEY}&sessionId=${session.id}`, -}); +Run it from the directory containing your `.env` file: -const page = await browser.newPage(); -await page.goto('https://example.com'); +```bash +npx tsx steel-client.ts ``` ### Session Features -Want to do more with your session? Here are some common options you can add when creating: +To configure your session, replace the `client.sessions.create()` call inside `main()` +with the following options: ```typescript Typescript -wcn const session = await client.sessions.create({ useProxy: true, // Use Steel's residential proxy network solveCaptcha: true, // Enable automatic CAPTCHA solving - timeout: 1800000, // Set 30-minute timeout (default is 5 minutes) + timeout: 600000, // Set 10-minute timeout (default is 5 minutes) inactivityTimeout: 300000, // Release after 5 minutes of inactivity userAgent: 'custom-ua' // Set a custom user agent }); @@ -119,9 +127,9 @@ Reach out to us on the #help channel on [Disc :::faq ### How long does a Steel session last by default? -The default session timeout is 5 minutes. You can extend it with the `timeout` option on session create (for example `timeout: 1800000` for 30 minutes) and set `inactivityTimeout` to release after a period of inactivity. +The default session timeout is 5 minutes. You can extend it with the `timeout` option on session create (for example `timeout: 600000` for 10 minutes) and set `inactivityTimeout` to release after a period of inactivity. The maximum is 15 minutes on Launch, 1 hour on Scale, and up to 24 hours on Enterprise. See [Pricing/Limits](/overview/pricinglimits). ### Can I enable proxies and CAPTCHA solving on a session? -Yes. Pass `useProxy: true` to route through Steel's residential proxy network and `solveCaptcha: true` to enable automatic CAPTCHA solving when creating the session. You can also set a custom user agent with `userAgent`. +Yes. Pass `useProxy: true` to route through Steel's residential proxy network and `solveCaptcha: true` to enable automatic CAPTCHA solving when creating the session. You can also set a custom user agent with `userAgent`. See [Pricing/Limits](/overview/pricinglimits) for access requirements and rates. ::: diff --git a/content/docs/overview/sessions-api/session-lifecycle.mdx b/content/docs/overview/sessions-api/session-lifecycle.mdx index e862060d..1dc5d413 100644 --- a/content/docs/overview/sessions-api/session-lifecycle.mdx +++ b/content/docs/overview/sessions-api/session-lifecycle.mdx @@ -17,7 +17,7 @@ Each session can be in one of three states: * **Failed**: Something went wrong during the session's lifetime (like a crash or connection loss). These sessions are automatically cleaned up. -Browser sessions are billed and metered by the minute. A session can last up to 24 hours depending on your plan. +Browser sessions are billed by the minute, rounded up. Launch sessions can last up to 15 minutes, Scale sessions up to 1 hour, and Enterprise sessions up to 24 hours. See [Pricing/Limits](/overview/pricinglimits) for current rates and limits. Understanding how sessions live and die helps you manage resources effectively and build more reliable applications. @@ -68,7 +68,7 @@ The value must be a valid UUID such as `123e4567-e89b-12d3-a456-426614174000`. O ### Session Lifetime and Timeout -When you start a session, it stays alive for 5 minutes by default but you can change it by passing the timeout parameter. After the time passes, the session will be automatically released. +When you start a session, it stays alive for 5 minutes by default but you can change it by passing the timeout parameter, up to your plan's maximum session time. After the time passes, the session will be automatically released. @@ -191,7 +191,7 @@ Reach out to us on the #help channel on [Disc ### What is the maximum length of a Steel session? -Up to 24 hours, depending on your plan. Sessions are billed and metered by the minute. +Launch sessions can last up to 15 minutes, Scale sessions up to 1 hour, and Enterprise sessions up to 24 hours. Sessions are billed by the minute, rounded up. See [Pricing/Limits](/overview/pricinglimits) for current rates and limits. ### Can I extend the timeout of a running Steel session? diff --git a/content/docs/overview/skills/available-skills/steel-reliability.mdx b/content/docs/overview/skills/available-skills/steel-reliability.mdx index 73d4e104..d19fdee2 100644 --- a/content/docs/overview/skills/available-skills/steel-reliability.mdx +++ b/content/docs/overview/skills/available-skills/steel-reliability.mdx @@ -27,7 +27,7 @@ After adding the Steel Skills marketplace in Claude Code: ## Example Prompts - "Plan the least invasive mitigation for this 403." -- "Show me the safe BYOP pattern on Hobby." +- "Show me the safe BYOP pattern on Launch." - "Should this login workflow use profiles, credentials, or both?" ## Related Skills diff --git a/content/docs/overview/stealth/captcha-solving.mdx b/content/docs/overview/stealth/captcha-solving.mdx index 21e231fd..2cbb9f93 100644 --- a/content/docs/overview/stealth/captcha-solving.mdx +++ b/content/docs/overview/stealth/captcha-solving.mdx @@ -344,7 +344,7 @@ const captchaSelectors = [ ### Important Considerations -1. **Plan Availability**: CAPTCHA solving is only available on Developer, Startup, and Enterprise plans. It is not included in the free tier. +1. **Plan Availability**: CAPTCHA solving is available on Launch after account verification, and on Scale and Enterprise. See [Pricing/Limits](/overview/pricinglimits) for rates and access requirements. 2. **Success Rates**: While our system has high success rates, CAPTCHA solving is not guaranteed to work 100% of the time. Always implement proper error handling. diff --git a/content/docs/overview/stealth/proxies.mdx b/content/docs/overview/stealth/proxies.mdx index e386e7f7..8b49cb0a 100644 --- a/content/docs/overview/stealth/proxies.mdx +++ b/content/docs/overview/stealth/proxies.mdx @@ -23,8 +23,11 @@ Use this table to pick the right option for your project. | Best For | Quickly accessing high-quality residential IPs from specific countries without setup. | General web access, testing, or sites that don't block datacenter IPs. | Full control over your proxy infrastructure, using specialized providers. | | IP Type | High-quality residential IPs | Datacenter | Any (Datacenter, Residential, Mobile) | | Control | Managed by Steel (automatic rotation) | Static datacenter IP assigned by Steel | Full control over IPs and rotation logic | -| Cost | Billed per GB of usage by Steel | Free (included in all plans) | No charge from Steel; you pay your own proxy provider | -| Availability| Developer, Pro, & Enterprise plans | All plans, including Hobby (free) | All plans, including Hobby (free) | +| Cost | $10/GB on Launch, $6/GB on Scale, custom on Enterprise | No proxy bandwidth charge | No Steel proxy bandwidth charge; your provider bills separately | +| Availability| Launch (verification required), Scale, Enterprise | All plans | All plans | + +Browser session usage is billed separately. See [Pricing/Limits](/overview/pricinglimits) +for billing details and Launch verification requirements. ### Steel-Managed Proxies @@ -46,7 +49,7 @@ These proxies are ideal for accessing sites that block datacenter IPs or when yo ### Default Behavior (No Proxies) -When you create a Steel session without enabling proxies, your requests originate from the datacenter/machine’s IP addresses where Steel's browser infrastructure is hosted. This option is free, available on all plans, and incurs no charges on proxy bandwidth. This approach works well for: +When you create a Steel session without enabling proxies, your requests originate from the datacenter/machine’s IP addresses where Steel's browser infrastructure is hosted. This option is available on all plans with no proxy bandwidth charge. This approach works well for: * Interacting with websites that aren’t blocking default these datacenter IPs @@ -63,7 +66,7 @@ If you have existing proxy infrastructure or specific proxy requirements, you ca * **Complete control** over your proxy infrastructure and IP sources -* **No additional costs** from Steel - you only pay for your own proxy services +* **No Steel proxy bandwidth charge** — you pay your own proxy provider * **Flexibility** to use specialized proxy providers or custom configurations @@ -260,7 +263,7 @@ Reach out to us on the #help channel on [Disc :::faq ### How much do Steel proxies cost? -Steel-managed residential proxies are billed per GB of usage, while the default behavior (no proxy, Steel's datacenter IPs) is free and included in all plans. Bring Your Own Proxy carries no charge from Steel — you only pay your own proxy provider. +Steel-managed residential proxies cost $10/GB on Launch and $6/GB on Scale, with custom Enterprise pricing. Default datacenter traffic and Bring Your Own Proxy have no Steel proxy bandwidth charge. With BYOP, you pay your own proxy provider. ### Why is my proxy bandwidth higher than the content I downloaded? @@ -272,7 +275,7 @@ No — proxies are disabled by default (`useProxy: false` is the implicit settin ### Can I use my own proxies with Steel? -Yes — Bring Your Own Proxy (BYOP) lets you pass a `server` URL in `http://`, `https://`, or `socks5://` format on any plan, including the free Hobby plan. Your proxy credentials are handled securely and never logged or stored by Steel beyond the duration of your session. +Yes — Bring Your Own Proxy (BYOP) lets you pass a `server` URL in `http://`, `https://`, or `socks5://` format on any plan. Your proxy credentials are handled securely and never logged or stored by Steel beyond the duration of your session. ### Can Steel proxies target a specific country or city? @@ -280,5 +283,5 @@ Yes — Steel-managed proxies support geographic targeting across 200+ countries ### Which Steel plans include managed residential proxies? -Developer, Pro, and Enterprise plans. The proxy pool offers hundreds of millions of residential IPs with automatic rotation, while the no-proxy default and BYOP are available on all plans including the free Hobby tier. +Launch (after account verification), Scale, and Enterprise. See [Pricing/Limits](/overview/pricinglimits) for access requirements. The no-proxy default and BYOP are available on all plans. :::