Get a quote
Daily quote

A business quote for every day

One short line about writing, clients, focus or growth — rotated automatically at midnight UTC, available as JSON, and free to republish with a link.

24 Oct 2026 · Content and growth
Never publish a claim you cannot show.

BrandPromotions · Content and growth

Permalink

Every line here was written for this site. No misattributed aphorisms, no quote-site recycling — see how the rotation works.

The next seven days

The rotation is date-based, so tomorrow's quote is knowable today. Useful if you schedule posts in advance.

Refresh beats rewrite more often than agencies admit.

An honest comparison page compounds for years.

A small audience with money beats a large audience with none.

Distribution is a skill, not an afterthought.

Design the page for the skim, then reward the read.

One strong page can carry a weak section. Not the reverse.

Search engines read structure. Readers read the first sentence.

Free JSON API

No key, no sign-up, CORS enabled. Endpoints return JSON and are refreshed as the day changes in UTC.

EndpointReturnsCache
GET /api/quote/todayToday's quote, date, topic and permalink5 minutes
GET /api/quote/randomA random quote from the setNo cache
GET /api/quote/2026-12-25The quote for any date (YYYY-MM-DD)5 minutes
GET /api/quote/all?limit=30&offset=0The whole set, paginated (max 120 per call)1 hour

Try it

# today
curl https://brandpromotions.shop/api/quote/today

# a specific date
curl https://brandpromotions.shop/api/quote/2026-12-25

# the full set
curl "https://brandpromotions.shop/api/quote/all?limit=120"

Response shape

{
  "date": "2026-10-25",
  "quote": "Never publish a claim you cannot show.",
  "author": "BrandPromotions",
  "topic": "growth",
  "slug": "never-publish-a-claim-you-cannot",
  "permalink": "https://brandpromotions.shop/daily-quote/#never-publish-a-claim-you-cannot",
  "source": "https://brandpromotions.shop/daily-quote/",
  "license": "Free to quote or republish with attribution and a link"
}

Use it in a page

fetch('https://brandpromotions.shop/api/quote/today')
  .then(function (r) { return r.json(); })
  .then(function (data) {
    document.querySelector('#quote').textContent = data.quote;
    document.querySelector('#credit').href = data.permalink;
  });

Attribution is the only condition: keep the author name and link to the permalink or to this page. The text is ours, so there is no third-party copyright to clear.

Embed the quote of the day

Paste this where you want the card to appear. It renders in the reader's browser, updates itself daily and adds no tracking.

<script src="https://brandpromotions.shop/daily-quote/embed.js" async></script>
<div data-bp-quote></div>

Without the div the widget appends itself directly after the script tag. Add data-theme="dark" for a dark card. Remove the credit line and it will still work — but the licence asks you not to.

How the rotation works

There are 120 lines in the set. The quote for a given day is chosen by that day's number since 1 January 1970, modulo 120. The result is deterministic: the same date always returns the same quote, every date returns a different one, and the whole set repeats after 120 days.

That is deliberately unglamorous. A random pick would look fresher but could repeat two days running, and it would break the promise that a quote stays stable once a reader has linked to it. Deterministic rotation gives you a citable permalink.

Why write the lines ourselves

Most "quote of the day" feeds recycle the same twenty attributions, half of them wrong. Writing 120 short lines for this site took less time than checking the provenance of borrowed ones, and it means the credit is accurate.

If you want the whole set as a file, the archive lists every quote with a copy button, or use /api/quote/all.