Mit einer Länge von 230,3 Kilometern war die veränderte Strecke etwas länger als im Vorjahr. Das Rennen startete und endete in San Sebastián und führte über die Hügel des spanischen Baskenlandes, wobei sieben kategorisierten Anstiege und zwei Zwischensprintwertungen auf dem Programm standen. Nachdem das Rennen freigegeben worden war, führte die Strecke über Orio und Zarautz in Richtung Westen, ehe mit bei Meaga (140 m) die erste Bergwertung erreicht wurde. Im Anschluss drehte die Fahrtrichtung gen Süden und die Fahrer erreichten Azpeitia, bevor der Anstieg nach Iturburu (553 m) in Angriff genommen wurde. Nach Tolosa und einer Schleife über Alkiza (336 m) führte die Strecke zurück in Richtung San Sebastián, das etwa zur Hälfte der Renndistanz im Süden passiert wurde. Bereits rund 100 Kilometer vor dem Ziel wurde mit dem Jaizkibel (455 m) der bekannteste Anstieg des Rennens in Angriff genommen, ehe die anspruchsvolle Auffahrt des im Schnitt über 10 % steilen Erlaitz (443 m) erfolgte. Über Errenteria führte die Strecke zurück nach San Sebastián, wo bei der ersten Zieldurchfahrt der erste Zwischensprint ausgefahren wurde, bevor im Finale zwei weitere Bergwertungen überquert wurden.
Rund 40 Kilometer vor dem Ziel erfolgte die erste Auffahrt der engen und steilen Murgil Bidea, die im Finale zweimal befahren wurde. Nach der ersten Auffahrt bogen die Fahrer links ab, ehe die Straße weiter zur Bergwertung Mendizorrotz (345 m) führte. Die anschließende Abfahrt führte zum Ufer des Oria, dem die Fahrer stromaufwärts nach Usurbil folgten, wo der zweite Zwischensprint ausgefahren wurde. Nach der zweiten Auffahrt wurde 8,1 Kilometer vor dem Ziel mit der Bergwertung Murgil (254 m) der letzte Anstieg des Rennens überquert. Dieser war 2,1 Kilometer lang und wies eine durchschnittliche Steigung von über 10 % auf. Die Fahrer bogen nun rechts ab und nahmen eine fünf Kilometer lange Abfahrt in Angriff, ehe die letzten drei Kilometer flach zum Ziel führten. Im Finale wurde der Playa de La Concha passiert, bevor die Fahrer das Ziel auf dem Boulevard Zumardia erreichten.[2]
Kurz vor der Kuppe des Erlaitz griff Remco Evenepoel an und setzte sich gemeinsam mit Alexander Wlassow (Bora-hansgrohe), Pello Bilbao (Bahrain Victorious) und Alberto Bettiol (EF Education-EasyPost) ab. Auf dem anschließenden Plateau schlossen sie zur Spitze des Rennens auf. Mit Ion Izagirre (Cofidis) und Iván García Cortina versuchten zwei weitere Fahrer den Sprung in die Spitzengruppe, was ihnen jedoch nicht gelang. Am Fuß des Mendizorrotz betrug der Vorsprung der Spitzengruppe rund eine Minute, ehe sie im Anstieg unter dem Tempodiktat von Remco Evenepoel zerfiel. Einzig Alexander Wlassow und Pello Bilbao konnten dem Weltmeister folgen, während Nathan Van Hooydonck, Romain Bardet und Albero Bettiol zurückfielen. Dahinter forcierte Felix Gall (AG2R Citroën) das Tempo und setzte sich zeitweise mit Mikel Landa (Bahrain Victorious) ab. Die beiden konnten jedoch nicht zu der Spitzengruppe aufschließen und wurden rund 30 Kilometer vor dem Ziel wieder vom Hauptfeld gestellt, in dem noch rund 30 Fahrer vertreten waren.
Im Schlussanstieg des Murgil konnte auch Alexander Wlassow dem Tempo von Remco Evenepoel nicht mehr folgen. Der Weltmeister überquerte die Kuppe gemeinsam mit Pello Bilbao, mit dem er sich nach der anschließenden Abfahrt die Führungsarbeit teilte. Im Sprint setzte sich Remco Evenepoel gegenüber dem Basken durch. Alexander Wlassow belegte den dritten Platz mit einem Rückstand von 28 Sekunden, ehe die ersten Fahrer des Hauptfeldes das Ziel erreichten.