USPTO Trademark Monitoring · Similar Marks & Deadlines avatar

USPTO Trademark Monitoring · Similar Marks & Deadlines

Pricing

from $30.00 / 1,000 matched trademarks

Go to Apify Store
USPTO Trademark Monitoring · Similar Marks & Deadlines

USPTO Trademark Monitoring · Similar Marks & Deadlines

Trademark monitoring for new US trademark filings and publications similar to yours (a USPTO trademark watch): exact, contains, sound-alike and edit-distance matching with a 0-100 score and reason, Nice class and date filters, opposition deadline, onlyNew for schedules. Only matches are charged.

Pricing

from $30.00 / 1,000 matched trademarks

Rating

0.0

(0)

Developer

TheQuietStack

TheQuietStack

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Trademark monitoring for the USPTO: a trademark watch that flags new US filings similar to your mark, with a similarity score and the opposition deadline.

USPTO Trademark Watch tells you when someone files or publishes a US trademark that looks or sounds like yours - early enough to oppose it. A trademark monitoring service for the price of the matches it finds.

You give it your marks (NIKE, JUST DO IT, ...). It checks the official USPTO trademark search index for new applications or for marks published for opposition in your date window, scores every candidate against your mark, and returns only the close ones - with the reason, the Nice classes, the owner, the status and, once a mark is published, the opposition deadline.

Run it on a schedule with onlyNew and every conflicting mark is reported and charged once.

What you get

  • One row per similar US trademark: mark, 0-100 similarity score, match reason in plain words, owner, attorney, serial number, Nice classes, goods and services, status, filing date.
  • For published marks: publication date, opposition deadline, days left and whether the window is open.
  • A link to the official TSDR record of every mark.
  • A SUMMARY per watch term: candidates in the index, checked, above threshold, written, and everything skipped.

Use cases

  • Brand owners: a weekly watch on your own marks instead of a paid watch subscription.
  • Trademark attorneys and IP agencies: one scheduled task per client (seenStoreName per client) and a list of conflicting filings with deadlines for the next client report.
  • Brand clearance before filing: run a new name with dateField: filed and a long lookbackDays to see close recent filings.
  • Marketplace sellers: spot look-alike filings in your product classes before they are registered.

What it does

  • Two watch modes

    • filed - new applications by filing date. The earliest warning: months before the opposition period opens.
    • published - marks published for opposition in the Official Gazette, including publications USPTO has already scheduled for the coming weeks. Each row carries the publication date and the derived opposition deadline.
  • Similarity with a reason you can read - every row has a 0-100 similarity and a matchReason:

    ScoreReasonExample (watching NIKE)
    100exactN.I.K.E, Nike
    95exactthe term equals one of USPTO's own pseudo-mark readings (NITE -> NIGHT)
    90containsNIKE GRIND
    85containsGOGOONIKE
    85phoneticNYKEE, NIKO (same consonant sounds and same first vowel sound - NUKE is not phonetic)
    80phoneticNYKE SPORT (one word sounds alike)
    <90levenshteinNIKLE = 80, BIKE = 75 (1 - edit distance / longer length)

    matchDetail says exactly why (mark contains "NIKE" as a whole word, edit distance 1 on "NIKEE").

  • Nice class filter (1-45), live marks only (default), ignore your own company as owner.

  • onlyNew - remembers reported serial numbers per watch term in a named key-value store.

  • Hard limits - maxResults across all terms, maxResultsPerTerm, and maxCostUsd computed from the live price. Closest matches are written first.

Input

{
"watchTerms": ["NIKE", "JUST DO IT"],
"dateField": "published",
"lookbackDays": 30,
"lookaheadDays": 60,
"niceClasses": [25, 28, 35],
"minSimilarity": 80,
"excludeOwners": ["Nike, Inc"],
"onlyNew": true,
"maxResults": 200,
"maxCostUsd": "5"
}
FieldDefaultMeaning
watchTerms-Your marks. At least 2 letters/digits each. Duplicates (Nike / NIKE) are merged.
dateFieldfiledfiled (filing date) or published (publication for opposition).
lookbackDays / lookaheadDays30 / 60 for published, 0 for filedWindow around today. dateFrom / dateTo (YYYY-MM-DD) override it.
niceClassesallOnly marks in at least one of these classes.
minSimilarity8080 keeps NIKEE and NYKE but drops BIKE, LIKE, NUKE.
matchTypesall fourexact, contains, phonetic, levenshtein.
liveOnlytrueSkip abandoned / cancelled / expired marks.
excludeOwners-Part of an owner name, case-insensitive. Those rows are neither written nor charged.
onlyNew + seenStoreNamefalseReport each serial number once per watch term. Use one store name per client.
maxResults200Hard cap per run, all terms together.
maxCandidatesPerTerm1000USPTO hits scored per term (by relevance). Free. SUMMARY flags truncated if more existed.
maxCostUsd-Spending cap for this run from the live per-match price.

Output

One row per matching mark, closest first. Real row from a platform run on 01.10.2026 (watch term NIKE, published window; goods and services shortened):

{
"watchTerm": "NIKE",
"mark": "NIKE GRIND",
"similarity": 90,
"matchReason": "contains",
"matchDetail": "mark contains \"NIKE\" as a whole word",
"owner": "Nike, Inc. (CORPORATION; Oregon, USA)",
"serialNumber": "99685691",
"registrationNumber": null,
"filedDate": "2026-03-05",
"niceClasses": [28, 27, 19],
"goodsAndServices": "IC 028: [ ... ] | IC 027: [ ... ]",
"status": "PUBLISHED FOR OPPOSITION",
"live": true,
"publishedForOppositionDate": "2026-09-08",
"oppositionDeadline": "2026-10-08",
"oppositionWindow": "open",
"daysUntilDeadline": 7,
"sourceUrl": "https://tsdr.uspto.gov/#caseNumber=99685691&caseSearchType=US_APPLICATION&caseType=DEFAULT&searchType=statusSearch",
"checkedAt": "2026-10-01T09:42:50.305Z"
}

