Software Patent law is very complex. This article will shed some light as to the patentability of software. We will examine whether software is patentable and the viability of other legal software protections. Also, we will answer common questions, such as: Can you patent software? What aspect of software can you patent? How much does patenting software cost? By the end of this article, you will have a basic understanding of software patents.

Throughout the 1970s, 80s, and 90s, the U.S Supreme Court and Federal Courts created uncertainty when it comes to software patents. However, it has become clear that patenting software constitutes patentable subject under U.S Code § 101. If you own software, you know that it can be easily copied and/or reverse engineered, making patent protection the strongest tool to help you protect your software from being copied and sold by others.

What are Software Patents?

Software patents are a form of intellectual property right (IP) that protect computer programs. Software patents are applied for as a utility patent since the U.S code does not specify a particular patent for software programs.

To start off, it’s important to remind you that software patents are different from software copyrights. Both are forms of intellectual property, but offer different types of protection.

Copyrighted software covers the exact code that was written for the software program, whereas patents protect the idea or functional aspects of a piece of software. Therefore, software patents are able to protect software far more broadly than copyright law.

This is so because copyright protects the particular expression of an idea and not the idea itself. Copyright protection protects a software’s source code, which is the form in which a programmer types a program into the computer.

So, if another software developer comes along and independently derives a similar or even identical computer program, no copyright infringement has occurred if the source code is different from yours. That said, patents offer broader protection, so what do you need to qualify for a software patent?

Can you Patent Software?

The short answer is yes, you can patent software however to successfully patent your software you must meet certain requirements. To qualify for a software patent, you have to show that your software meets the following requirements:

  • There is a commercial way to use the software on a machine
  • The invention (software) is novel (new)
  • The invention is not obvious to a person of ordinary skill in your industry
  • The patent application is fully filled out, including any disclosures to meet the guidelines set forth by the USPTO

Just remember that in the U.S your work is automatically copyrighted under U.S copyright laws at the time you create it. Seeking a patent is a smart idea, but the average person will need an experienced software patent attorney’s help because the requirements for patenting software are very technical and should be performed by an attorney specializing in software patents.

Software Patents Example

The best example that we can use to illustrate a software patent is Amazon’s one-click to buy button. Amazon patented this piece of software in 1999 and it has recently expired in 2017. That said, Amazon’s patent offers some great guidance on how a software patent should be described.

Claim 1 of Amazon’s 1-Click to Buy Software patent states the following:

“A Method of placing an order for an item comprising of:

  • under the control of a client system,
  • displaying information identifying the item purchasable through a shopping cart model; and
  • in response to only a single action being performed, sending a request to order the item..to a server system;
  • under control of a single-action ordering component of the server system, receiving the request;
  • retrieving additional information previously stored for the purchase…
  • generating an order to purchase the requested item for the purchaser….using the retrieved additional information; and
  • fulfilling the generated order….
  • whereby the item is ordered without using the shopping cart model”

Benefits of Software Patents

As you may know by now, patents protect inventions and keep others from using your software whether or not they plagiarized parts of your code. Copyright law has some limitations and so many people often turn to patent law to protect their software. So why should you patent your software?

  • Patents give you the right to prevent people from using your software
  • Prohibit people from making your software
  • Prohibit people from importing your software to the United States
  • Prohibit people from selling your software

Should you Patent your Software?

Obtaining a patent for your software is both complex and expensive. Patents only protect your software in the country that issued your patent, so if you’re software will be distributed internationally, you have to patent your software in each country where you want protection.

Despite the cost and complexity of software patents, many software developers still opt to patent their software for the added protection offered by U.S patent law.

If you want to obtain a software patent, you can make your software patent attorney’s life much easier by doing the following:

#1) Describe Your Software

Take a look at amazon’s example and use it for inspiration, you should know your software inside and out and be able to describe the set of functions that your software is able to perform. Describing what your software does will help your patent attorney in applying for your patent. Here are some of the points that you should prepare for your attorney:

  • Clearly state the functional aspects of your software
  • What sets your software apart from other pieces of competing software
  • What does your software do with information that’s given to it?
  • What is unique about your software’s user interface (UI)?
  • Does your software solve a specific problem?
  • What aspects of your software do you want the patent to protect?

#2) Research Existing Software Patents

Conducting a patent search before filing your patent application will help save you money and time in the long run. You want to make sure that no one else has patented the same type of software you’re seeking to patent.

Also, looking at similar software patents will help you learn what’s unique about your software. When conducting the search, if you find software that’s similar to yours, you will have a better idea whether it’s worth your time to go ahead with patenting your software.

That said, conducting a patent search for similar software patents is pretty expensive because you’ll have to go through similar patents and compare your software with software that’s already been patented. If you find a software patent that’s similar to yours, you’ll need to decide whether your software infringes on another patent.

Conducting a software patent search is a tedious process and you’ll most likely need an experienced software patent attorney to navigate the waters for you.

#3) Explain How Your Software Works

  • Describe how your patent works
  • Describe each step your software performs
  • Describe how your software will reach it’s goal

#4) Hire an Attorney

