Google LLC v. Oracle Am., Inc.

Decision Date05 April 2021
Docket NumberNo. 18-956,18-956
Citation209 L.Ed.2d 311,141 S.Ct. 1183
Parties GOOGLE LLC, Petitioner v. ORACLE AMERICA, INC.
CourtU.S. Supreme Court

Thomas C. Goldstein, Bethesda, MD, for the petitioner.

E. Joshua Rosenkranz, New York, NY, for the respondent.

Deputy Solicitor General Malcolm L. Stewart for the United States as amicus curiae, by special leave of the Court, supporting the respondent.

Kent Walker, Catherine Lacavera, Renny Hwang, Google LLC, Mountain View, CA, Lisa S. Blatt, David M. Krinsky, Sarah M. Harris, Meng Jia Yang, Williams & Connolly LLP, Washington, DC, Robert A. Van Nest, Christa M. Anderson, Eugene M. Paige, Reid P. Mullen, Keker, Van Nest, & Peters LLP, San Francisco, CA, Thomas C. Goldstein, Sarah E. Harrington, Kevin K. Russell, Daniel Woofter, Erica Oleszczuk Evans, Goldstein & Russell, P.C., Bethesda, MD, Michael S. Kwun, Kwun Bhansali Lazarus LLP, San Francisco, CA, Bruce W. Baber, Marisa C. Maleck, King & Spalding LLP, Atlanta, GA, for petitioner.

Dorian E. Daley, Deborah K. Miller, Matthew M. Sarboraria, Andrew C. Temkin, Oracle America, Inc., Redwood Shores, CA, Dale M. Cendali, Joshua L. Simmons, Jordan M. Romanoff, Ari E. Lipsitz, Kirkland & Ellis LLP, New York, NY, E. Joshua Rosenkranz, Annette L. Hurst, Peter Bicks, Lisa T. Simpson, Andrew D. Silverman, Matthew R. Shahabian, Jeremy Peterman, Hannah Garden-Monheit, Geoffrey Moss, Orrick, Herrington & Sutcliffe LLP, New York, NY, for respondent.

Justice BREYER delivered the opinion of the Court.

