The 2019 season was the fifth season of competitive association football and fourth season in the Liga 1 played by Bali United Football Club, a professional football club based in Gianyar, Bali, Indonesia. Their 11th-place finish in 2018 meant it was their fourth successive season in Liga 1.

This season would be Bali United's first with head coach Stefano Cugurra, who stepped in for Widodo Cahyono Putro. Coming into the season, Bali United were in the round of 32 of the Piala Indonesia for the first time in their history.

The season would see the departures of original players such as I Made Wardana, I Gede Sukadana, Yandi Munawar, Novan Sasongko, Taufik Hidayat, Syaiful Cahya, Junius R. Bate, and Feby Eka Putra, as well as foreign recruits Nick van der Velden, Mahamadou N'Diaye, and Demerson. Players such as Haudi Abdillah, Samuel Reimas, Michael Orah, Willian Pacheco, Leonard Tupamahu, Fahmi Al-Ayyubi, Anan Lestaluhu, and Paulo Sérgio were brought in as replacements.

On 2 December 2019, the club won their first official title since the club formed, after second place Borneo draw to PSM and followed by a 2–0 win at Semen Padang to give Bali United the title with four games to spare.

Background The 2018 season was Widodo Cahyono Putro's second start to a season as head coach of Bali United, having taken charge in May 2017. The club had their first ever Asian competitions appearances as they competed in AFC Champions League, where they knocked out in the preliminary round 2 by Thailand's side Chiangrai United. That result made them got a consolation place in the AFC Cup, where they had poor results, finishing last in their group. Bali United reached the round of 32 in the Piala Indonesia, which would be held in 2019 season. Widodo resigned as head coach in November 2018 with Bali United was in 7th place of the table. He was replaced by Eko Purdjianto who acted as caretaker and finished the season in 11th place.

Pre-season and friendlies Friendlies + Friendlies match details Date Opponent Venue Result Scorers 9 February – 16:40 Undiksha Home 5–2 Spasojević (2), Platje, Undiksha's player , Sérgio 17 March – 18:05 Indonesia U22s Home 0–3 20 March – 16:30 Indonesia Home 1–1 Gunawan 30 March – 16:15 Putra Tresna Home 8–0 Sulendra , Platje (3), Sérgio, Hamdi, Martinus, Nouri 6 April – 16:00 Putra Tresna Home 5–0 Bachdim, Sérgio, Hamdi, Saghara, Yabes 13 April – 16:00 Boavista Home 4–1 Bachdim, Lilipaly, Fadil, Yabes 24 May – 21:00 Persiba Home 1–0 Fahmi 14 June – 19:30 Indonesia U23s Home 0–0

Indonesia President's Cup

+ Indonesia President's Cup match details Date Round Opponent Venue Result Scorers Attendance Referee 3 March – 19:30 Group stage Mitra Kukar Neutral 3–0 Platje (2), Spasojević 735 Hadiyana 11 March – 19:30 Group stage Semen Padang Neutral 2–1 Platje, Fadil 932 Tabrani 14 March – 19:30 Group stage Bhayangkara Neutral 1–4 Platje 738 Hadiyana

Trofeo Hamengkubuwono X + Trofeo Hamengkubuwono X match details Date Round Opponent Venue Result Scorers Referee 8 September – 14:30 Trofeo match 1 PSIM Neutral 0–0 Ikhsan Prasetya Jati 8 September – 16:00 Trofeo match 2 Indonesia U23s Neutral 0–1 Fariq Hitaba

Review and events January–April

Bali United started the season by playing away to Liga 2 team Blitar United in the round of 32 of the Piala Indonesia. Ilija Spasojević gave Bali United the lead with a header from Fadil Sausu's free kick in the 9th minute. Bali United doubled the lead when Melvin Platje taped Spasojević's pass into the net. They sealed the game in the 63rd minute when Platje scored with a penalty and secured a 3–0 win in the first leg.

On the first day of the new month, a brace from Spasojević and goals from Irfan Bachdim and Platje secured Bali United's place in round of 16 of Piala Indonesia in a 4–0 win over Blitar United and 7–0 win on aggregate. The winning streak continues when Bali United won away against Persela. Jairo Rodrigues scored an own goal and failed to convert the penalty that was given after being saved by Wawan Hendrawan sealed 1–0 victory in the first leg. Four days later, Fadil scored a brace in the second leg at home secured a 3–0 win on aggregate against Persela and Bali United through to the quarter-finals.

After almost two-month break because of pre-season tournament Piala Presiden, Piala Indonesia continues with the first leg of quarter-finals when they faced Persija. Shahar Ginanjar saved a penalty from Stefano Lilipaly in the 12th minute, made the score goalless in the first half. Eight minutes into the second half, Lilipaly paid for his failure with a goal after receiving a pass from Bachdim. He scored his second goal in this match in the 80th minute, before Bambang Pamungkas narrow the margin and made the score 2–1 for Bali United.

May–August

