Skip to main content
Signa includes a rule-based deadline engine that computes upcoming maintenance deadlines for every registered trademark. The engine has rules defined for 27 jurisdictions (28 rule sets; US has domestic + Madrid), covering every production office and beyond (see office coverage), producing actionable deadline objects with status, urgency, and consequence information.

How Deadlines Are Computed

Given a trademark’s date fields and jurisdiction, the deadline engine returns an array of computed deadlines. Each one carries its type, due date, urgency, grace period (where applicable), and consequence-if-missed information. The same inputs always produce the same output. Each computed deadline includes:

Consequence vocabulary

consequence_if_missed names the mechanism the office’s own provision prescribes when the deadline and any grace period pass. It is one axis only: whether a remedy exists afterwards is said by the presence or absence of a restoration rule for the jurisdiction, never by this value. irrevocable_loss was retired on 3 September 2026 (it described restorability, which the restoration rule already states); no rule serves it, and consumers that stored it should read it as the jurisdiction’s current value.

Consequence relabels, 4 September 2026

Nine rules changed their consequence_if_missed string in the 4 September 2026 release. No due date moved, no window opened or closed differently, and no rule was added or removed. Only the label changed: each of these now names the mechanism the office’s own pinned provision prescribes. This shipped with no deprecation window, and it can, because consequence_if_missed is not a value you can pin. It is an open string, not an enum. The vocabulary table above describes the values in use today, not a closed set. Signa adds a value when a jurisdiction’s statute names a mechanism none of the existing labels fit, and edits an existing rule’s value whenever a better reading of the primary source arrives. Either can happen in any release, without notice. So do not branch on it. Anything conditional in your code should key on rule_id, which is stable and permanent, or on the structured fields that carry the arithmetic: type, grace_period_months, optional, and the presence of a restoration rule for the jurisdiction. consequence_if_missed is for display. If you persist it, persist it as free text, and re-read the current value from List Deadline Rules rather than treating your stored copy as authoritative.

Trigger Dates

Each jurisdiction defines a trigger field: the date from which deadlines are calculated. This varies by jurisdiction: Two individual rules override their jurisdiction’s trigger: ph_declaration_of_use_5yr_madrid runs from protection_grant_date (the statutory anchor for a Madrid designation into IPOPHL), and in_renewal runs from priority_date, falling back to filing_date where a mark claims no priority. Some jurisdictions changed their trigger field on a specific date. For example, Sweden switched from registration_date to filing_date on 2019-01-01. The engine handles this automatically based on the mark’s filing date.

US Trademark Deadlines

The United States has the most complex deadline structure of any jurisdiction, because it requires proof of continued use in addition to renewal.

US Domestic Marks

Section 8 — Declaration of Use (years 5-6)
  • Due: 6 years after registration
  • Window opens: 1 year before (year 5)
  • Grace period: 6 months (with surcharge)
  • Consequence if missed: Cancellation
  • Required for all US domestic registrations
Section 15 — Declaration of Incontestability (years 5-6)
  • Due: Eligible from year 5, commonly filed with Section 8 by year 6
  • Optional: No penalty for missing it
  • Benefit: Makes the registration conclusive evidence of validity
  • No grace period
Section 8+9 — Renewal + Declaration of Use (every 10 years)
  • Due: 10 years after registration, then every 10 years
  • Window opens: 1 year before
  • Grace period: 6 months (with surcharge)
  • Consequence if missed: Cancellation and expiration

US Madrid Marks

Madrid Protocol registrations designating the US use Section 71 (the Madrid equivalent of Section 8) instead of Section 8. The trigger date is protection_grant_date instead of registration_date. Renewal is handled at WIPO, not at the USPTO.

EU Trademark Deadlines

The European Union has a simpler structure. No proof of use is required at renewal.

Jurisdiction Quirks

Germany (DPMA): End-of-Month Rule

For marks filed before 2019-01-14, the expiry date is the last day of the month in which the anniversary falls, not the exact anniversary date. For example, a mark filed on 2015-03-15 expires on 2025-03-31, not 2025-03-15. Marks filed on or after 2019-01-14 use the exact anniversary (standard behavior).

Canada (CIPO): Pre-2019 15-Year Terms

Canada changed its trademark law on 2019-06-17:
  • Before 2019-06-17: Initial term of 15 years, renewal every 15 years
  • On or after 2019-06-17: Initial term of 10 years, renewal every 10 years
