Getting Started
This page walks you through sign-up and running a load test from app.loadcurl.com. The free plan needs a verified email, not a credit card. A verified domain is required only when you go above the free-plan limit.
Step 1 — Create your account
- Go to app.loadcurl.com/auth/register.
- Register with name, email, and password, or continue with Google.
- Password must include uppercase and lowercase letters, a number, a special character from
!%&@#$^*?_~, and be at least 8 characters. - Check your inbox and verify your email (Account → resend if you need a new link; the link is valid for 24 hours).
- Sign in at app.loadcurl.com/auth/login if you are not already signed in.
Loadcurl creates a personal workspace for you (named like Your name's workspace). You do not need to create an organization to start testing.
You land on the Dashboard — an overview of quota, alerts, live tests, and recent runs. The request builder is New test, not this page.
Step 2 — Know the free-plan cap
You can start a test without verifying the target domain while you stay inside the free plan:
| Limit | Free plan |
|---|---|
| Max RPS | Free-plan max_rps — see Plan |
| Max duration | Free-plan max_test_duration — see Plan |
| Active tests | 1 — pending, provisioned, and running all count |
| Credit card | Not required |
| Verified email | Required |
| Verified domain | Not required inside the cap above |
Creating a test enforces the RPS and duration caps. Going above the free-plan limit requires a verified domain and a plan that allows that load. Paid plans are otherwise unchanged — they are not limited to one active test.
To verify a host when you need the higher cap, open Domains, add the hostname, and complete DNS TXT or HTTP file. Personal workspaces can verify 1 domain. Company workspaces can verify up to 10. Full steps: Verify a domain.
Step 3 — Open New test
From the Dashboard or Tests list, click New test (or Create test). That opens /tests/new.
Tests (/tests) is history: search, filter by status, and open past runs. It is not the composer.
If Usage shows too little quota remaining, start is blocked until you recharge or upgrade on Plan.
Step 4 — Set up your request
You have two ways to fill the HTTP request.
Option A — Paste curl or Postman (fastest)
Click Paste in the request builder (help: Paste curl or Postman). Paste a curl command or Postman snippet. Loadcurl extracts method, URL, headers, query params, and body.
Supported formats:
curl -X POST https://api.example.com/v1/users \
-H "Content-Type: application/json" \
-d '{"name": "test"}'
Line breaks with \ are supported. OpenAPI import is not available.
Option B — Fill the form
- Optionally set a scenario name (otherwise a title is generated from the URL).
- Choose an HTTP method: GET, POST, PUT, PATCH, or DELETE.
- Enter the URL. Inside the free-plan limit the host does not have to be verified. Above that, the host must match a verified domain (or a subdomain of one).
- Use the tabs:
| Tab | Use it for |
|---|---|
| Params | Query string key-value pairs |
| Headers | Authorization, Content-Type, API keys, custom headers |
| Body | JSON object for POST, PUT, or PATCH |
Example header:
| Header | Example |
|---|---|
Authorization | Bearer eyJhbGciOiJIUzI1NiIs... |
Content-Type | application/json |
Example body (must be a JSON object):
{
"user_id": "demo",
"page": 1
}
Only test endpoints you own or have permission to test. Loadcurl sends real HTTP traffic to the URL you enter.
Step 5 — Configure load
In Load configuration:
| Field | What it does | Typical start |
|---|---|---|
| Target traffic (RPS) | Requests sent each second at peak | 1 |
| Ramp-up time | Seconds to reach target RPS (0 = immediate) | 0 |
| Test duration | Total run length | 30 seconds |
Defaults in the form are 30s duration, 0 ramp-up, 1 RPS. Max duration and max RPS come from your current plan. On Free that ceiling is the free-plan limit. An unverified hostname cannot go above that same ceiling, even on a higher plan. Load above it is available after domain verification, on a plan that allows it. The preview shows estimated total requests and Reserved from quota: duration × RPS (minimum 1).
Start small on staging, then increase RPS once you have a baseline.
Step 6 — Start the test
Click Start test. The workspace must have enough available requests (duration × RPS). If quota is short, start is blocked — open Plan to recharge or upgrade.
On the free plan, the organization can have only one active test. Pending, provisioned, and running all count. Starting another while one of those is still open returns 409:
The free plan allows one active test at a time. Wait for the current test to finish before starting another.
After the test completes or fails, the next one can start. Paid plans are unchanged.
The run is created, a hold is placed on that quota, and you are taken to /tests/{runId}.
While it runs you can:
- Watch live status (the page polls about every 3 seconds — not websockets)
- Follow the timeline: created → resources → testing → report
- Stop the run early if something looks wrong (unused hold is returned)
Statuses you will see: pending, provisioned, running, completed, failed.
Step 7 — Review history and the report
When the test finishes:
- Find it on Dashboard (recent / live) or Tests history (search and status filters).
- Open the run to see request details, request hold (reserved / consumed / returned), and the report.
- Download a PDF of the report from the run page.
Learn how to read the numbers in Reading test reports.
What's next?
- Verify a domain — DNS TXT and HTTP file challenges
- Dashboard and account — nav, Account, sessions, Support
- Workspaces and company upgrade — invite teammates
- Plan and usage — quota, checkout, holds
- MCP keys — run the same test from Claude or another MCP client