Skip to content

Billing and plans

Start a plan on the Billing page, pay with a saved card, and see how site slots, shared visits, CDN bandwidth, and disk work across your sites.

Parts of this feature are still being built. The Not yet section lists them.

A plan pays for real sites. Each plan has site slots, and every real site uses one slot of one plan. An account can hold more than one plan, so you can add a plan when the ones you have are full. Test sites are always free and use no slot.

Visits and CDN bandwidth are counted for your whole account each month and shared by all the sites on your plan. A plan with 3 sites and 100,000 visits has 100,000 visits in total, not 100,000 for each site. Disk works by site: each site slot brings 20 GB, so a plan's disk is its number of sites times 20 GB. See Limits, sharing, and overage.

Cards are typed into Stripe's card fields on Avaloi's own page. The card number goes straight to Stripe; Avaloi never sees or stores it. See Payment methods.

Start a plan

  1. Open Settings, then Billing, and select Start a plan. When you already have a plan, the button says Add a plan.
  2. Data center location. Pick the location first, such as Ashburn, Virginia, United States. You can pick any location in the list. Each location has its own prices, and the plan's sites go there. If the location has no data center yet, a note says "You are the first in this region, so this data center opens for you." and the plan costs more at first, with the price locked and credits coming back as others join. See Region prices and the shared node credit.
  3. Plan step. Pick monthly or annual billing, then pick a plan card. Each card shows the region's price, such as "$115 a month in Ashburn, Virginia, United States", with the note "Never goes up. You get up to $17.25 back each month when this region is busy." It also shows the number of WordPress sites (the site slots), the visits and CDN bandwidth a month (shared by all sites on a plan with more than one site), the disk with its size per site, and the staging environments. A card with a bandwidth price shows server bandwidth a month instead of visits. Enterprise has no card price: it is billed on a custom invoice, so the card says to contact sales.
  4. Summary step. The New plan details card shows the plan, the price, the subtotal, the tax line, and the total. In a location with no data center, it also shows your exact opening price in the sentence "You are the first in this region, so this data center opens for you. Your price is $X a month and it never goes up. You get credits back as others join." The Payment method card shows your default card. Select Add new card to save another one without leaving the modal.
  5. Have a promo code? Select Have a promo code?, type it, and select Apply. The Summary shows the discount, the new total, what is due today, and the regular price. Select Remove to take it off again. See Promo codes.
  6. Read the auto-renew note: the plan renews every month or year on your default card until you cancel it.
  7. Select Subscribe. The price you see is locked: it never goes up while the plan is active.

After you pay, the modal says Payment received, setting up your plan while Stripe confirms the payment. This usually takes a few seconds. If the plan has not appeared after a minute, the modal says so and offers Refresh. Your payment is safe; the plan shows as soon as Stripe's confirmation arrives.

If your bank asks you to confirm the payment (3D Secure), its check opens in the page. Finish it and the plan starts as usual.

Your first plan on an account gets the first month free when the plan offers it. A second plan is paid from the first day.

A promo code and the free first month never combine. If you apply a code to a plan that has a free first month, the code replaces the free month and you pay the discounted price today. The Summary says so before you pay, and Remove brings the free month back. See Promo codes.

The tax line

The Summary shows the tax Stripe works out for your billing address. While tax collection is off for Avaloi's Stripe account, the line reads Tax (not charged) and shows $0.00.

Add a site on a plan

When you add a real site, pick the data center location first. The Plan list then shows every plan for that location that still has a free slot, such as "Business 1, 3 of 5 slots free". The site uses one slot of the plan you pick.

When no plan has a free slot, pick Buy a new plan and select Continue to plan. The Start a plan steps run inside the same modal, and the site is created on the new plan as soon as it is ready. Only Owners, Admins, and Billing members can buy a plan. Other roles see a note to ask one of them.

A WordPress Multisite network counts as one site, however many sites it holds. Its disk, database, and visits add up across all of its sites.

Limits for a site (disk, staging environments, and the like) come from the plan it is on. Account features, such as the number of members and API keys, follow the largest plan on the account.

See your plans

The My plan tab lists every plan: its location, its locked price, its billing period, how many slots it uses ("2 of 5 used"), its renewal date, its status, and its last shared node credit. Below the table, cards add disk space or WordPress sites to your account and show this period's usage. See My plan. Invoices lists every invoice, and Usage shows this period's usage.

On the Invoices tab, Download PDF opens the invoice PDF in a new tab, ready to save or print. An invoice that had a promo code shows the discount under its total, such as "Promo code SPRING10 -$3.50", and the PDF lists it too. An open invoice that is not paid yet also has a small Pay online link, which opens Stripe's payment page for that invoice. A draft has no PDF yet, so its row shows "No file yet".

Limits, sharing, and overage

Limit How it is counted
Visits a month One count for your whole account, shared by all sites. A visit is one unique visitor in a day (one IP address and browser pair), with known bots left out.
Server bandwidth a month On a bandwidth price, in place of visits. One count for your whole account, shared by all sites.
CDN bandwidth a month One count for your whole account, shared by all sites, read from Cloudflare for your own domains and your temporary avaloi.com names.
Disk 20 GB for each site slot, so the plan total is sites times 20 GB. Staging and multidev environments count against the same total. Each site is capped at 20 GB unless you add more disk space, which any site on the account can use.
Staging environments The same number per site on every plan.

