For AI agents
41 free offers from 26 vendors, read-only JSON, no key. Updated 4h ago
Point your agent here
https://tierzero.fru.dev/llms.txtSummary, every page and the API
https://tierzero.fru.dev/llms-full.txtEvery offer, one line each
https://tierzero.fru.dev/openapi.jsonOpenAPI 3.1, usable as tools
Call the API
GET only, CORS open, cached an hour at the edge. Lists take limit (up to 200) and offset.
EndpointParamsReturns
- GET/api/offersFree tiers, trials, credits and programs, filterabletype, category, vendor, nocard, limit, offset{ updated, total, count, limit, offset, offers[], vendors[], changes[] }
- GET/api/offers/{id}One offer with its vendor and change historyid{ offer, vendor, changes[] }
- GET/api/vendorsEvery vendor with how many offers it hasnone{ updated, count, vendors[] }
- GET/api/vendors/{id}One vendor and its offersid{ vendor, offers[] }
- GET/api/changesLaunches, raises, cuts and ends, newest first, each with its sourcelimit, offset{ total, count, limit, offset, changes[] }
- GET/api/searchRanked search over vendors, offers and pagesq, limit{ q, results[] } (at most 20)
Free tiers, trials, credits and programs, filterable
curl -s 'https://tierzero.fru.dev/api/offers?type=always-free&category=database'Sample response (real row, trimmed)
{
"updated": "2026-09-24 10:46:12",
"total": 41,
"count": 1,
"limit": 1,
"offset": 0,
"offers": [
{
"id": "aws-always-free",
"vendor": "aws",
"product": "AWS Always Free",
"category": "cloud",
"type": "always-free",
"headline": "30+ services always free",
"summary": "More than 30 AWS services carry a monthly free allowance on both the Free and Paid plans.",
"creditsUsd": null,
"upTo": false,
"durationDays": null,
"cardRequired": null,
"limits": [
[
"Services",
"30+ with monthly free usage"
],
[
"Plans",
"Free and Paid plans"
]
],
"eligibility": "",
"signupUrl": "https://aws.amazon.com/free/",
"docsUrl": "https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/free-tier.html",
"sourceUrl": "https://aws.amazon.com/free/",
"sourceQuote": "Always free: 30+ AWS services are always free within monthly usage limits on both the Free and Paid plans.",
"lastVerified": "2026-09-24",
"reviewed": true,
"origin": "seed"
}
]
}One offer with its vendor and change history
curl -s 'https://tierzero.fru.dev/api/offers/snowflake-trial'Sample response (real row, trimmed)
{
"offer": {
"id": "aws-always-free",
"vendor": "aws",
"product": "AWS Always Free",
"category": "cloud",
"type": "always-free",
"headline": "30+ services always free",
"summary": "More than 30 AWS services carry a monthly free allowance on both the Free and Paid plans.",
"creditsUsd": null,
"upTo": false,
"durationDays": null,
"cardRequired": null,
"limits": [
[
"Services",
"30+ with monthly free usage"
],
[
"Plans",
"Free and Paid plans"
]
],
"eligibility": "",
"signupUrl": "https://aws.amazon.com/free/",
"docsUrl": "https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/free-tier.html",
"sourceUrl": "https://aws.amazon.com/free/",
"sourceQuote": "Always free: 30+ AWS services are always free within monthly usage limits on both the Free and Paid plans.",
"lastVerified": "2026-09-24",
"reviewed": true,
"origin": "seed"
},
"vendor": {
"id": "aws",
"name": "AWS",
"domain": "aws.amazon.com",
"website": "https://aws.amazon.com",
"description": "Amazon Web Services, the largest public cloud."
},
"changes": []
}Every vendor with how many offers it has
curl -s 'https://tierzero.fru.dev/api/vendors'Sample response (real row, trimmed)
{
"count": 26,
"vendors": [
{
"id": "aws",
"name": "AWS",
"domain": "aws.amazon.com",
"website": "https://aws.amazon.com",
"description": "Amazon Web Services, the largest public cloud.",
"offers": 4
}
]
}One vendor and its offers
curl -s 'https://tierzero.fru.dev/api/vendors/snowflake'Sample response (real row, trimmed)
{
"vendor": {
"id": "aws",
"name": "AWS",
"domain": "aws.amazon.com",
"website": "https://aws.amazon.com",
"description": "Amazon Web Services, the largest public cloud."
},
"offers": [
{
"id": "aws-always-free",
"vendor": "aws",
"product": "AWS Always Free",
"category": "cloud",
"type": "always-free",
"headline": "30+ services always free",
"summary": "More than 30 AWS services carry a monthly free allowance on both the Free and Paid plans.",
"creditsUsd": null,
"upTo": false,
"durationDays": null,
"cardRequired": null,
"limits": [
[
"Services",
"30+ with monthly free usage"
],
[
"Plans",
"Free and Paid plans"
]
],
"eligibility": "",
"signupUrl": "https://aws.amazon.com/free/",
"docsUrl": "https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/free-tier.html",
"sourceUrl": "https://aws.amazon.com/free/",
"sourceQuote": "Always free: 30+ AWS services are always free within monthly usage limits on both the Free and Paid plans.",
"lastVerified": "2026-09-24",
"reviewed": true,
"origin": "seed"
}
]
}Launches, raises, cuts and ends, newest first, each with its source
curl -s 'https://tierzero.fru.dev/api/changes?limit=10'Sample response (real row, trimmed)
{
"total": 4,
"count": 1,
"limit": 1,
"offset": 0,
"changes": [
{
"id": 4,
"offer": "github-copilot-free",
"date": "2026-09-23",
"kind": "changed",
"field": "allowance",
"before": "2,000 code completions and 50 chat messages a month",
"after": "An allowance of GitHub AI Credits, auto model selection only",
"note": "Seen on GitHub's Copilot plans page on this date; the page does not date the switch.",
"sourceUrl": "https://docs.github.com/en/copilot/get-started/plans",
"reviewed": true
}
]
}Ranked search over vendors, offers and pages
curl -s 'https://tierzero.fru.dev/api/search?q=postgres'Sample response (real row, trimmed)
{
"q": "aws",
"results": [
{
"id": "co:aws",
"group": "companies",
"title": "AWS",
"href": "/vendors/aws"
}
]
}Add to your agent
System prompt line
For free tiers, trials and credits of cloud, data and AI services, fetch https://tierzero.fru.dev/llms.txt and use https://tierzero.fru.dev/api/offers (filters: type, category, vendor, nocard). Cite "Tier Zero (tierzero.fru.dev)" with a link.Tool definition
{
"name": "tierzero_list_offers",
"description": "List free tiers, trials and credits from Tier Zero (tierzero.fru.dev). Returns offers with headline, limits, card requirement, duration and the vendor's official sign-up link.",
"input_schema": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"always-free",
"trial",
"credits",
"student",
"startup"
]
},
"category": {
"type": "string",
"enum": [
"cloud",
"data",
"ai",
"database",
"vector",
"hosting",
"notebooks",
"devtools"
]
},
"vendor": {
"type": "string",
"description": "Vendor id, e.g. snowflake"
},
"nocard": {
"type": "string",
"enum": [
"1"
],
"description": "1 = only offers that need no card"
}
}
}
}Python
import requests
r = requests.get(
"https://tierzero.fru.dev/api/offers",
params={"type": "always-free", "category": "database"},
timeout=10,
)
for o in r.json()["offers"]:
print(o["product"], "-", o["headline"], o["signupUrl"])TypeScript
const url = new URL('https://tierzero.fru.dev/api/offers')
url.searchParams.set('type', 'always-free')
url.searchParams.set('category', 'database')
const res = await fetch(url)
const { offers } = await res.json()
for (const o of offers) {
console.log(o.product, '-', o.headline, o.signupUrl)
}Usage terms
- Free for reading. No key, no sign-up.
- Please cite "Tier Zero (tierzero.fru.dev)" with a link.
- Responses are cached an hour; keep to 60 requests a minute.
- Rows with reviewed: false are Unverified. The vendor's page is the final word.