Bali United were beaten 1–0 away by Persija in the second leg of Piala Indonesia quarter-finals, with Ismed Sofyan scored from a penalty and ended their journey in Piala Indonesia as they lose on away goals. Bali United then kicked off their league season with a home game against Persebaya on 16 May 2019. Bali United took a lead when Ilija Spasojević successfully scored after receiving a pass from Stefano Lilipaly. However, 15 minutes before the half time, Mokhamad Syaifuddin unleashed a right-foot shot and equalized for Persebaya. In the second half, Paulo Sérgio secured their first win of the season with a kick that hit one of the Persebaya defender and scored his first goal in his official debut. Bali United played the next game against 2017 Liga 1 champions, Bhayangkara. Yabes Roni's kick in 70th minute was enough for Bali United to get their first ever win over Bhayangkara since 2016. In their third consecutive home games after Persija requested an exchange of home status due to security reasons after the 2019 Indonesian general election in Jakarta, they got their third consecutive win after Paulo Sérgio scored a chip shot over Andritany Ardhiyasa in the 82nd minute making the score 1–0.

Bali United flagged June off with their fourth consecutive home game against PSIS on 22 June 2019 after the week 4 match against Kalteng Putra was postponed to 26 June 2019. They also secure their fourth consecutive win after Spasojević scored with a header in the 70th minute. In the first away game of the season, Bali United played Kalteng Putra. The match was postponed from its original date of 15 June due to the FIFA international friendly match agenda for Indonesia national football team and Lebaran. Ricky Fajrin scored an early lead with a header from the corner kick of Paulo Sérgio. However, Kalteng Putra scored a quick goal, three minutes in the second half when Yohanes Pahabol put a pass from free-kick situation in the net and equalized. Both teams played with 10 men after Leonard Tupamahu and Diogo Campos was sent off in the 60th minute. Bali United took advantage when Willian Pacheco scored. But Antoni Nugroho equalized once again and the match ended in 2–2 draw, ended their consecutive win. Bali United got their first win in away games after won 3–0 against 10-men Liga 1 debutant Badak Lampung. Spasojević scored in the 33rd minute after receiving a long pass from Fadil Sausu. Fadil again made a beautiful pass for Pacheco's goal in 66th minute. Two minutes after that, Melvin Platje scored his first goal since came back from injury with a drive shot and finished the month at the top of the table.

With the match against Borneo on 4 July was postponed, Bali United started July on the road against Barito Putera on 14 July with a 0–1 lost after Rafael Silva scored the goals 10 minutes before the game ended, while two of Bali United's goal were disallowed. This lost ended Bali United's five unbeaten run. Bali United again lost 2–0 at away to Persela, who took the lead in the first half through Alex Gonçalves in 15th and 45th minute. On 22 July, they finally played at home after four consecutive away games when they faced Liga 1 debutant and 2018 Liga 2 champions, PSS. Bali United took the early lead when Spasojević scored from a penalty. Asyraq Gufron scored to his own goal made the home team lead 2–0 in the first half. Yevhen Bokhashvili narrow the score after converted a penalty in 65th minute. The third penalty was awarded to this match in the 82nd minute and Platje successfully sealed the game 3–1, ended the two losing streak. Bali United's last match of the month was played at away on the 26th against Persib. A late goal from Spasojević secured Bali United a 2–0 away victory after Lilipaly scored the other goal.

On the first day of August, they beat the newly crowned Piala Indonesia winner, PSM 1–0 at home, in which Platje scored in the 60th minute with a header. In the next home game, Bali United faced Semen Padang. Semen Padang were leading 1–0 with an own goal from Pacheco, before Bali United pulled a comeback within 2 minutes with a goal each from Fajrin and Platje just before the half-time. Bali United finished the game 4–1 with two more goals in the second half from Platje and substitutes Irfan Bachdim. On 15 August, Bali United beat league leaders TIRA-Persikabo 2–1 at Pakansari as Lilipaly scored a brace. This result made Bali United became the first team to beat TIRA-Persikabo this season and seized the top spot of the table once again. They went on to win their sixth match in a row on 20 August in a 1–0 away match against Madura United. Spasojević scored the only goal in the second half, while the home team finished the match with 10-men after Jaimerson Xavier was sent off. Four days later, Bali United resumed their winning streak after beating Arema 2–1 at home. Pacheco scored the opening goal in the 27th minute with a header. Makan Konaté scored an equalizer for Arema on 44th minute, before Spasojević scored the winning goal in the 57th minute, with a header. Bali United closed the last match at home for the first half of the season after beating Borneo in the delayed week 7 match. Spasojević opened the scoring with a shot from Platje's pass on 6th minute, and he doubled the lead in the 55th minute with a rebound shot from Fadil's free kick, before Renan Silva scored a consolation goal for Borneo in the 79th minute.

September–December As the match against Persipura on 1 September was postponed due to riot in Jayapura, Bali United started their September with the first match in the second half of the season as they away to Bhayangkara. Goalless draw became the outcome of this match when one shots each from Ilija Spasojević and Stefano Lilipaly hit the crossbar. It also ended their eight winning streak. A goal from Melvin Platje earned Bali United a 1–0 win six days later, at away to the defending champions Persija. TIRA-Persikabo's defeat a day after meant the win for Bali United was enough to bring them a 10-point lead at the top of the table. Bali United's unbeaten streak nearly ended when Persebaya led 1–0 until in the 88 minute, before a free-kick from captain Fadil Sausu leveled and maintained their lead at the top of the table. They finished September with a narrow 2–1 win over 10-man Kalteng Putra after former Bali United's player I Gede Sukadana receive a second yellow card at the end of the first half. A header from Platje and Spasojević scored from penalty spot, extend their lead at the top of the table with 12 points and their unbeaten streak to 12 match.