Narwhal API vs date-holidays

Narwhal hosts official government holidays for 37 countries in 2026 and 31 in 2027 through REST and MCP, alongside calendars and FX. date-holidays runs locally in JavaScript, covering 207 countries and subdivisions without request limits.

Decision

Choose Narwhal for hosted government-sourced holidays alongside calendars and FX. Choose date-holidays for offline JavaScript and broader coverage, with package maintenance and data licence obligations.

At a glance

Narwhal's holiday coverage is small and recent compared with this local library's 207-country catalogue. Narwhal API is owned and operated by Nusantara Ventures, LLC.

RequirementNarwhal APIdate-holidays
Free tier✓ 5,000 requests/month✓ Free local library; no request limits
Cheapest paid planBasic: $59/month; $590/year availableNo paid plan
Update speedDataset schedule; timestamps retainedUpdate the package yourself
HistoryFree: 12 months; Basic: 5 years; available records onlyComputed Islamic dates: 1970-2080
CoverageEconomics, FX, holidays and published commodities207 countries with subdivisions
InterfacesREST and MCP; WebSocket not publishedLocal JavaScript; no REST, WebSocket or MCP
SDKs✓ Official Python and TypeScript SDKs✓ The library is an npm package
Commercial use on free tier✓ Commercial apps; resale needs Enterprise✓ ISC code; CC BY-SA 3.0 data

Price at your usage

Local execution has no request charges; you manage hosting, updates and the data's attribution and share-alike obligations.

Requests per monthNarwhal APIdate-holidays
1,000Free: $0/monthLocal library: $0
10,000Basic: $59/monthLocal library: $0
100,000Basic: $59/monthLocal library: $0

Switch in a few minutes

List US public holidays in 2026

date-holidays

date-holidays runs as a local JavaScript library rather than an HTTP API, so there is no rival request example.

Narwhal API

# Change: URL and key
url="https://api.narwhalapi.com"
url="$url/v1/calendars/holidays/USA/2026"
curl \
  "$url" \
  -H "Authorization: Bearer YOUR_API_KEY"

Why teams switch

Start building for free

Narwhal Free includes 5,000 successful requests each month and permits commercial apps. Use that allowance for a dashboard, scheduled data fetches or an agent integration. Move to Basic for 100,000 monthly requests as usage grows, with the same account and authentication.

Connect your app and your agent

REST and hosted MCP reach the same data through one account. Your application can fetch JSON while an agent uses the hosted tools, with every successful call counted once against the shared allowance. One quota makes the combined workload straightforward to budget.

Keep calendar jobs together

Narwhal publishes holidays for 37 countries. Fetch a whole year, look up a date or find the next holiday through three documented operations. Add economic release dates and FX to the same workflow, using one account for both your scheduling logic and country data.

When they are the better pick

date-holidays suits offline JavaScript applications needing broad country and subdivision coverage without network calls. It lists 207 countries, runs locally and has no request limits or subscription cost. You manage hosting and updates. Code uses ISC; data uses CC BY-SA 3.0 with attribution and share-alike obligations. Data partly derives from Wikipedia rather than official gazettes, and computed Islamic dates can differ from moon sighting.

Questions

Is there a free date-holidays alternative?

Yes. Narwhal Free includes 5,000 successful requests per month, commercial app use and both REST and hosted MCP access. Narwhal covers 37 countries in 2026 and 31 in 2027, with official government sources, hosted operations and a shared monthly allowance.

How do date-holidays sources and Islamic dates differ?

date-holidays partly uses Wikipedia rather than relying solely on official government publications. Its Islamic dates are computed for 1970 through 2080 and can differ from moon sighting. Narwhal uses official government sources for its smaller, recent country and year coverage.

What changes in my application?

Replace the request URL and authentication, then map the JSON response into your application's fields. The examples use standard fetch in JavaScript and requests in Python, so integration fits an ordinary HTTP client. Keep your key on the server and carry the response's units, dates and missing values into your display or calculations.

What happens at Narwhal's monthly limit?

The shared cap applies to successful REST and MCP requests together. There are no automatic overage charges. Basic includes 100,000 monthly requests; quotas reset each month even when you pay yearly.

Test Narwhal with the same job

Check the published coverage, inspect the response contract, and make a first request before choosing a provider.