<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>307</ContextCount>
  <ElementCount>493</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>114</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>9</UnitCount>
  <MyReports>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-consolidated-balance-sheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Consolidated Balance Sheets (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-consolidated-balance-sheets-parentheticals</Role>
      <ShortName>Consolidated Balance Sheets (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-consolidated-statements-of-operations</Role>
      <ShortName>Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Consolidated Statements of Comprehensive Loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-consolidated-statements-of-comprehensive-loss</Role>
      <ShortName>Consolidated Statements of Comprehensive Loss</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-consolidated-statements-of-stockholders-equity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-consolidated-statements-of-cash-flows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>995443 - Disclosure - Award Timing Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure</Role>
      <ShortName>Award Timing Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>995445 - Disclosure - Insider Trading Arrangements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements</Role>
      <ShortName>Insider Trading Arrangements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>995447 - Disclosure - Insider Trading Policies and Procedures</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc</Role>
      <ShortName>Insider Trading Policies and Procedures</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>995550 - Disclosure - Cybersecurity Risk Management and Strategy Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/cyd/role/CybersecurityRiskManagementAndStrategyDisclosure</Role>
      <ShortName>Cybersecurity Risk Management and Strategy Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>995555 - Disclosure - Note A - Organization and Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-a-organization-and-operations</Role>
      <ShortName>Note A - Organization and Operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>995556 - Disclosure - Note B - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies</Role>
      <ShortName>Note B - Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>995557 - Disclosure - Note C - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition</Role>
      <ShortName>Note C - Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>995558 - Disclosure - Note D - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-d-leases</Role>
      <ShortName>Note D - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>995559 - Disclosure - Note E - Cash, Cash Equivalents and Restricted Cash</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-e-cash-cash-equivalents-and-restricted-cash</Role>
      <ShortName>Note E - Cash, Cash Equivalents and Restricted Cash</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>995560 - Disclosure - Note F - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-f-earnings-per-share</Role>
      <ShortName>Note F - Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>995561 - Disclosure - Note G - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-g-inventories</Role>
      <ShortName>Note G - Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>995562 - Disclosure - Note H - Property, Plant and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-h-property-plant-and-equipment</Role>
      <ShortName>Note H - Property, Plant and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>995563 - Disclosure - Note I - Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets</Role>
      <ShortName>Note I - Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>995564 - Disclosure - Note J - Fair Value of Financial Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-j-fair-value-of-financial-instruments</Role>
      <ShortName>Note J - Fair Value of Financial Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>995565 - Disclosure - Note K - Notes Payable and Long-term Debt</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt</Role>
      <ShortName>Note K - Notes Payable and Long-term Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>995566 - Disclosure - Note L - Convertible Senior Notes</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes</Role>
      <ShortName>Note L - Convertible Senior Notes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>995567 - Disclosure - Note M - Accrued Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-m-accrued-liabilities</Role>
      <ShortName>Note M - Accrued Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>995568 - Disclosure - Note N - Other Income and Expense</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-n-other-income-and-expense</Role>
      <ShortName>Note N - Other Income and Expense</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>995569 - Disclosure - Note O - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes</Role>
      <ShortName>Note O - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>995570 - Disclosure - Note P - Share-based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation</Role>
      <ShortName>Note P - Share-based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>995571 - Disclosure - Note Q - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-q-stockholders-equity</Role>
      <ShortName>Note Q - Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>995572 - Disclosure - Note R - Segment and Geographic Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information</Role>
      <ShortName>Note R - Segment and Geographic Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>995573 - Disclosure - Note S - Employee Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-s-employee-benefit-plans</Role>
      <ShortName>Note S - Employee Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>995574 - Disclosure - Note T - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-t-commitments-and-contingencies</Role>
      <ShortName>Note T - Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>995575 - Disclosure - Note U - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-u-subsequent-events</Role>
      <ShortName>Note U - Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>995576 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-significant-accounting-policies-policies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>995577 - Disclosure - Note B - Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies-tables</Role>
      <ShortName>Note B - Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>995578 - Disclosure - Note C - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition-tables</Role>
      <ShortName>Note C - Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>995579 - Disclosure - Note D - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-d-leases-tables</Role>
      <ShortName>Note D - Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-d-leases</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>995580 - Disclosure - Note E - Cash, Cash Equivalents and Restricted Cash (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-e-cash-cash-equivalents-and-restricted-cash-tables</Role>
      <ShortName>Note E - Cash, Cash Equivalents and Restricted Cash (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-e-cash-cash-equivalents-and-restricted-cash</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>995581 - Disclosure - Note F - Earnings Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-f-earnings-per-share-tables</Role>
      <ShortName>Note F - Earnings Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-f-earnings-per-share</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>995582 - Disclosure - Note G - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-g-inventories-tables</Role>
      <ShortName>Note G - Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-g-inventories</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>995583 - Disclosure - Note H - Property, Plant and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-h-property-plant-and-equipment-tables</Role>
      <ShortName>Note H - Property, Plant and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-h-property-plant-and-equipment</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>995584 - Disclosure - Note I - Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets-tables</Role>
      <ShortName>Note I - Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>995585 - Disclosure - Note J - Fair Value of Financial Instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-j-fair-value-of-financial-instruments-tables</Role>
      <ShortName>Note J - Fair Value of Financial Instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-j-fair-value-of-financial-instruments</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>995586 - Disclosure - Note K - Notes Payable and Long-term Debt (Tables)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt-tables</Role>
      <ShortName>Note K - Notes Payable and Long-term Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>995587 - Disclosure - Note L - Convertible Senior Notes (Tables)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes-tables</Role>
      <ShortName>Note L - Convertible Senior Notes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>995588 - Disclosure - Note M - Accrued Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-m-accrued-liabilities-tables</Role>
      <ShortName>Note M - Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-m-accrued-liabilities</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>995589 - Disclosure - Note N - Other Income and Expense (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-n-other-income-and-expense-tables</Role>
      <ShortName>Note N - Other Income and Expense (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-n-other-income-and-expense</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>995590 - Disclosure - Note O - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-tables</Role>
      <ShortName>Note O - Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-o-income-taxes</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>995591 - Disclosure - Note P - Share-based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation-tables</Role>
      <ShortName>Note P - Share-based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>995592 - Disclosure - Note Q - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-q-stockholders-equity-tables</Role>
      <ShortName>Note Q - Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-q-stockholders-equity</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>995593 - Disclosure - Note R - Segment and Geographic Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information-tables</Role>
      <ShortName>Note R - Segment and Geographic Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>995594 - Disclosure - Note B - Summary of Significant Accounting Policies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies-details-textual</Role>
      <ShortName>Note B - Summary of Significant Accounting Policies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies-tables</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>995595 - Disclosure - Note B - Summary of Significant Accounting Policies - Property, Plant and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies-property-plant-and-equipment-details</Role>
      <ShortName>Note B - Summary of Significant Accounting Policies - Property, Plant and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>995596 - Disclosure - Note B - Summary of Significant Accounting Policies - Product Warrant Liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-b-summary-of-significant-accounting-policies-product-warrant-liability-details</Role>
      <ShortName>Note B - Summary of Significant Accounting Policies - Product Warrant Liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>995597 - Disclosure - Note C - Revenue Recognition (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition-details-textual</Role>
      <ShortName>Note C - Revenue Recognition (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition-tables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>995598 - Disclosure - Note C - Revenue Recognition - Revenue by Major Product Category (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition-revenue-by-major-product-category-details</Role>
      <ShortName>Note C - Revenue Recognition - Revenue by Major Product Category (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>995599 - Disclosure - Note C - Revenue Recognition - Summary of Valuation Assumption of Warrant (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-c-revenue-recognition-summary-of-valuation-assumption-of-warrant-details</Role>
      <ShortName>Note C - Revenue Recognition - Summary of Valuation Assumption of Warrant (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>995600 - Disclosure - Note D - Leases (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-d-leases-details-textual</Role>
      <ShortName>Note D - Leases (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-d-leases-tables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>995601 - Disclosure - Note D - Leases - Components of Lease Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-d-leases-components-of-lease-expense-details</Role>
      <ShortName>Note D - Leases - Components of Lease Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>995602 - Disclosure - Note D - Leases - Maturities of Lease Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-d-leases-maturities-of-lease-liabilities-details</Role>
      <ShortName>Note D - Leases - Maturities of Lease Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>995603 - Disclosure - Note E - Cash, Cash Equivalents and Restricted Cash (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-e-cash-cash-equivalents-and-restricted-cash-details-textual</Role>
      <ShortName>Note E - Cash, Cash Equivalents and Restricted Cash (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-e-cash-cash-equivalents-and-restricted-cash-tables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>995604 - Disclosure - Note E - Cash, Cash Equivalents and Restricted Cash - Summary of Cash, Cash Equivalents and Restricted Cash (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-e-cash-cash-equivalents-and-restricted-cash-summary-of-cash-cash-equivalents-and-restricted-cash-details</Role>
      <ShortName>Note E - Cash, Cash Equivalents and Restricted Cash - Summary of Cash, Cash Equivalents and Restricted Cash (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>995605 - Disclosure - Note F - Earnings Per Share - Computation of Basic and Diluted Net Income (Loss) per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-f-earnings-per-share-computation-of-basic-and-diluted-net-income-loss-per-share-details</Role>
      <ShortName>Note F - Earnings Per Share - Computation of Basic and Diluted Net Income (Loss) per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>995606 - Disclosure - Note F - Earnings Per Share - Potentially Dilutive Securities Excluded from Diluted Net Income (Loss) per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-f-earnings-per-share-potentially-dilutive-securities-excluded-from-diluted-net-income-loss-per-share-details</Role>
      <ShortName>Note F - Earnings Per Share - Potentially Dilutive Securities Excluded from Diluted Net Income (Loss) per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>995607 - Disclosure - Note G - Inventories (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-g-inventories-details-textual</Role>
      <ShortName>Note G - Inventories (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-g-inventories-tables</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>995608 - Disclosure - Note G - Inventories - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-g-inventories-inventories-details</Role>
      <ShortName>Note G - Inventories - Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>995609 - Disclosure - Note H - Property, Plant and Equipment (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-h-property-plant-and-equipment-details-textual</Role>
      <ShortName>Note H - Property, Plant and Equipment (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-h-property-plant-and-equipment-tables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>995610 - Disclosure - Note H - Property, Plant and Equipment - Property, Plant and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-h-property-plant-and-equipment-property-plant-and-equipment-details</Role>
      <ShortName>Note H - Property, Plant and Equipment - Property, Plant and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>995611 - Disclosure - Note I - Intangible Assets (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets-details-textual</Role>
      <ShortName>Note I - Intangible Assets (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets-tables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>995612 - Disclosure - Note I - Intangible Assets - Finite-lived Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets-finitelived-intangible-assets-details</Role>
      <ShortName>Note I - Intangible Assets - Finite-lived Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>995613 - Disclosure - Note I - Intangible Assets - Future Amortization Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-i-intangible-assets-future-amortization-expense-details</Role>
      <ShortName>Note I - Intangible Assets - Future Amortization Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>995614 - Disclosure - Note J - Fair Value of Financial Instruments - Financial Instruments Measured at Fair Value on a Recurring Basis (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-j-fair-value-of-financial-instruments-financial-instruments-measured-at-fair-value-on-a-recurring-basis-details</Role>
      <ShortName>Note J - Fair Value of Financial Instruments - Financial Instruments Measured at Fair Value on a Recurring Basis (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>995615 - Disclosure - Note K - Notes Payable and Long-term Debt (Details Textual)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt-details-textual</Role>
      <ShortName>Note K - Notes Payable and Long-term Debt (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt-tables</ParentRole>
      <Position>72</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>995616 - Disclosure - Note K - Notes Payable and Long-term Debt - Schedule of Notes Payable and Long-term Debt (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt-schedule-of-notes-payable-and-longterm-debt-details</Role>
      <ShortName>Note K - Notes Payable and Long-term Debt - Schedule of Notes Payable and Long-term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>995617 - Disclosure - Note K - Notes Payable and Long-term Debt - Schedule of Notes Payable and Long-term Debt (Details) (Parentheticals)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-k-notes-payable-and-longterm-debt-schedule-of-notes-payable-and-longterm-debt-details-parentheticals</Role>
      <ShortName>Note K - Notes Payable and Long-term Debt - Schedule of Notes Payable and Long-term Debt (Details) (Parentheticals)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>995618 - Disclosure - Note L - Convertible Senior Notes (Details Textual)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes-details-textual</Role>
      <ShortName>Note L - Convertible Senior Notes (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes-tables</ParentRole>
      <Position>75</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>995619 - Disclosure - Note L - Convertible Senior Notes - Schedule of Carrying Value of Convertible Senior Notes (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes-schedule-of-carrying-value-of-convertible-senior-notes-details</Role>
      <ShortName>Note L - Convertible Senior Notes - Schedule of Carrying Value of Convertible Senior Notes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>995620 - Disclosure - Note L - Convertible Senior Notes - Schedule of Interest Expense (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-l-convertible-senior-notes-schedule-of-interest-expense-details</Role>
      <ShortName>Note L - Convertible Senior Notes - Schedule of Interest Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>995621 - Disclosure - Note M - Accrued Liabilities - Accrued Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-m-accrued-liabilities-accrued-liabilities-details</Role>
      <ShortName>Note M - Accrued Liabilities - Accrued Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>995622 - Disclosure - Note N - Other Income and Expense - Other Income and Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-n-other-income-and-expense-other-income-and-expense-details</Role>
      <ShortName>Note N - Other Income and Expense - Other Income and Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>79</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>995623 - Disclosure - Note O - Income Taxes (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-details-textual</Role>
      <ShortName>Note O - Income Taxes (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-tables</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>995624 - Disclosure - Note O - Income Taxes - Income (Loss) from Operations Before Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-income-loss-from-operations-before-income-taxes-details</Role>
      <ShortName>Note O - Income Taxes - Income (Loss) from Operations Before Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>995625 - Disclosure - Note O - Income Taxes - Provision for Income Tax Expense (Benefit) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-provision-for-income-tax-expense-benefit-details</Role>
      <ShortName>Note O - Income Taxes - Provision for Income Tax Expense (Benefit) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>995626 - Disclosure - Note O - Income Taxes - Net Deferred Tax Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-net-deferred-tax-assets-and-liabilities-details</Role>
      <ShortName>Note O - Income Taxes - Net Deferred Tax Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>995627 - Disclosure - Note O - Income Taxes - Summary of Valuation of Allowance (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-summary-of-valuation-of-allowance-details</Role>
      <ShortName>Note O - Income Taxes - Summary of Valuation of Allowance (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>995628 - Disclosure - Note O - Income Taxes - Reconciliation of the U.S. Federal Income Tax Rate (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-reconciliation-of-the-us-federal-income-tax-rate-details</Role>
      <ShortName>Note O - Income Taxes - Reconciliation of the U.S. Federal Income Tax Rate (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>995629 - Disclosure - Note O - Income Taxes - Unrecognized Tax Benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-o-income-taxes-unrecognized-tax-benefits-details</Role>
      <ShortName>Note O - Income Taxes - Unrecognized Tax Benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>86</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>995630 - Disclosure - Note P - Share-based Compensation (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation-details-textual</Role>
      <ShortName>Note P - Share-based Compensation (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation-tables</ParentRole>
      <Position>87</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>995631 - Disclosure - Note P - Share-based Compensation - Performance Stock Unit/Awards Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation-performance-stock-unitawards-activity-details</Role>
      <ShortName>Note P - Share-based Compensation - Performance Stock Unit/Awards Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>995632 - Disclosure - Note P - Share-based Compensation - Restricted Stock Unit/Awards Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation-restricted-stock-unitawards-activity-details</Role>
      <ShortName>Note P - Share-based Compensation - Restricted Stock Unit/Awards Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>89</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>995633 - Disclosure - Note P - Share-based Compensation - Share-based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-p-sharebased-compensation-sharebased-compensation-details</Role>
      <ShortName>Note P - Share-based Compensation - Share-based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>90</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>995634 - Disclosure - Note Q - Stockholders' Equity (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-q-stockholders-equity-details-textual</Role>
      <ShortName>Note Q - Stockholders' Equity (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-q-stockholders-equity-tables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>995635 - Disclosure - Note Q - Stockholders' Equity - Stock Sold in Offering (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-q-stockholders-equity-stock-sold-in-offering-details</Role>
      <ShortName>Note Q - Stockholders' Equity - Stock Sold in Offering (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>995636 - Disclosure - Note R - Segment and Geographic Information (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information-details-textual</Role>
      <ShortName>Note R - Segment and Geographic Information (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information-tables</ParentRole>
      <Position>93</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>995637 - Disclosure - Note R - Segment and Geographic Information - Schedule of Segment Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information-schedule-of-segment-information-details</Role>
      <ShortName>Note R - Segment and Geographic Information - Schedule of Segment Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>94</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>995638 - Disclosure - Note R - Segment and Geographic Information - Revenue Information by Geographic Region (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information-revenue-information-by-geographic-region-details</Role>
      <ShortName>Note R - Segment and Geographic Information - Revenue Information by Geographic Region (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>95</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>995639 - Disclosure - Note R - Segment and Geographic Information - Asset Information by Geographic Region (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-r-segment-and-geographic-information-asset-information-by-geographic-region-details</Role>
      <ShortName>Note R - Segment and Geographic Information - Asset Information by Geographic Region (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>96</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>995640 - Disclosure - Note S - Employee Benefit Plans (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-s-employee-benefit-plans-details-textual</Role>
      <ShortName>Note S - Employee Benefit Plans (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-s-employee-benefit-plans</ParentRole>
      <Position>97</Position>
    </Report>
    <Report instance="aaoi20251231_10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>995641 - Disclosure - Note T - Commitments and Contingencies (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://ao-inc.com/20251231/role/statement-note-t-commitments-and-contingencies-details-textual</Role>
      <ShortName>Note T - Commitments and Contingencies (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://ao-inc.com/20251231/role/statement-note-t-commitments-and-contingencies</ParentRole>
      <Position>98</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>aaoi-20251231.xsd</File>
    <File>aaoi-20251231_cal.xml</File>
    <File>aaoi-20251231_def.xml</File>
    <File>aaoi-20251231_lab.xml</File>
    <File>aaoi-20251231_pre.xml</File>
    <File doctype="10-K" isDefinitelyFs="true" isUsgaap="true" original="aaoi20251231_10k.htm">aaoi20251231_10k.htm</File>
  </InputFiles>
  <SupplementalFiles>
    <File>aoi1.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="1236">http://fasb.org/us-gaap/2025</BaseTaxonomy>
    <BaseTaxonomy items="16">http://xbrl.sec.gov/cyd/2025</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
    <BaseTaxonomy items="12">http://xbrl.sec.gov/ecd/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