Oracle America, Inc., is the current owner of a copyright in Java SE, a computer program that uses the popular Java computer programming language. Google, without permission, has copied a portion of that program, a portion that enables a programmer to call up prewritten software that, together with the computer's hardware, will carry out a large number of specific tasks. The lower courts have considered (1) whether Java SE's owner could copyright the portion that Google copied, and (2) if so, whether Google's copying nonetheless constituted a "fair use" of that material, thereby freeing Google from copyright liability. The Federal Circuit held in Oracle's favor (i.e. , that the portion is copyrightable and Google's copying did not constitute a "fair use"). In reviewing that decision, we assume, for argument's sake, that the material was copyrightable. But we hold that the copying here at issue nonetheless constituted a fair use. Hence, Google's copying did not violate the copyright law.

I

In 2005, Google acquired Android, Inc., a startup firm that hoped to become involved in smartphone software. Google sought, through Android, to develop a software platform for mobile devices like smartphones. 886 F.3d 1179, 1187 (C.A. Fed. 2018) ; App. 137–138, 242–243. A platform provides the necessary infrastructure for computer programmers to develop new programs and applications. One might think of a software platform as a kind of factory floor where computer programmers (analogous to autoworkers, designers, or manufacturers) might come, use sets of tools found there, and create new applications for use in, say, smartphones. (For visual explanations of "platforms" and other somewhat specialized computer-related terms, you might want to look at the material in Appendix A, infra .)

Google envisioned an Android platform that was free and open, such that software developers could use the tools found there free of charge. Its idea was that more and more developers using its Android platform would develop ever more Android-based applications, all of which would make Google's Android-based smartphones more attractive to ultimate consumers. Consumers would then buy and use ever more of those phones. Oracle America, Inc. v. Google Inc. , 872 F.Supp.2d 974, 978 (N.D. Cal. 2012) ; App. 111, 464. That vision required attracting a sizeable number of skilled programmers.

At that time, many software developers understood and wrote programs using the Java programming language, a language invented by Sun Microsystems (Oracle's predecessor). 872 F.Supp.2d at 975, 977. About six million programmers had spent considerable time learning, and then using, the Java language. App. 228. Many of those programmers used Sun's own popular Java SE platform to develop new programs primarily for use in desktop and laptop computers. Id ., at 151–152, 200. That platform allowed developers using the Java language to write programs that were able to run on any desktop or laptop computer, regardless of the underlying hardware (i.e. , the programs were in large part "interoperable"). 872 F.Supp.2d at 977. Indeed, one of Sun's slogans was " ‘write once, run anywhere.’ " 886 F.3d at 1186.

Shortly after acquiring the Android firm, Google began talks with Sun about the possibility of licensing the entire Java platform for its new smartphone technology. Oracle , 872 F.Supp.2d at 978. But Google did not want to insist that all programs written on the Android platform be interoperable. 886 F.3d at 1187. As Android's founder explained, "[t]he whole idea about [an] open source [platform] is to have very, very few restrictions on what people can do with it," App. 659, and Sun's interoperability policy would have undermined that free and open business model. Apparently, for reasons related to this disagreement, Google's negotiations with Sun broke down. Google then built its own platform.

The record indicates that roughly 100 Google engineers worked for more than three years to create Google's Android platform software. Id. , at 45, 117, 212. In doing so, Google tailored the Android platform to smartphone technology, which differs from desktop and laptop computers in important ways. A smartphone, for instance, may run on a more limited battery or take advantage of GPS technology. Id., at 197–198. The Android platform offered programmers the ability to program for that environment. To build the platform, Google wrote millions of lines of new code. Because Google wanted millions of programmers, familiar with Java, to be able easily to work with its new Android platform, it also copied roughly 11,500 lines of code from the Java SE program. 886 F.3d at 1187. The copied lines of code are part of a tool called an Application Programming Interface, or API.

What is an API? The Federal Circuit described an API as a tool that "allow[s] programmers to use ... prewritten code to build certain functions into their own programs, rather than write their own code to perform those functions from scratch." Oracle America, Inc. v. Google, Inc. , 750 F.3d 1339, 1349 (2014). Through an API, a programmer can draw upon a vast library of prewritten code to carry out complex tasks. For lay persons, including judges, juries, and many others, some elaboration of this description may prove useful.

Consider in more detail just what an API does. A computer can perform thousands, perhaps millions, of different tasks that a programmer may wish to use. These tasks range from the most basic to the enormously complex. Ask the computer, for example, to tell you which of two numbers is the higher number or to sort one thousand numbers in ascending order, and it will instantly give you the right answer. An API divides and organizes the world of computing tasks in a particular way. Programmers can then use the API to select the particular task that they need for their programs. In Sun's API (which we refer to as the Sun Java API), each individual task is known as a "method." The API groups somewhat similar methods into larger "classes," and groups somewhat similar classes into larger "packages." This method-class-package organizational structure is referred to as the Sun Java API's "structure, sequence, and organization," or SSO.

For each task, there is computer code, known as "implementing code," that in effect tells the computer how to execute the particular task you have asked it to perform (such as telling you, of two numbers, which is the higher). See Oracle , 872 F.Supp.2d at 979–980. The implementing code (which Google independently wrote) is not at issue here. For a single task, the implementing code may be hundreds of lines long. It would be difficult, perhaps impossible, for a programmer to create complex software programs without drawing on prewritten task-implementing programs to execute discrete tasks.

But how do you as the programmer tell the computer which of the implementing code programs it should choose, i.e. , which task it should carry out? You do so by entering into your own program a command that corresponds to the specific task and calls it up. Those commands, known as "method calls," help you carry out the task by choosing those programs written in implementing code that will do the trick, i.e. , that will instruct the computer so that your program will find the higher of two numbers. If a particular computer might perform, say, a million different tasks, different method calls will tell the computer which of those tasks to choose. Those familiar with the Java language already know countless method calls that allow them to invoke countless tasks.

And how does the method call (which a programmer types) actually locate and invoke the particular implementing code that it needs to instruct the computer how to carry out a particular task? It does so through another type of code, which the parties have labeled "declaring code." Declaring code is part of the API. For each task, the specific command entered by the programmer matches up with specific declaring code inside the API. That declaring code provides both the name for each task and the location of each task within the API's overall organizational system (i.e., the placement of a method within a particular class and the placement of a class within a particular package). In this sense, the declaring code and the method call form a link, allowing the programmer to draw upon the thousands of prewritten tasks, written in implementing code. See id., at...

To continue reading

Request your trial
70 cases
  • Klein v. Facebook, Inc.
    • United States
    • U.S. District Court — Northern District of California
    • January 14, 2022
    ...having to write the code from scratch every time the programmer wants to perform the task. See Google LLC v. Oracle Am., Inc. , ––– U.S. ––––, 141 S. Ct. 1183, 1191, 209 L.Ed.2d 311 (2021). Facebook's APIs allowed programmers to communicate with the Facebook network and obtain Facebook data......
  • Fon v. Garland
    • United States
    • U.S. Court of Appeals — Ninth Circuit
    • May 18, 2022
    ...ignores the gloss that the Supreme Court itself put on U.S. Bank in its subsequent decision in Google LLC v. Oracle Am., Inc. , ––– U.S. ––––, 141 S. Ct. 1183, 209 L.Ed.2d 311 (2021). Addressing the standards for reviewing a mixed question of law and fact, the Google Court "explained that a......
  • Williams v. Garland
    • United States
    • U.S. Court of Appeals — Fourth Circuit
    • November 16, 2022
    ...38 L.Ed.2d 713 (1974), our cases continue to "provide legal interpretations" of the doctrine. Google LLC v. Oracle Am., Inc. , ––– U.S. ––––, 141 S. Ct. 1183, 1200, 209 L.Ed.2d 311 (2021) (concluding that copyright's fair-use questions should be reviewed de novo after U.S. Bank because the ......
  • CDK Global LLC v. Brnovich
    • United States
    • U.S. Court of Appeals — Ninth Circuit
    • October 25, 2021
    ...understand the internal operations of the system with which they are interacting. See generally Google LLC v. Oracle Am., Inc. , ––– U.S. ––––, 141 S. Ct. 1183, 1191–93, 209 L.Ed.2d 311 (2021).CDK sued the Attorney General of Arizona for declaratory and injunctive relief, asserting a wide r......
  • Request a trial to view additional results
20 firm's commentaries
  • IP Litigation Update in the District of Delaware (Not Patents!)
    • United States
    • LexBlog United States
    • February 27, 2023
    ...copyright law to computer programs is like assembling a jigsaw puzzle whose pieces do not quite fit” (Google LLC v. Oracle Am., Inc., 141 S. Ct. 1183, 1198 (2021) (quotation marks omitted)) and that “[c]omputer code occupies a unique space in intellectual property” and a “library of code st......
  • A Picture, A Painting, And A Prince: The Supreme Court Addresses The 'Fair Use' Doctrine
    • United States
    • Mondaq United States
    • May 29, 2023
    ...may be stronger where the work serves an artistic rather than a utilitarian function. Google LLC v. Oracle Am., Inc., __ U.S. __, 141 S. Ct. 1183, 1197, 209 L.Ed.2d 311 Factor 1 - Purpose and Character. The first factor "focuses on whether an allegedly infringing use has a further purpose o......
  • What Goldsmith Means to AI Trainers
    • United States
    • LexBlog United States
    • June 7, 2023
    ...code used in a desktop environment and adapting for use in smart phones was a transformative use. See Google LLC. v. Oracle Am., Inc., 141 S. Ct. 1183 (2021). As explained in Goldsmith: [ ] Google put Sun’s code to use in the “distinct and different computing environment” of its own Android......
  • Prince, Prince, Prints: Will the Supreme Court Revisit Fair Use?
    • United States
    • LexBlog United States
    • February 28, 2022
    ...its first major opinion on the fair use doctrine in over 25 years on April 5, 2021 when it decided Google LLC v. Oracle Am., Inc., 141 S. Ct. 1183 (2021). The Google case involved computer programming—not art—but the Google decision nonetheless was relevant since the Court discussed the fou......
  • Request a trial to view additional results
18 books & journal articles
  • Ending Patent Subsidies in China
    • United States
    • ABA General Library Landslide No. 14-2, December 2022
    • December 1, 2022
    ...Court Declined to Decide When Software Is Copyrightable, but Found Google’s Use to Be Fair Use 33 Google LLC v. Oracle America, Inc., 141 S. Ct. 1183, 2021 U.S.P.Q.2d 391 (2021). The U.S. Supreme Court held that Google’s use of portions of code providing application programming interfaces (......
  • Intellectual Property Crimes
    • United States
    • American Criminal Law Review No. 60-3, July 2023
    • July 1, 2023
    ...recently declined to address the copyrightability of application programming interfaces (APIs). Google LLC v. Oracle America, Inc., 141 S. Ct. 1183, 1208 (2021) (f‌inding Google’s use of the relevant APIs fell within the four factors of fair use, permitting the Court to bypass the copyright......
  • Synchronizing Copyright and Technology: A New Paradigm for Sync Rights.
    • United States
    • Missouri Law Review Vol. 87 No. 1, January 2022
    • January 1, 2022
    ...of copyrighted works for the purpose of permitting full-text searches was fair use). (92) See, e.g., Google LLC v. Oracle Am., Inc., 141 S. Ct. 1183, 1209 (2021) (holding that "where Google reimplemented a user interface, taking only what was needed to allow users to put their accrued talen......
  • UNEASY LIES THE HEAD THAT WEARS THE CROWN: A CHIEF JUSTICE'S STRUGGLE FOR HIS COURT.
    • United States
    • Albany Law Review Vol. 85 No. 1, March 2022
    • March 22, 2022
    ...with Alito regarding the outcome in the following cases: Texas v. New Mexico, 141 S. Ct. 509, 516 (2020), Google v. Oracle Am., Inc., 141 S. Ct. 1183, 1189 (2021), Torres v. Madrid, 141 S. Ct. 989, 1003 (2021), Salinas v. U.S. R.R. Ret. Bd., 141 S. Ct. 691. 701 (2021), California v. Texas, ......
  • Request a trial to view additional results

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT