XML 60 R49.htm IDEA: XBRL DOCUMENT v2.4.1.9
Price Risk Management Activities (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended 1 Months Ended
Mar. 31, 2015
Mar. 31, 2014
Apr. 30, 2015
Price Risk Management Activities (Textual)      
Compliance program costs $ 133us-gaap_CostOfGoodsSoldOverhead $ 92us-gaap_CostOfGoodsSoldOverhead  
Foreign Currency Contracts [Member]      
Price Risk Management Activities (Textual)      
Monetary notional amount of derivative liabilities $ 470us-gaap_DerivativeLiabilityNotionalAmount
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
   
Foreign Currency Contracts [Member] | Subsequent Event [Member]      
Price Risk Management Activities (Textual)      
Foreign currency commitments maturity date     Apr. 30, 2015
Fair Value Hedging [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_FairValueHedgingMember
   
Cash Flow Hedging [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
   
Economic Hedging [Member] | Swap [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 10,404invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Swap [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Swap [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 9,808invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Swap [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 48,405invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Grain (in bushels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 16,070,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_GrainInBushelsMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Soybean Oil (in pounds) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 113,820,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_SoybeanOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 11invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Grain (in bushels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 80,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_GrainInBushelsMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Soybean Oil (in pounds) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_SoybeanOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Future [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 55,761invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Future [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Grain (in bushels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 35,590,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_GrainInBushelsMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Future [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Soybean Oil (in pounds) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 263,280,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_SoybeanOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Future [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Future [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Grain (in bushels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 1,510,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_GrainInBushelsMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Future [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Soybean Oil (in pounds) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_SoybeanOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Economic Hedging [Member] | Forward Contracts [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Grain (in bushels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 16,786,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_GrainInBushelsMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Economic Hedging [Member] | Forward Contracts [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Grain (in bushels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 1,437,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= vlo_EconomicHedgingMember
/ us-gaap_EnergyAxis
= vlo_GrainInBushelsMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Swap [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 3,448invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Swap [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Swap [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 3,448invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Swap [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_SwapMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 113,258invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Natural Gas (in millions of BTUs) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 2,500,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= vlo_NaturalGasInBtusMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 14,657invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Future [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Natural Gas (in millions of BTUs) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= vlo_NaturalGasInBtusMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Future [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 113,341invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Future [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Natural Gas (in millions of BTUs) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 500,000invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= vlo_NaturalGasInBtusMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Future [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 14,657invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Future [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Natural Gas (in millions of BTUs) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_FutureMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= vlo_NaturalGasInBtusMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Options Held [Member] | Long (Purchases) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 3,650invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OptionMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Options Held [Member] | Long (Purchases) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OptionMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_LongMember
   
Trading Derivatives [Member] | Options Held [Member] | Short (Sales) [Member] | Maturity Current Year [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 4,050invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OptionMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityCurrentYearMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember
   
Trading Derivatives [Member] | Options Held [Member] | Short (Sales) [Member] | Maturity Year Two [Member] | Crude Oil (in thousands of barrels) [Member]      
Volume of Outstanding Contracts      
Nonmonetary notional amount of price risk derivatives 0invest_DerivativeNonmonetaryNotionalAmount
/ us-gaap_DerivativeByNatureAxis
= us-gaap_OptionMember
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CommodityMember
/ us-gaap_EnergyAxis
= us-gaap_CrudeOilMember
/ vlo_MaturityTimePeriodAxis
= vlo_MaturityYearTwoMember
/ us-gaap_PositionAxis
= us-gaap_ShortMember