USPTO Trademark Search โ Lookup, Availability & Data
Pricing
from $1.50 / 1,000 trademark records
USPTO Trademark Search โ Lookup, Availability & Data
Search and extract USPTO trademark data โ keyword search, brand-name availability checks, owner and full-text search, serial-number lookups, class suggestions, and expiring-mark discovery. Seven operations, one clean dataset per run. No API key, no setup.
Pricing
from $1.50 / 1,000 trademark records
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
3
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
USPTO Trademark Search โ Lookup, Availability & Portfolio Data ๐
๐ Store-SIรN Agency
๐ Store-Instagram AI Transcript
๐ Store-Zillow Agent Scraper
๐ Store-Idealista Scraper
๐ Seven trademark tools in one โ search the entire U.S. register, check brand-name availability, and map any owner's portfolio
Built for founders clearing brand names, IP paralegals running due diligence, and agencies monitoring trademarks at scale
๐ Overview
Looking up a trademark shouldn't mean clicking through a clunky government portal one mark at a time. This actor turns the U.S. Patent & Trademark Office register into clean, structured data โ search thousands of marks, check if a name is free, and export everything to JSON, CSV, or Excel.
Why professionals choose this actor:
- โ Seven operations in one: keyword search, availability check, serial-number details, owner portfolio, full-text search, class suggestions, and expiring marks โ no other Apify trademark tool covers them all
- โก Up to 250 records per keyword in a single call, with deep pagination for owner and full-text searches
- ๐ฏ 100% data-source success rate and sub-second lookups โ reliable enough for production monitoring
- ๐ฐ Pay-per-record pricing โ only pay for the marks you actually receive, with a free tier to test
- ๐ Unique tools nobody else offers: instant Nice-class suggestions and date-windowed expiring-mark discovery for renewal lead-gen
- โจ Zero setup: no USPTO account, no API key, no proxy configuration โ just pick an operation and run
โจ Features
- ๐ Trademark Search: find live or all marks by keyword โ status, owners, classes, filing & expiration dates, and the official logo
- โ Availability Check: instant "available / taken" verdict for a brand name, broken down across all 45 Nice classes
- ๐ Trademark Detail: full record for any serial number โ owners, classification, and complete status history
- ๐ข Owner Search: pull every mark filed under a company or applicant name โ one row per trademark, ready for portfolio analysis
- ๐ Full-Text Search: search inside goods-and-services descriptions, not just mark names
- ๐ท๏ธ Class Suggestion: get recommended Nice classes for any product or service description before you file
- โณ Expiring Marks: list marks expiring in any date window โ a renewal lead-gen engine for IP attorneys
- ๐ Clean structured output: flat camelCase rows, an HTML run report, and one-click CSV/Excel/JSON export
๐ Getting Started (3 Simple Steps)
Step 1: Pick an operation
Choose one of the seven operations from the dropdown (Trademark Search is the default).
Step 2: Enter your queries
Add keywords, owner names, serial numbers, or descriptions to the Queries list โ or a date window for Expiring Marks.
Step 3: Run
Start the actor. Results stream into the dataset in seconds, ready to export.
That's it! In under a minute, you'll have:
- Clean, structured trademark records
- An availability verdict or a full owner portfolio
- A downloadable dataset (JSON, CSV, Excel) plus an HTML run summary
๐ฅ Input Configuration
| Field | Type | Required | Description |
|---|---|---|---|
operation | string | Yes | One of: search, availability, details, suggestClass, ownerSearch, fullText, expiring |
queries | array | Conditional | Keywords, owner names, serial numbers, or descriptions (one per operation). Not used by expiring |
searchType | string | No | active (live marks) or all (incl. dead/abandoned) โ Trademark Search only |
maxResultsPerQuery | integer | No | Cap records per keyword (1โ250) โ Trademark Search only |
startDate | string | Conditional | YYYY-MM-DD window start โ Expiring Marks only |
endDate | string | Conditional | YYYY-MM-DD window end (โค 7 days from start) โ Expiring Marks only |
maxPages | integer | No | Pages to drain for paginated operations (1โ50, ~250 records/page) |
Example โ search for a brand:
{"operation":"search","queries":["apple","tesla"],"searchType":"active","maxResultsPerQuery":100}
Example โ check if a name is available:
{"operation":"availability","queries":["zillowmatic","brandcraft"]}
Example โ map an owner's entire portfolio:
{"operation":"ownerSearch","queries":["Apple Inc."],"maxPages":5}
๐ค Output
Results are saved to the Apify dataset as flat rows. Filter by _operation to split modes. Key fields:
| Field | Type | Description |
|---|---|---|
keyword | string | The trademark wordmark / searched term |
serialNumber | string | USPTO serial number |
registrationNumber | string | USPTO registration number (null for pending) |
statusLabel | string | e.g. "Live/Registered" |
filingDate | string | Application filing date |
registrationDate | string | Registration date |
expirationDate | string | Registration expiration date |
description | string | Goods & services description |
classification | array | International/US class details |
owners | array | Owner/applicant records |
ownerName | string | Owner name (Owner Search) |
available | string | yes / no (Availability Check) |
availableClasses | array | Free Nice classes (Availability Check) |
classCode | string | Recommended class (Class Suggestion) |
markPageUrl | string | Direct link to the USPTO TSDR status page |
Example row:
{"_operation":"search","keyword":"APPLE","serialNumber":"77428980","registrationNumber":"4088195","statusLabel":"Live/Registered","filingDate":"2008-03-24","expirationDate":"2031-12-27","description":"Computers; computer software ...","owners":[{"name":"Apple Inc.","city":"Cupertino","state":"CA"}],"markPageUrl":"https://tsdr.uspto.gov/#caseNumber=77428980&caseType=SERIAL_NO&searchType=statusSearch"}
๐ผ Use Cases & Examples
1. Brand Clearance Before Filing
Founders and brand teams checking whether a name is free before investing in it.
Input: availability with your candidate names ยท Output: available/taken verdict + class breakdown ยท Use: avoid filing fees and rebrands on names that are already taken.
2. Trademark Watch & Monitoring
Agencies and legal teams tracking new filings over time.
Input: scheduled search or ownerSearch runs ยท Output: fresh marks each run ยท Use: catch competitor filings and potential infringements early.
3. IP Due Diligence
M&A and licensing teams validating a target's trademark assets.
Input: details with serial numbers ยท Output: full records with owners and status history ยท Use: verify ownership and status before a deal closes.
4. Competitor Portfolio Mapping
Analysts mapping a company's entire brand footprint.
Input: ownerSearch with a company name ยท Output: one row per mark, with owner identity ยท Use: size up a competitor's IP estate in one run.
5. Class Research for New Filings
Applicants choosing the right Nice classes before filing.
Input: suggestClass with a product/service description ยท Output: ranked class recommendations ยท Use: file in the correct classes the first time.
6. Renewal Lead Generation
Trademark attorneys and brand-protection services sourcing leads.
Input: expiring with a date window ยท Output: marks expiring soon ยท Use: reach owners before their marks lapse.
7. Goods & Services Research
Researchers searching descriptions, not just mark names.
Input: fullText with a keyword ยท Output: marks whose descriptions mention your term ยท Use: find marks in a product category regardless of the wordmark.
๐ Integration Examples
JavaScript/Node.js
import{ ApifyClient }from'apify-client';const client =newApifyClient({token:'YOUR_TOKEN'});const run =await client.actor('sian.agency/uspto-trademark-scraper').call({operation:'search',queries:['apple'],searchType:'active'});const{ items }=await client.dataset(run.defaultDatasetId).listItems();console.log(items[0]);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('sian.agency/uspto-trademark-scraper').call(run_input={'operation':'availability','queries':['brandcraft']})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(item)
cURL
curl-X POST 'https://api.apify.com/v2/acts/sian.agency~uspto-trademark-scraper/runs?token=YOUR_TOKEN'\-H'Content-Type: application/json'\-d'{"operation": "ownerSearch", "queries": ["Apple Inc."], "maxPages": 3}'
Automation Workflows (N8N / Zapier / Make)
- Trigger: Schedule (e.g. weekly trademark watch) or webhook
- HTTP Request: Call the actor API with your operation + queries
- Process: Handle the JSON dataset
- Action: Alert on new filings, append to a CRM, or build a report
๐ Performance & Pricing
FREE Tier (Try It Now)
- Full feature access โ every operation, same data quality
- No credit card required
- Perfect for testing a few lookups before scaling
PAID Tier (Production Ready)
- Unlimited records and pages per run
- Pay-per-record: only charged for the marks you actually receive
- A fixed, low run-start fee plus a transparent per-record rate
๐ฐ Cheaper than premium single-purpose trademark actors โ and you get all seven tools in one.
๐ View current pricing
โ Frequently Asked Questions
Q: Which operation should I use to check if my brand name is free? A: Use Availability Check โ it returns an instant yes/no plus the list of classes where the name is free or taken.
Q: How many records can I get per run? A: FREE tier is capped to a small sample; PAID is unlimited. Keyword search returns up to 250 records per term; owner and full-text searches paginate further.
Q: Do I need a USPTO account or API key? A: No. The actor is fully zero-config โ just pick an operation and run.
Q: What output formats are available? A: JSON, CSV, and Excel โ export directly from the Apify dataset.
Q: How fresh is the data? A: It reflects the USPTO register and is updated daily at the source.
Q: Can I monitor trademarks automatically? A: Yes โ schedule the actor (e.g. a weekly owner or keyword search) and connect it to N8N, Zapier, or Make for alerts.
๐ Troubleshooting
Owner Search returns no rows
- Use the exact registered owner name, including suffixes (e.g.
Apple Inc.notApple). Try variations.
Expiring Marks returns an error
- The date window must be 7 days or fewer, and both dates must be
YYYY-MM-DD.
Search returns fewer rows than expected
- Increase
maxResultsPerQuery, or setsearchTypetoallto include dead/abandoned marks.
โ๏ธ Is it legal to scrape data?
This actor returns U.S. trademark records from the public USPTO register โ information the government publishes for exactly this kind of lookup. It does not extract private personal data.
However, you should be aware that results may contain personal data (e.g. an individual applicant's name or address as filed publicly with the USPTO). Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not use personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
You can also read Apify's blog post on the legality of web scraping.
๐ค Support
Join our active support community
- For issues or questions, open an issue in the actor's Issues tab
- Check the SIรN Agency Store for more automation tools
- ๐ง apify@sian-agency.online
Built by SIรN Agency | More Tools