Each plan is priced either by visits or by server bandwidth, and includes a CDN bandwidth allowance either way. Pick the basis with the Visits pricing and Bandwidth pricing filter on the Plan step.

Going over an allowance never stops or suspends a site. Past the plan, visits are $1 per 1,000, server bandwidth is $0.10 per GB (on the bandwidth price), CDN bandwidth is $0.10 per GB, and disk is $2 per GB. Avaloi emails your Owners, Admins, and Billing members at 80 percent and again at 100 percent of an allowance, and at 110 percent of visits, once for each step in a billing period, so an overage is never a surprise.

The Usage tab and the My plan page show each meter as "this month, all sites", for example "Visits this month, all sites". A single site's Analytics tab shows that site's own usage against the same shared allowance. See Analytics.

How usage is measured and billed

Avaloi measures four meters for your account every hour and adds them up for the billing period.

Meter Where the number comes from
Visits The access log of your server, counted as unique visitors per day, with known bots left out. If the server's count for a day is missing, Avaloi uses Cloudflare's visit count for that day instead, and says so.
Server bandwidth The bytes your server sent to visitors, from the same access log, with bots left out.
CDN bandwidth The bytes Cloudflare sent for your domains, from the Cloudflare analytics Avaloi saves each hour.
Disk The disk your environments use now, from the server's regular disk reading, added up across all environments. A deleted environment stops counting.

The Usage tab shows each meter as a bar against your plan, the overage so far with its rate (for example "10,000 over the plan: $10.00 so far at $1 per 1,000 visits"), the overage that will bill, and an estimate of your next invoice. The estimate is your plan, your add-ons, and the overage so far.

Once a day, Avaloi sends the overage beyond your plan to Stripe as usage, one report for each meter and day. A report is sent once. If it fails, the next run sends it again without billing it twice. Stripe adds the usage to your next invoice. A figure that was reported a few hours before a period ended can land on the following invoice. Avaloi checks its reports against Stripe's totals every day.

If a meter cannot be measured, the bar says Not measured and gives the reason. It never shows a made up zero. For CDN bandwidth, this happens while Cloudflare refuses the read. That is a setting on Avaloi's side, not yours. Avaloi bills nothing for a figure it has not measured, and when Cloudflare answers again it picks up from the days Cloudflare still keeps.

The spend cap

The spend cap on the Usage tab limits spending. Agents and API keys stop buying when they reach it. Avaloi also stops billing overage once what you have spent this month plus the overage already billed reaches the cap. It tells your Owners, Admins, and Billing members once, and your sites keep running. The overage past the cap is not billed. Raise or remove the cap, and the next daily run bills the rest. With no cap, overage bills in full.

Cancel a plan

Select Cancel on the plan's row, choose whether it ends now or at the end of the billing period, and confirm. A plan with sites on it cannot be cancelled. Move those sites to another plan or delete them first. Within 30 days of your first payment, the plan's hosting charges are refunded in full.

To cancel every plan at once, use Cancel hosting plan at the bottom of My plan. See Cancel your plan.

Closing a business cancels every plan it holds.

For scripts and agents

  • GET /v1/billing/usage returns this period's usage: one line per meter with used, included, overage, overage_cents, percent, status (ok, permission_needed, or not_collected), a note, and the source, plus overage_total_cents (what will bill after the spend cap), spend_cap_cents, spend_cap_reached, and updated_at. The MCP tool get_billing_usage returns the same answer. A line whose status is not ok was not measured, so its used is not a real zero.
  • GET /v1/billing/plan has the same usage and the next_invoice_estimate_cents.
  • GET /v1/billing/subscriptions lists the plans with site_slots, sites_used, free_slots, and accepts_sites.
  • GET /v1/billing/quote?region=us-east4&plan=business_1 returns the region's price for a plan, with opening.first_in_region set when you would open a new data center. See Region prices.
  • GET /v1/billing/plan-preview?lookup_key=plan_business_1_monthly&region=us-east4 returns the Summary numbers. Add promo_code to price the order with a promo code.
  • POST /v1/billing/promo-codes/validate checks a promo code for a plan or an add-on and returns the order it produces. See Promo codes.
  • POST /v1/billing/subscriptions starts a plan on the default card, for the region you send (the default region otherwise). It takes an optional promo_code. It needs confirm: true and the billing:write scope. When the bank asks for 3D Secure, the answer has requires_action: true, and a person finishes the payment in the dashboard.
  • POST /v1/billing/subscriptions/{id}/cancel cancels one plan. It answers 409 with the code plan_has_sites while sites use it.
  • POST /v1/sites takes an optional subscription_id. Without it, the one plan with a free slot is used. Otherwise the API answers 402 with a code: no_free_plan_slot (buy a new plan), choose_plan (more than one plan has a free slot; the detail names them), or plan_unavailable (the named plan is full or ended).
  • PATCH /v1/sites/{id} with subscription_id moves a site to another plan with a free slot. It needs billing access as well as permission to update the site.

Not yet

  • Moving a site to another plan from the dashboard. Use the API for now.
  • Changing a plan in place from the dashboard. Add the new plan, move the sites, and cancel the old plan.

Quick answers

Why do I see 402 when I add a site? No plan has a free slot. Buy a new plan for the site, or create a free test site.

Can I have two plans of the same kind? Yes. Each plan adds its own site slots.

Will my test site use a slot? No. Test sites are free and run on a simulated server.

Still stuck?

Email [email protected] with your site name and what you tried, or send us a message.