75,000+ unique sailings from 61 cruise lines — deduped, normalized and updated daily. Skip the scraper team and ship in an afternoon.
Covering the major cruise lines
Collecting and maintaining cruise data takes far more engineering time than most teams expect.
Cruise sites change often. Keeping your data pipelines working becomes a permanent engineering task.
Every line uses a different format, making pricing, itineraries and cabin types hard to standardize.
Missing prices, duplicate sailings and stale availability erode customer trust and create support load.
One schema across every cruise line, clean and deduped. Plug it in and ship. No pipeline to build or maintain.
Every cruise line follows the same predictable structure, so you write one integration, not seventy-five.
Your apps keep working as data sources change. Schema updates are versioned and announced.
The whole cruise market,
in one feed.
Every itinerary appears once, with consistent identifiers across lines and refreshes.
Pricing stays in sync automatically, refreshed up to daily on Managed.
Accurate lead-in fares help your customers trust what they see and book with confidence.
Connect once and focus on building your product, not on running and repairing pipelines.
No integration project. Tell us what you need and the data starts flowing.
Pick the cruise lines, regions and fields you care about. We'll send a free sample so you can see the exact schema.
CSV, JSON or API, refreshed monthly, weekly or daily. We match it to your pipeline.
The feed lands on schedule and we maintain it as the cruise sites change. You never touch a scraper.
Want to see the real schema first? Grab a free sample.
The same shape across every line, built to drop straight into your database or search index. Dates, ports, region and itinerary are on virtually every sailing; pricing and cabin detail follow what each line actually publishes — field-by-field coverage.
{
"id": "cru_21996545f7d31e74",
"cruise_line": "MSC Cruises",
"ship_name": "MSC World Europa",
"title": "7-Night Western Mediterranean",
"departure_date": "2026-09-12",
"return_date": "2026-09-19",
"nights": 7,
"embark_port": "Barcelona",
"region": "Western Mediterranean",
"itinerary": [{ "day": 1, "port": "Barcelona", "country": "Spain" }, { "day": 2, "port": "Marseille", "country": "France" }],
"price_amount": 799,
"price_currency": "USD",
"price_per_night": 114.14,
"fares": [{ "cabin_class": "Interior", "price_amount": 799, "available": true }, { "cabin_class": "Balcony", "price_amount": 1149, "available": true }],
"scraped_at": "2026-08-07T04:12:00Z"
}
Pull from the REST API or receive files. Most customers integrate within hours.
Managed plans push the feed straight to your S3 bucket, Snowflake or Postgres warehouse on a schedule.
CruiseFeed now speaks MCP — the Model Context Protocol. Point Claude, or any MCP-capable app, at one URL and your agent can search sailings, pull itineraries and fares, track price drops and read ship specs. No SDK, no glue code.
{
"mcpServers": {
"cruisefeed": {
"url": "https://mcp.cruisefeed.io/mcp",
"headers": {
"X-CruiseFeed-Key": "cf_live_…"
}
}
}
}
Add it once, then just ask: "Find 7-night Caribbean cruises under $800 from Miami this winter."
Start free. Then top up and pay $2.50 per 1,000 results with no commitment, or take a monthly plan — either way, a fraction of one engineer's day rate for the whole cruise market.
Getting API access takes three steps
Sign up in seconds — no credit card required.
It's in your dashboard the moment you sign in — start calling the API right away.
Need weekly or daily refresh, no request cap, or delivery to your warehouse? Switch plans in a click.
A live API key to build and test with.
No card required
Top up, pull what you need, stop any time.
From $10 · credit never expires
For agencies that need a periodic full pull.
Month-to-month · cancel anytime
Live-ish data for product & search teams.
Month-to-month · cancel anytime
Daily, bespoke, SLA-backed — for OTAs & aggregators.
Month-to-month · cancel anytime
A result is one cruise record returned to you — so a page of 50 sailings costs 50. Requests are free and unlimited on every plan: a query that matches nothing costs nothing. Usage is counted across the whole API (JSON and CSV alike) and every response tells you what you have left.
Your feed refreshes on the cadence you pay for. If it ever falls behind, we make it right.
The schema stays stable. Every change is versioned and announced in advance, so your integration never breaks by surprise.
Get a free sample export of your target lines and region first. Month-to-month, cancel anytime — no contracts or setup fees.
Get a free sampleBigger volumes, extra fields, a different delivery target, or a source we don't list yet — tell us what you're building and we'll design a feed around it.
Prefer email? [email protected]
61 lines, including MSC, Royal Caribbean, Carnival, Norwegian, Princess and Disney. Need a specific line? Ask and we'll confirm coverage.
Snapshot is monthly (a frozen as-of-the-1st view), Sync is weekly and Managed Feed is daily. Pay as you go and the free key are both live — no cadence delay at all. Every response is stamped with the date it's current as of. Custom cadences are available on Managed.
You top up a balance — from $10 — and every cruise record the API returns costs $2.50 per 1,000. So $25 is 10,000 records. You're charged for results, not requests: a call that matches nothing costs nothing, and paging through the same 500 rows twice costs twice. There's no monthly fee, no freshness delay and no record cap, every response tells you the balance left, and credit never expires. When it runs out your key keeps working — requests return a 429 saying so until you top up.
Field names and types stay consistent. Any changes are versioned and announced ahead of time, so your integration won't break silently.
Every plan includes the REST API, starting with the free key. Authenticate with a key and pull sailings as JSON, filtered by line, region or date, with pagination. Plans differ on refresh cadence and how many results you can pull, not on access.
Results — one cruise record returned to you. A page of 50 sailings costs 50; a CSV export of 10,000 rows costs 10,000; a search that matches nothing costs nothing. Requests are unlimited on every plan, so you're never penalised for filtering carefully or for polling. Free is 2,000 results a month and Snapshot 40,000, both resetting on the 1st (UTC); Sync and Managed are unlimited; pay as you go simply bills each result at $2.50 per 1,000. Reference lookups — cruise lines, ships and ports — don't count at all. Usage is cumulative across the whole API, so switching filters or formats doesn't reset it, and every response carries X-Results-Remaining so you can watch it fall.
Nothing is revoked. Your key stays valid and requests return a 429 that says what happened and what's left. The allowance comes back on the 1st (UTC); if you'd rather not wait, adding pay-as-you-go credit resumes results immediately from $10. The 2,000 free results count records returned, cumulatively across every request and endpoint — changing a filter or switching JSON to CSV doesn't reset them.
Yes, and it is not a paid add-on. Departures run from 2025 to 2030, and every plan can read a sailing's price history and the daily change feed. Managed adds delivery into your own warehouse rather than extra history.
Email support on Snapshot, priority support on Sync, and dedicated support with an SLA on Managed.
Connect once and build on data that's already clean and deduped. Sign up free and get a live API key in seconds — see the real data before you pay.