Signa applies the correct term based on the mark’s registration date. Madrid designations of Canada are a different rule. Trademarks Regulations s. 143 states that “Section 46 of the Act does not apply in respect of a Protocol registration”, and s. 144(1) gives such a registration no Canadian term at all — it is on the register “for the period that begins on the day of the registration and that ends at the moment of its cancellation or expungement”. So a designation of Canada does not renew at CIPO. What falls due is the renewal of the international registration, at WIPO, and Signa serves it on the Canadian record as ca_renewal_madrid: These are the same dates wipo_international_renewal computes on the WIPO record for the same international registration; the rule exists so a portfolio holding the Canadian designation, and not its WIPO parent, still sees the date that governs. Note that the roll differs from the Canadian route: a CA domestic renewal date is never rolled (Canada’s own config does not opt into the weekend/holiday roll, and reports not_checked), while this one is, because the period belongs to the International Bureau.

Nordic Countries: Trigger Field Change

Sweden and Denmark changed their trigger field from registration_date to filing_date on 2019-01-01, Finland on 2019-05-01. Norway made the same change earlier, on 2010-07-01. Iceland followed on 2020-09-01. The date Signa compares against the change date is not the same in every country. Signa resolves the correct trigger from the application date for Sweden, Finland, Norway and Iceland, and from the registration date for Denmark. Iceland’s pivot turns on the application date, not the registration date: applications received before 2020-09-01 keep a 10-year term measured from the registration date for every renewal, even where registration was granted after the reform, while applications received on or after that day take the 10-year term from the filing date (Act No. 71/2020 art. 39(3); Regulation No. 850/2020 art. 45(1)-(2)). Limit: old-regime records without a registration date. For Sweden, Iceland, Norway and Finland, a direct (national) record filed before the change date keeps the registration-date term, so its renewal needs the registration date. When the record carries no registration date and the office stated no term end, Signa declines instead of guessing: supported: false (or deadlines_supported: false on a trademark) with unsupported_reason: "requires_office_date", for every status except a mark that is finally dead (abandoned, withdrawn, surrendered, refused or invalidated). Previously Sweden and Iceland served a date measured from the filing date, and Norway and Finland returned an empty schedule reported as supported. A filing-anchored date is not a safe substitute: it can be early for one cycle and years late for the next. Two cases still compute:
  • Madrid designations are unaffected, because they renew on the international registration date, not on the national registration date.
  • An office-stated term end anchors the schedule: an expiry_date, or a renewal_due_date whose renewal_due_date_basis is reported (on Compute Deadlines, a supplied renewal_due_date counts as reported).
Supplying the registration date also lets the schedule compute. Denmark is not affected, because its change date is compared against the registration date itself. The converse gap declines too. A record with no filing date and a registration on or after the change date takes the new term, which runs from the filing date it lacks, so it declines with unsupported_reason: "requires_office_date" instead of returning an empty schedule reported as supported.

Mexico: Post-Anniversary Windows

Mexico has a unique Declaration of Use requirement:
  • Due: 3 years after grant
  • Window opens: The day after the 3rd anniversary (not before)
  • Window duration: 3 months
This differs from most jurisdictions where the filing window opens before the due date.

Philippines: Mixed Trigger DAUs

The Philippines requires Declarations of Actual Use at years 3 and 5 after filing, each with different extension rules. The year-3 DAU has a 6-month extension option.

China (CNIPA): The Term Counts Its First Day

