<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.19.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>380</ContextCount>
  <ElementCount>437</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>70</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-consolidated-balance-sheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Consolidated Balance Sheets (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-consolidated-balance-sheets-parentheticals</Role>
      <ShortName>Consolidated Balance Sheets (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-consolidated-statements-of-income</Role>
      <ShortName>Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-consolidated-statements-of-comprehensive-income</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Consolidated Statements of Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-consolidated-statements-of-shareholders-equity</Role>
      <ShortName>Consolidated Statements of Shareholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-consolidated-statements-of-cash-flows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Note 1 - Summary of Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies</Role>
      <ShortName>Note 1 - Summary of Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Note 2 - Cash and Due From Banks</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-2-cash-and-due-from-banks</Role>
      <ShortName>Note 2 - Cash and Due From Banks</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Note 3 - Securities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-3-securities</Role>
      <ShortName>Note 3 - Securities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Note 4 - Loans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans</Role>
      <ShortName>Note 4 - Loans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Note 5 - Premises and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-5-premises-and-equipment</Role>
      <ShortName>Note 5 - Premises and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Disclosure - Note 6 - Interest Receivable and Other Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-6-interest-receivable-and-other-assets</Role>
      <ShortName>Note 6 - Interest Receivable and Other Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Note 7 - Deposits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-7-deposits</Role>
      <ShortName>Note 7 - Deposits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Note 8 - FHLB Advances</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-8-fhlb-advances</Role>
      <ShortName>Note 8 - FHLB Advances</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Note 9 - Interest on Deposits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-9-interest-on-deposits-</Role>
      <ShortName>Note 9 - Interest on Deposits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - Disclosure - Note 10 - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes</Role>
      <ShortName>Note 10 - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Note 11 - Stock Option Plan</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan</Role>
      <ShortName>Note 11 - Stock Option Plan</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Note 12 - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-12-earnings-per-share</Role>
      <ShortName>Note 12 - Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Note 13 - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies</Role>
      <ShortName>Note 13 - Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Note 14 - Financial Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-14-financial-instruments</Role>
      <ShortName>Note 14 - Financial Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Note 15 - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-15-fair-value-measurements</Role>
      <ShortName>Note 15 - Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Note 16 - Related Party Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-16-related-party-transactions</Role>
      <ShortName>Note 16 - Related Party Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Note 17 - Profit Sharing Plan</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-17-profit-sharing-plan</Role>
      <ShortName>Note 17 - Profit Sharing Plan</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Note 18 - Restrictions on Dividends</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-18-restrictions-on-dividends</Role>
      <ShortName>Note 18 - Restrictions on Dividends</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Note 19 - Other Post-retirement Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-19-other-postretirement-benefit-plans</Role>
      <ShortName>Note 19 - Other Post-retirement Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - Disclosure - Note 20 - Regulatory Matters</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-20-regulatory-matters</Role>
      <ShortName>Note 20 - Regulatory Matters</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Note 21 - Parent Only Condensed Financial Statements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements</Role>
      <ShortName>Note 21 - Parent Only Condensed Financial Statements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-significant-accounting-policies-policies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Note 1 - Summary of Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies-tables</Role>
      <ShortName>Note 1 - Summary of Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - Disclosure - Note 3 - Securities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-3-securities-tables</Role>
      <ShortName>Note 3 - Securities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-3-securities</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - Disclosure - Note 4 - Loans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-tables</Role>
      <ShortName>Note 4 - Loans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-4-loans</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Note 5 - Premises and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-5-premises-and-equipment-tables</Role>
      <ShortName>Note 5 - Premises and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-5-premises-and-equipment</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Note 6 - Interest Receivable and Other Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-6-interest-receivable-and-other-assets-tables</Role>
      <ShortName>Note 6 - Interest Receivable and Other Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-6-interest-receivable-and-other-assets</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Note 7 - Deposits (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-7-deposits-tables</Role>
      <ShortName>Note 7 - Deposits (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-7-deposits</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Note 9 - Interest on Deposits (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-9-interest-on-deposits-tables</Role>
      <ShortName>Note 9 - Interest on Deposits (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-9-interest-on-deposits-</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - Disclosure - Note 10 - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes-tables</Role>
      <ShortName>Note 10 - Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Note 11 - Stock Option Plan (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan-tables</Role>
      <ShortName>Note 11 - Stock Option Plan (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Note 12 - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-12-earnings-per-share-tables</Role>
      <ShortName>Note 12 - Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-12-earnings-per-share</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Note 13 - Commitments and Contingencies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies-tables</Role>
      <ShortName>Note 13 - Commitments and Contingencies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Note 14 - Financial Instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-14-financial-instruments-tables</Role>
      <ShortName>Note 14 - Financial Instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-14-financial-instruments</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>041 - Disclosure - Note 15 - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-15-fair-value-measurements-tables</Role>
      <ShortName>Note 15 - Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-15-fair-value-measurements</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>042 - Disclosure - Note 16 - Related Party Transactions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-16-related-party-transactions-tables</Role>
      <ShortName>Note 16 - Related Party Transactions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-16-related-party-transactions</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>043 - Disclosure - Note 20 - Regulatory Matters (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-20-regulatory-matters-tables</Role>
      <ShortName>Note 20 - Regulatory Matters (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-20-regulatory-matters</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>044 - Disclosure - Note 21 - Parent Only Condensed Financial Statements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements-tables</Role>
      <ShortName>Note 21 - Parent Only Condensed Financial Statements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>045 - Disclosure - Note 1 - Summary of Accounting Policies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies-details-textual</Role>
      <ShortName>Note 1 - Summary of Accounting Policies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies-tables</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>046 - Disclosure - Note 1 - Summary of Accounting Policies - Premises and Equipment Estimated Useful Lives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies-premises-and-equipment-estimated-useful-lives-details</Role>
      <ShortName>Note 1 - Summary of Accounting Policies - Premises and Equipment Estimated Useful Lives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>047 - Disclosure - Note 1 - Summary of Accounting Policies - Future Estimated Amortization Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-1-summary-of-accounting-policies-future-estimated-amortization-expense-details</Role>
      <ShortName>Note 1 - Summary of Accounting Policies - Future Estimated Amortization Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>048 - Disclosure - Note 2 - Cash and Due From Banks (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-2-cash-and-due-from-banks-details-textual</Role>
      <ShortName>Note 2 - Cash and Due From Banks (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-2-cash-and-due-from-banks</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>049 - Disclosure - Note 3 - Securities (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-3-securities-details-textual</Role>
      <ShortName>Note 3 - Securities (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-3-securities-tables</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>050 - Disclosure - Note 3 - Securities - Amortized Cost and Estimated Fair Values of Debt Securities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-3-securities-amortized-cost-and-estimated-fair-values-of-debt-securities-details</Role>
      <ShortName>Note 3 - Securities - Amortized Cost and Estimated Fair Values of Debt Securities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>051 - Disclosure - Note 3 - Securities - Securities in a Continuous Loss Position (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-3-securities-securities-in-a-continuous-loss-position-details</Role>
      <ShortName>Note 3 - Securities - Securities in a Continuous Loss Position (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>052 - Disclosure - Note 3 - Securities - Contractual Maturity or Call Date (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-3-securities-contractual-maturity-or-call-date-details</Role>
      <ShortName>Note 3 - Securities - Contractual Maturity or Call Date (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>053 - Disclosure - Note 4 - Loans (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-details-textual</Role>
      <ShortName>Note 4 - Loans (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-4-loans-tables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>054 - Disclosure - Note 4 - Loans - Loans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-loans-details</Role>
      <ShortName>Note 4 - Loans - Loans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>055 - Disclosure - Note 4 - Loans - Non Accrual Loans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-non-accrual-loans-details</Role>
      <ShortName>Note 4 - Loans - Non Accrual Loans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>056 - Disclosure - Note 4 - Loans - Aging of Past Due Loans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-aging-of-past-due-loans-details</Role>
      <ShortName>Note 4 - Loans - Aging of Past Due Loans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>057 - Disclosure - Note 4 - Loans - Impaired Loans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-impaired-loans-details</Role>
      <ShortName>Note 4 - Loans - Impaired Loans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>058 - Disclosure - Note 4 - Loans - Weighted Average Risk Grades of Loan Portfolio (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-weighted-average-risk-grades-of-loan-portfolio-details</Role>
      <ShortName>Note 4 - Loans - Weighted Average Risk Grades of Loan Portfolio (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>059 - Disclosure - Note 4 - Loans - Loans by Credit Quality Indicator (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-loans-by-credit-quality-indicator-details</Role>
      <ShortName>Note 4 - Loans - Loans by Credit Quality Indicator (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>060 - Disclosure - Note 4 - Loans - Allowance for Loan Losses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-allowance-for-loan-losses-details</Role>
      <ShortName>Note 4 - Loans - Allowance for Loan Losses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>061 - Disclosure - Note 4 - Loans - Changes in the Allowance Off Balance Sheet Commitments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-4-loans-changes-in-the-allowance-off-balance-sheet-commitments-details</Role>
      <ShortName>Note 4 - Loans - Changes in the Allowance Off Balance Sheet Commitments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>062 - Disclosure - Note 5 - Premises and Equipment (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-5-premises-and-equipment-details-textual</Role>
      <ShortName>Note 5 - Premises and Equipment (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-5-premises-and-equipment-tables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>063 - Disclosure - Note 5 - Premises and Equipment - Classifications of Premises and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-5-premises-and-equipment-classifications-of-premises-and-equipment-details</Role>
      <ShortName>Note 5 - Premises and Equipment - Classifications of Premises and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>064 - Disclosure - Note 6 - Interest Receivable and Other Assets - Other Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-6-interest-receivable-and-other-assets-other-assets-details</Role>
      <ShortName>Note 6 - Interest Receivable and Other Assets - Other Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>065 - Disclosure - Note 7 - Deposits - Deposit (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-7-deposits-deposit-details</Role>
      <ShortName>Note 7 - Deposits - Deposit (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>066 - Disclosure - Note 7 - Deposits - Certificates of Deposit Issued and Remaining Maturities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-7-deposits-certificates-of-deposit-issued-and-remaining-maturities-details</Role>
      <ShortName>Note 7 - Deposits - Certificates of Deposit Issued and Remaining Maturities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>067 - Disclosure - Note 8 - FHLB Advances (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-8-fhlb-advances-details-textual</Role>
      <ShortName>Note 8 - FHLB Advances (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-8-fhlb-advances</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>068 - Disclosure - Note 9 - Interest on Deposits - Interest on Deposits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-9-interest-on-deposits-interest-on-deposits-details</Role>
      <ShortName>Note 9 - Interest on Deposits - Interest on Deposits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>069 - Disclosure - Note 10 - Income Taxes (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes-details-textual</Role>
      <ShortName>Note 10 - Income Taxes (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes-tables</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>070 - Disclosure - Note 10 - Income Taxes - Provision for Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes-provision-for-income-taxes-details</Role>
      <ShortName>Note 10 - Income Taxes - Provision for Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>071 - Disclosure - Note 10 - Income Taxes - Deferred Tax Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes-deferred-tax-assets-and-liabilities-details</Role>
      <ShortName>Note 10 - Income Taxes - Deferred Tax Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>072 - Disclosure - Note 10 - Income Taxes - Effective Tax Rate Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-10-income-taxes-effective-tax-rate-reconciliation-details</Role>
      <ShortName>Note 10 - Income Taxes - Effective Tax Rate Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>073 - Disclosure - Note 11 - Stock Option Plan (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan-details-textual</Role>
      <ShortName>Note 11 - Stock Option Plan (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan-tables</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>074 - Disclosure - Note 11 - Stock Option Plan - Stock Option Plan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan-stock-option-plan-details</Role>
      <ShortName>Note 11 - Stock Option Plan - Stock Option Plan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>075 - Disclosure - Note 11 - Stock Option Plan - Weighted Average Fair Value of Options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan-weighted-average-fair-value-of-options-details</Role>
      <ShortName>Note 11 - Stock Option Plan - Weighted Average Fair Value of Options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>076 - Disclosure - Note 11 - Stock Option Plan - Restricted Stock (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-11-stock-option-plan-restricted-stock-details</Role>
      <ShortName>Note 11 - Stock Option Plan - Restricted Stock (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>077 - Disclosure - Note 12 - Earnings Per Share (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-12-earnings-per-share-details-textual</Role>
      <ShortName>Note 12 - Earnings Per Share (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-12-earnings-per-share-tables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>078 - Disclosure - Note 12 - Earnings Per Share - Earnings Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-12-earnings-per-share-earnings-per-share-details</Role>
      <ShortName>Note 12 - Earnings Per Share - Earnings Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>079 - Disclosure - Note 13 - Commitments and Contingencies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies-details-textual</Role>
      <ShortName>Note 13 - Commitments and Contingencies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies-tables</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>080 - Disclosure - Note 13 - Commitments and Contingencies - Future Minimum Commitments Under Operating Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies-future-minimum-commitments-under-operating-leases-details</Role>
      <ShortName>Note 13 - Commitments and Contingencies - Future Minimum Commitments Under Operating Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>081 - Disclosure - Note 13 - Commitments and Contingencies - Financial Instruments Whose Contract Amounts Represent Credit Risk (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-13-commitments-and-contingencies-financial-instruments-whose-contract-amounts-represent-credit-risk-details</Role>
      <ShortName>Note 13 - Commitments and Contingencies - Financial Instruments Whose Contract Amounts Represent Credit Risk (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>082 - Disclosure - Note 14 - Financial Instruments - Fair Value of Financial Instruments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-14-financial-instruments-fair-value-of-financial-instruments-details</Role>
      <ShortName>Note 14 - Financial Instruments - Fair Value of Financial Instruments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>083 - Disclosure - Note 15 - Fair Value Measurements (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-15-fair-value-measurements-details-textual</Role>
      <ShortName>Note 15 - Fair Value Measurements (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-15-fair-value-measurements-tables</ParentRole>
      <Position>84</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>084 - Disclosure - Note 15 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring and Non Recurring Basis (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-15-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-and-non-recurring-basis-details</Role>
      <ShortName>Note 15 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring and Non Recurring Basis (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>085 - Disclosure - Note 16 - Related Party Transactions (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-16-related-party-transactions-details-textual</Role>
      <ShortName>Note 16 - Related Party Transactions (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-16-related-party-transactions-tables</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>086 - Disclosure - Note 16 - Related Party Transactions - Loans to Related Parties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-16-related-party-transactions-loans-to-related-parties-details</Role>
      <ShortName>Note 16 - Related Party Transactions - Loans to Related Parties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>087 - Disclosure - Note 17 - Profit Sharing Plan (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-17-profit-sharing-plan-details-textual</Role>
      <ShortName>Note 17 - Profit Sharing Plan (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-17-profit-sharing-plan</ParentRole>
      <Position>88</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>088 - Disclosure - Note 19 - Other Post-retirement Benefit Plans (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-19-other-postretirement-benefit-plans-details-textual</Role>
      <ShortName>Note 19 - Other Post-retirement Benefit Plans (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-19-other-postretirement-benefit-plans</ParentRole>
      <Position>89</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>089 - Disclosure - Note 20 - Regulatory Matters (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-20-regulatory-matters-details-textual</Role>
      <ShortName>Note 20 - Regulatory Matters (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.ovcb.com/20181231/role/statement-note-20-regulatory-matters-tables</ParentRole>
      <Position>90</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>090 - Disclosure - Note 20 - Regulatory Matters - Company and Bank's Actual Capital Amounts and Ratios (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-20-regulatory-matters-company-and-banks-actual-capital-amounts-and-ratios-details</Role>
      <ShortName>Note 20 - Regulatory Matters - Company and Bank's Actual Capital Amounts and Ratios (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>91</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>091 - Disclosure - Note 21 - Parent Only Condensed Financial Statements - Condensed Balance Sheets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements-condensed-balance-sheets-details</Role>
      <ShortName>Note 21 - Parent Only Condensed Financial Statements - Condensed Balance Sheets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>092 - Disclosure - Note 21 - Parent Only Condensed Financial Statements - Condensed Balance Sheets (Details) (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements-condensed-balance-sheets-details-parentheticals</Role>
      <ShortName>Note 21 - Parent Only Condensed Financial Statements - Condensed Balance Sheets (Details) (Parentheticals)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>93</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>093 - Disclosure - Note 21 - Parent Only Condensed Financial Statements - Condensed Statements of Income (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements-condensed-statements-of-income-details</Role>
      <ShortName>Note 21 - Parent Only Condensed Financial Statements - Condensed Statements of Income (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>94</Position>
    </Report>
    <Report instance="ovly-20181231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>094 - Disclosure - Note 21 - Parent Only Condensed Financial Statements - Condensed Statements of Cash Flows (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.ovcb.com/20181231/role/statement-note-21-parent-only-condensed-financial-statements-condensed-statements-of-cash-flows-details</Role>
      <ShortName>Note 21 - Parent Only Condensed Financial Statements - Condensed Statements of Cash Flows (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>95</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>ovly-20181231.xml</File>
    <File>ovly-20181231.xsd</File>
    <File>ovly-20181231_cal.xml</File>
    <File>ovly-20181231_def.xml</File>
    <File>ovly-20181231_lab.xml</File>
    <File>ovly-20181231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/us-gaap/2018-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2018-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/srt/2018-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