Also in each row: pseudoMarks, ownerAddress, attorney, registrationDate, statusCode, markType, drawingType, filingBasis, dataLoadedAt, and firstSeenAt with onlyNew.

Opposition deadline = publication date + 30 days (15 U.S.C. 1063(a)). It is the first deadline: extensions of time to oppose can be requested before it runs out, and it is shown only when USPTO has a publication date - never guessed. oppositionWindow is not published yet, upcoming, open or closed.

The run summary (SUMMARY in the key-value store) lists per term how many candidates the index had, how many were checked, how many passed the threshold and how many were written - plus failed terms, empty windows, own filings, duplicates and already-seen marks.

How much does it cost?

Pay per event. Platform usage is included; you pay only for matching marks that are written to the dataset.

EventCharged whenPrice
trademark-match ("Matched trademark")one row is written to the dataset$0.03
Actor startonce per run$0.00005

Examples:

  • 1,000 matches = $30.
  • Weekly watch of 10 marks with onlyNew, finding 3 new conflicting filings that week = $0.09. A week with nothing new costs only the Actor start.
  • A one-off clearance check of 1 name with 40 close marks above minSimilarity = $1.20.

Never charged: terms with no candidates in the window, failed searches, candidates below minSimilarity, your own filings (excludeOwners), duplicates across terms, marks already reported (onlyNew). Use maxResults and maxCostUsd for a hard ceiling.

Limits - read before relying on it

  • US only (USPTO). EUIPO, UKIPO, WIPO, DPMA and TMview were tested on 01.10.2026 and are not reachable without an account, an API key or a captcha - so they are not included.
  • Word marks only. Design/logo similarity is not checked; marks without a word element are skipped (counted in SUMMARY).
  • Data freshness: USPTO reloads the search index daily (about 09:20 UTC); filings show up roughly one business day after filing.
  • Similarity is lexical and phonetic, not legal. It does not judge likelihood of confusion, relatedness of goods or famous-mark status. Pick classes and threshold for your case; a lower threshold means more rows to review.
  • Polite access: one request at a time, at most about one per second, with backoff. The search is not a bulk-download channel; this Actor makes targeted queries per watch term.
  • Bot protection is never bypassed. If USPTO answers with a WAF challenge, a captcha or an HTML page instead of data, the Actor stops the whole run at once (status FAILED with a clear message, SUMMARY.blocked names the term, remaining terms are listed under notReachedBecauseBlocked). No header tricks, no proxy or IP rotation, no retries. Rows written before the stop stay in the dataset; nothing is charged for the blocked term or anything after it.

Use it via API, integrations and AI agents

curl -X POST "https://api.apify.com/v2/acts/thequietstack~uspto-trademark-watch/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"watchTerms":["NIKE"],"dateField":"published","lookbackDays":30,"maxResults":20}'

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("thequietstack/uspto-trademark-watch").call(run_input={
"watchTerms": ["NIKE", "JUST DO IT"], "dateField": "published",
"niceClasses": [25, 28], "onlyNew": True, "seenStoreName": "client-acme",
})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row["mark"], row["similarity"], row["matchReason"], row["oppositionDeadline"])
  • Schedules: a weekly Apify Schedule with onlyNew: true is a complete watch service.
  • Integrations: send new matches to Slack, email, Google Sheets, Make, Zapier or n8n via the integrations tab.
  • AI agents (MCP): https://mcp.apify.com?tools=thequietstack/uspto-trademark-watch.

FAQ

Which offices are covered? Only the USPTO (United States). EUIPO, UKIPO, WIPO, DPMA and TMview were tested and need an account, an API key or a captcha, so they are not included.

How fresh is the data? USPTO reloads its search index daily (about 09:20 UTC). New filings usually appear about one business day after filing; every row carries dataLoadedAt.

How is the opposition deadline calculated? Publication date + 30 days (15 U.S.C. 1063(a)). It is shown only when USPTO has a publication date, never guessed. Extensions can be requested before it runs out.

Does it compare logos? No. Word marks only; marks without a word element are skipped and counted in SUMMARY.

Is a high score a legal conflict? No. The score is lexical and phonetic. Likelihood of confusion depends on goods, classes and more; ask a trademark attorney before acting.

I watch my own brand. Will my own filings show up? Add your company to excludeOwners; those rows are neither written nor charged.

Do I need a USPTO API key? No. The Actor reads the public trademark search index without login or key.

  • Source: USPTO Trademark Search (tmsearch.uspto.gov), the index behind the public search page. No login and no API key are used.
  • License: USPTO trademark records are works of the U.S. Government and not subject to copyright in the United States (17 U.S.C. 105). Attribution: "Source: United States Patent and Trademark Office". This Actor is not affiliated with or endorsed by the USPTO.
  • USPTO usage policy: USPTO may block clients that generate unusually high request volumes; keep watch lists and windows reasonable. For bulk data USPTO offers its Open Data Portal (API key required).
  • Not legal advice. The deadlines are derived from the publication date as a convenience. Always confirm dates and status in TSDR and with a trademark attorney before acting.