If you have new software that you want to patent, hire an experienced software patent attorney who can guide you through the muddy water of software patents.

Software patents are complex and having an attorney draft your patent application will help you avoid costly mistakes down the road.

Software Patents vs Copyright

Here are some of the advantages and disadvantages of patenting software vs relying on copyright law to protect your software:

Advantages of Software Patents vs Software Copyrights

  • Scope of Protection. Software patents protect the elements of the programs, as well as the environment in which the program is used. Said different, software patents restrict others from copying the software features that make your software so valuable.
  • Algorithm Protection. An “algorithm” can be patented for achieving a desired result.
  • Protection Against Subsequent Creations. Patents protect against subsequent inventors and not just copiers.
  • Lower Burden of Proof. If litigation arises, a patentee (patent owner) does need to show that someone copied their invention, whereas in a copyright case, the patentee would have to show copying.
  • Ease of Licensing. Patents make licensing technology more easy because you know exactly what you’re getting with a patent
  • Long Term. Patents provide protection for a reasonably long term (20 years) which is more than enough for software that often becomes obsolete after only a couple of years

Disadvantages of Software Patents vs Software Copyrights

  • High Standard. There is a high level of disclosure that must be done for the USPTO to issue a patent
  • Uncertainty. There is some uncertainty as to what types of software-related inventions qualify for patent protection
  • Software Database & Documentation. Patents do not protect documentation and the software database protection is still not fully understood
  • Long Wait. Typically, utility patents take on average 19 months to issue, whereas software patents take on average close to 24 months to issue, depending on the complexity of your software
  • High Cost. Prosecuting a software patent is expensive and lengthy

How Long do Software Patents Last?

Software patents last for 20 years from the date you first file your software patent application, however you do need to pay periodic fees to maintain the enforceability of your patent. Source

How Much do Software Patents Cost?

According to the American Intellectual Property Law Association, software patents cost anywhere between $8,000 and $12,000 with the median software patent costing approximately $10,000. These prices include the fees associated with filing your software patent application. Source

Problems with Software Patents

Although you may want to protect your software with a patent, there are some problems with doing so. Obtaining a software patent is a difficult task and you’re only protected after the USPTO grants your patent.

Today, the patent office is overwhelmed with patent application because they have a shortage of examiners who are qualified to review software-related inventions.

Those seeking to obtain a software patent will likely wait a minimum of two years for a patent and in many cases significantly longer than that. The usefulness of software is typically for a few years, you may have to spend that time (or even longer) jumping through legal hoops to get your patent application. You have to determine whether the process of getting a patent is worth it.

Also, the standards of novelty and nonobviousness that a software invention must meet to be patentable are much higher than the standard of original that needs to be met for copyright protection.

Additionally, if you fail to file a patent application in a timely manner, this failure may prevent you from every obtaining patent protection.

Also, failure to disclose information relevant to the patentability of the software, failure to list the correct inventors, and plenty of other bases exist for invalidating software patents.

Another reason why software patents are difficult to get is that they are often overly broad, which makes describing the software difficult to do. Many inventors have had their patents invalidated due to the broadness of their patent claims.

The best thing you can to do to navigate the software patent waters, is to go with an attorney specializing in software patents as they will help you avoid many of the pitfalls that software inventors fall into.

Is it Mandatory to Provide Software Code for Patent?

You do not need to provide software code to get your patent, however you need to disclose how your software achieves its claimed function. You do not necessarily have to disclose the exact code you’re using to achieve the result, but including a flow chart that explains the steps required to perform the claimed function of your software is vital to get your patent application approved.

This isn’t an exact standard or anything, but think about how you would explain your software to a fellow developer. If your patent application adequately describes the claimed function of your patent, your fellow developer should have an easy time understanding how it works simply by reading how it works without doing too much explanation.

To conclude, you should include just as much code as is necessary for the patent examiner to understand how your software works. It sometimes irritates computer programmers when they find out that the law does not require a single line of code to be written before they can patent their software. The reality is that the patent examiner will be looking at the design of the system as a whole. The code merely defines the vision in a language that the computer can understand.

If you do get your software patented, you are not asking protection for a single implementation of the code, rather the patent covers the different ways a coder will accomplish the same task your patent claims, giving you the broadest form of legal protection.

How to File a Software Patent?

As you probably know patenting your software allows the patentee (patent holder) to prevent others from using or profiting from the use of their software.

Step#1 Conduct a prior art search to make sure you are the first person to come up with the idea.

Step#2 Precisely describe your software with text and flow charts, explain why your software is novel (new), and explain the nonobviousness of your software

Step#3 Summarize how your software functions and why it deserves the protection of patent law

Step#4 Go to the USPTO web page and file your patent application

Step#5 Track the status of your patent application and respond to any inquiries by the USPTO

Software Patents

We hope that this article was able to shed some light on the muddy area of patent law. We answered common questions, such as explaining what software patents are and how to obtain them. We also mentioned a few of the problems that exist today to patent software. We went through some advantages and disadvantages of patenting your software vs relying on copyright law to protect your software. If you have any questions or comments, please feel free to leave them in the comments section below.