Chinese registration terms run from the day the office approves the registration and count that day, so the term ends the day BEFORE the anniversary (Implementing Regulations art. 12(2)). A mark registered 2016-03-07 expires 2026-03-06, and its 12-month renewal window and 6-month grace period are measured from that expiry. Where the anniversary day does not exist in the target month the expiry is the last day of that month instead: a mark registered 2020-02-29 expires 2030-02-28, not 2030-02-27. Chinese deadlines roll to the next working day when they fall on a statutory holiday, and Signa builds that calendar from the State Council’s annual holiday notice, including the make-up working weekends (调休), where a Saturday or Sunday is declared a working day to lengthen a holiday block. A renewal due on Friday 2 January 2026 is therefore due on Sunday 4 January 2026, the first working day. Because each year’s notice is only published the preceding November, the calendar covers 2024–2026 today; deadlines beyond it take the deterministic roll and report due_date_adjustment: "not_checked"; opposition windows closing beyond it are published the same way, with close_adjustment: "not_checked" rather than guessed or withheld. An unverified date is never later than the true one, and silence on a rights-losing deadline is worse than an early date. The one case Signa still declines with window_not_computable is a close that falls in the 20 days before the date you are computing as of, where a rollover could still be holding the window open. A close on the as-of date itself, or more than 20 days before it, is published unverified like any other. The same applies to every calendar Signa builds from annual office notices: cgpdtm_india (one DoPT memorandum per year), wipo_geneva, ph_philippines and mx_mexico (IMPI’s yearly días inhábiles acuerdos). Check close_adjustment before treating a close date as verified. Two Chinese specifics on the opposition side. The 2026 revision of the Trademark Law cuts the opposition window from three months to two on 1 January 2027 (art. 36, in force by art. 87) and says nothing about a period still running on that day. Signa serves the shorter window to that straddling cohort, every publication from 1 October 2026, the first whose three months would still be open on commencement, because a close published too early costs a would-be opponent nothing they can lose by relying on it, while one published too late costs the right itself. A mark published 31 December 2026 is therefore reported as closing 28 February 2027, not 31 March 2027. This is a deliberate, reversible call: it flips back the day a transitional notice or the revised Implementing Regulations settles the question.

EU, UK, Singapore, Iceland, Japan, and India: Restoration Periods

Six jurisdictions offer an additional restoration window after the grace period, during which a lapsed registration can be re-established. Missing it is a permanent loss in all six. The EU window is restitutio in integrum (Article 104 EUTMR). Its end date is the outer limit only: the request must also be filed within two months of the removal of the obstacle, it is granted only where all due care required by the circumstances was taken, and it carries a fee.

Accuracy limits

Signa’s default is to fail in the direction that cannot cost you a right: where a source runs out, a deadline is reported unadjusted or not at all rather than guessed, and an unadjusted date is EARLIER than the true one, so acting on it is still safe. The list below is the exception set: the places where a served date can be LATER than the true one. Later is the unsafe direction, because a filing made on the served date can land after the real deadline has passed. Each is bounded, each rests on a named gap in the primary sources, and each is listed here rather than left for you to discover. Everything else that is uncertain is reported the other way. A deadline outside a calendar’s pinned coverage reports due_date_adjustment: "not_checked" and keeps the deterministically rolled date, which can only be early; an opposition window Signa cannot compute is returned supported: false with unsupported_reason rather than a guess; and a record with no usable anchor returns no deadline at all. See Business-day adjustment for how the adjustment fields say which of these happened.

Covered Jurisdictions

‡ A Madrid designation of Canada has no Canadian term: Trademarks Regulations s. 143 disapplies Act s. 46 to a Protocol registration, so the renewal that falls due is the international registration’s, at WIPO. See “Canada (CIPO): Pre-2019 15-Year Terms” above. † China counts the registration day itself, so a CN registration expires the day BEFORE the anniversary (registered 2016-03-07 → expires 2026-03-06). See “China (CNIPA): The Term Counts Its First Day” above. * Changed from registration_date: SE and DK on 2019-01-01, FI on 2019-05-01, NO on 2010-07-01, IS on 2020-09-01. Marks that fall before the change date keep registration_date for every renewal, but the date compared against the boundary differs by country: it is the application date for SE, FI, NO and IS, and the registration date for DK. Iceland’s boundary is keyed on the application date (Act No. 71/2020 art. 39(3); Regulation No. 850/2020 art. 45(1)-(2)).

Opposition windows are a separate engine

Everything above is the maintenance engine: renewals, declarations of use, grace and restoration. Opposition windows run on their own rule corpus, exposed through POST /v1/oppositions/compute and GET /v1/opposition-rules. One difference matters when you compute a window for a Madrid designation rather than a national filing. A designation has two publications that can fill one date field, WIPO’s Gazette of International Marks and the designated office’s own journal, and different offices run their clock from different ones: FR, CH and DE from the WIPO Gazette; GB, FI, PL, NO and the rest from the office journal. Send the optional publication_date_kind on your compute item and a rule that needs the other publication returns status: "unknown" with null dates rather than a wrong statutory bar. GB has no Madrid rule yet, because the current UK Journal source is not available to pin. The per-office table is in Opposition windows.

Filtering by Deadlines

Use renewal_due_date filters to find marks with an upcoming renewal deadline. renewal_due_before is shorthand for renewal_due_date_lt:
You can also use the full renewal_due_date range for renewal-specific views: