La película se basa en el relato breve Oro, de Arturo Pérez-Reverte. Un relato inédito que narra una aventura de época inspirada en la expedición de los conquistadores españoles del siglo XVI Lope de Aguirre y Núñez de Balboa, y que sigue su épica expedición por la selva amazónica en busca de una mítica ciudad hecha completamente de oro.
El relato de Arturo Pérez-Reverte en que se basa la película, tomado de las crónicas de Indias del siglo XVI, está inspirado en las expediciones de los conquistadores españoles Lope de Aguirre y Núñez de Balboa. Aguirre fue un explorador y conquistador español que protagonizó un episodio de cruentos asesinatos para erigirse en líder de una expedición en busca de El Dorado. Por su parte, Balboa fue el primer explorador europeo que divisó el océano Pacífico desde su costa oriental y el primer europeo en fundar una ciudad permanente en tierras continentales americanas.
Es la segunda vez que el director, Agustín Díaz Yañez, trabaja sobre una historia de Arturo Pérez Reverte. Anteriormente el cineasta hizo la película Alatriste (2006)
Según Agustín Díaz Yanes, este filme tiene poco que ver con Alatriste (2006), su película basada en la novela de Pérez-Reverte. El director ha dicho al respecto: "lo único que Oro tiene en común con Alatriste es mi asociación con Pérez-Reverte y que se trata de una cinta histórica, pero nada más. Además, está ambientada en el siglo XVI, no en el XVII".
Según el propio director Agustín Díaz Yanes: "hemos pretendido hacer una película clásica, no ideológica. Sobre personas que para salir de la miseria parten a las Indias en busca de fama y fortuna. Hemos procurado hacer una película lo más realista posible".
El director Agustín Díaz Yanes obtuvo dos premios Goya por Nadie hablará de nosotras cuando hayamos muerto (1995), a Mejor Director Novel y Mejor guión original.
La cinta se filmó en marzo de 2016, en locaciones de Panamá, Andalucía, Tenerife y Madrid.
La cinta tuvo un presupuesto, aproximado, de 8 millones de euros.