PetroChina Co.’s profit fell from a record in the first half as crude prices dropped and domestic oil demand flatlined.
China’s biggest oil and gas producer reported 84 billion yuan ($12 billion) in net profit for the first six months of the year, compared to 89 billion yuan in the same period in 2024, it said in an exchange filing on Tuesday. The company posted record half and full-year profits last year.
Still, the firm was upbeat about its results, as the drop in profits was narrower than the decline in international oil prices. Brent oil averaged about $71 a barrel from January to June, compared to more than $83 in the same period in 2024.
“The operating profitability of the company in the first half of the year was better than expected,” it said. “All operating segments remained profitable.”
The state-owned firm is seeking to boost annual oil and gas production for an eighth straight year in 2025 as Beijing tries to limit dependency on foreign energy amid rising geopolitical tensions. The firm’s capital expenses were 64 billion yuan the first half of the year, with output at 924 million barrels of oil equivalent, 2% higher than the previous year, it said.
PetroChina has benefited from China’s rising demand for natural gas, a cleaner fuel to help bridge China’s energy transition. Its gas division brought in 18.6 billion yuan in profit in the period, compared to 16.8 billion yuan last year, a rare bright spot against the weaker performance of the downstream oil sector.
The refining, chemicals and new materials segment earned 11.1 billion yuan in profit through June, down from 13.6 billion yuan a year earlier. Still, the company is positioned to benefit from government crackdowns on tax evasion and overcapacity targeting smaller private refineries.
The upstream sector, which includes new energy, recorded 85.7 billion yuan in profit, lower than 91.7 billion yuan last year, after the global drop in prices. But its cheaper onshore output has helped lower feedstock cost at its refineries, a cost advantage compared to peers relying more on imports.
Its refining-focused peer Sinopec reported a drop in first-half profit last week, while offshore driller Cnooc Ltd. is to release results Wednesday.
Generated by readers, the comments included herein do not reflect the views and opinions of Rigzone. All comments are subject to editorial review. Off-topic, inappropriate or insulting comments will be removed.
element
var scriptTag = document.createElement(‘script’);
scriptTag.src = url;
scriptTag.async = true;
scriptTag.onload = implementationCode;
scriptTag.onreadystatechange = implementationCode;
location.appendChild(scriptTag);
};
var div = document.getElementById(‘rigzonelogo’);
div.innerHTML += ” +
‘‘ +
”;
var initJobSearch = function () {
//console.log(“call back”);
}
var addMetaPixel = function () {
if (-1 > -1 || -1 > -1) {
/*Meta Pixel Code*/
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,’script’,
‘https://connect.facebook.net/en_US/fbevents.js’);
fbq(‘init’, ‘1517407191885185’);
fbq(‘track’, ‘PageView’);
/*End Meta Pixel Code*/
} else if (0 > -1 && 66 > -1)
{
/*Meta Pixel Code*/
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version=’2.0′;
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,’script’,
‘https://connect.facebook.net/en_US/fbevents.js’);
fbq(‘init’, ‘1517407191885185’);
fbq(‘track’, ‘PageView’);
/*End Meta Pixel Code*/
}
}
// function gtmFunctionForLayout()
// {
//loadJS(“https://www.googletagmanager.com/gtag/js?id=G-K6ZDLWV6VX”, initJobSearch, document.body);
//}
// window.onload = (e => {
// setTimeout(
// function () {
// document.addEventListener(“DOMContentLoaded”, function () {
// // Select all anchor elements with class ‘ui-tabs-anchor’
// const anchors = document.querySelectorAll(‘a .ui-tabs-anchor’);
// // Loop through each anchor and remove the role attribute if it is set to “presentation”
// anchors.forEach(anchor => {
// if (anchor.getAttribute(‘role’) === ‘presentation’) {
// anchor.removeAttribute(‘role’);
// }
// });
// });
// }
// , 200);
//});