Automate extraction of tax lot data from Charles Schwab positions page. Export detailed holding information with cost basis, gains/losses, and dates for tax reporting.
Automatically visits each holding and extracts complete tax lot details
Export to JSON or CSV with all cost basis, dates, and gain/loss information
Organized data perfect for tax preparation and portfolio analysis
All processing happens locally - no data sent to external servers
Open your Charles Schwab account and go to the positions page (https://client.schwab.com/app/accounts/positions/#/)
Click the extension icon and press "Start Extraction". The tool will automatically find all holdings and begin processing each one.
For each holding, the extension clicks "Next Steps" → "Lot Details", extracts all tax lot information from the modal, and moves to the next position.
Once complete, export your data as JSON or CSV. All information is organized by account and symbol for easy tax preparation.
Gather all cost basis and holding period data needed for accurate tax reporting
Analyze performance, unrealized gains, and tax implications across holdings
Identify opportunities for tax loss harvesting with detailed lot-level data
The Schwab Tax Lot Extractor is completely open source. You can review the code, contribute improvements, or fork the project for your own use.
Click the "Add to Chrome" button above to go to our Chrome Web Store page
Click "Add to Chrome" and confirm the installation in the popup
Navigate to your Schwab positions page and click the extension icon to begin
Join users who have already simplified their tax preparation with automated tax lot extraction.