<?xml version='1.0' encoding='UTF-8'?>
<FilingSummary>
  <Version>3.7.0.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>380</ContextCount>
  <ElementCount>72</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>318</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="jhvit-20170501.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>010001 - Document - Document And Entity Information {Elements}</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://jhvit-20170501/role/DocumentDocumentandEntityInformation</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory></MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="jhvit-20170501.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>true</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>010002 - Document - John Hancock Variable Insurance Trust {Unlabeled}</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://jhvit-20170501/role/AAAA</Role>
      <ShortName>John Hancock Variable Insurance Trust</ShortName>
      <MenuCategory></MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="jhvit-20170501.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>040000 - Disclosure - Risk/Return Detail Data {Elements}</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/rr/role/RiskReturnDetailData</Role>
      <ShortName>Risk/Return Detail Data</ShortName>
      <MenuCategory></MenuCategory>
      <Position>3</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>jhvit-20170501.xml</File>
    <File>jhvit-20170501.xsd</File>
    <File>jhvit-20170501_def.xml</File>
    <File>jhvit-20170501_lab.xml</File>
    <File>jhvit-20170501_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>BarChart1.png</File>
    <File>BarChart2.png</File>
    <File>BarChart3.png</File>
    <File>BarChart4.png</File>
    <File>BarChart5.png</File>
    <File>BarChart6.png</File>
    <File>BarChart7.png</File>
    <File>BarChart8.png</File>
    <File>BarChart9.png</File>
    <File>BarChart10.png</File>
    <File>BarChart11.png</File>
    <File>BarChart12.png</File>
    <File>BarChart13.png</File>
    <File>BarChart14.png</File>
    <File>BarChart15.png</File>
    <File>BarChart16.png</File>
    <File>BarChart17.png</File>
    <File>BarChart18.png</File>
    <File>BarChart19.png</File>
    <File>BarChart20.png</File>
    <File>BarChart21.png</File>
    <File>BarChart22.png</File>
    <File>BarChart23.png</File>
    <File>BarChart24.png</File>
    <File>BarChart25.png</File>
    <File>BarChart26.png</File>
    <File>BarChart27.png</File>
    <File>BarChart28.png</File>
    <File>BarChart29.png</File>
    <File>BarChart30.png</File>
    <File>BarChart31.png</File>
    <File>BarChart32.png</File>
    <File>BarChart33.png</File>
    <File>BarChart34.png</File>
    <File>BarChart35.png</File>
    <File>BarChart36.png</File>
    <File>BarChart37.png</File>
    <File>BarChart38.png</File>
    <File>BarChart39.png</File>
    <File>BarChart40.png</File>
    <File>BarChart41.png</File>
    <File>BarChart42.png</File>
    <File>BarChart43.png</File>
    <File>BarChart44.png</File>
    <File>BarChart45.png</File>
    <File>BarChart46.png</File>
    <File>BarChart47.png</File>
    <File>BarChart48.png</File>
    <File>BarChart49.png</File>
    <File>BarChart50.png</File>
    <File>BarChart51.png</File>
    <File>BarChart52.png</File>
    <File>BarChart53.png</File>
    <File>BarChart54.png</File>
    <File>BarChart55.png</File>
    <File>BarChart56.png</File>
    <File>BarChart57.png</File>
    <File>BarChart58.png</File>
    <File>BarChart59.png</File>
    <File>BarChart60.png</File>
    <File>BarChart61.png</File>
    <File>BarChart62.png</File>
  </SupplementalFiles>
  <BaseTaxonomies/>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
