Turning scattered broker data into clean, organized, and live-updating spreadsheets.
SheetWeaver converts bloated, static portfolio exports from brokers into clean, live-updating, and organized spreadsheets.
- π Live Updates: Injects
GOOGLEFINANCEformulas so your portfolio always reflects real-time market data. - π Privacy-Focused: SheetWeaver does not use a database or cloud backend. Portfolio files are processed locally on your device.
- β‘ Lightweight & Fast: Built on Tauri, utilizing system native webviews for a minimal footprint.
- π Free & Open Source: Free forever. No subscriptions, and community-driven.
Currently, SheetWeaver supports Groww stock-holding exports. Mutual funds and additional brokers are planned.
- Windows 10 or later
- Google account for Google Sheets
- A supported broker portfolio export
| OS | Architecture | Format | Download |
|---|---|---|---|
| Windows | x64 | .exe |
Download SheetWeaver .exe |
| Download | |||
| Download | |||
Need the MSI installer?
Download SheetWeaver MSI
The
.msipackage is an alternative for users who specifically require the Windows Installer format.
Note
Windows SmartScreen warning: SheetWeaver is a new application and is currently unsigned, so Windows may display a security warning when running the installer. When you run the installer, Windows may show a blue "Windows protected your PC" warning.
Click "More info" β "Run anyway" to proceed.
Groww : https://groww.in/
Tip
You can convert the generated data into a table and sort or filter it by metrics such as maximum amount invested, highest profit, and more.
You can also export the spreadsheet as a PDF
- Broker report formats may change without notice.
- Not every security may be supported by
GOOGLEFINANCE. - Market data may be delayed, unavailable, or incomplete.
- Generated formulas may behave differently depending on the spreadsheet application being used.
Important
SheetWeaver is provided as an open-source utility for organizing and transforming portfolio data. It is not financial, investment, tax, accounting, or legal advice.
While reasonable care is taken when developing and testing the application, SheetWeaver may contain bugs, incorrect calculations, unsupported securities, parsing errors, or compatibility issues caused by changes to broker reports, spreadsheet software, external services, or market-data providers.
Always verify generated values against your broker's original records before using them for financial, tax, investment, or other consequential decisions.
The maintainers of SheetWeaver are not responsible for financial losses, data loss, incorrect calculations, missed transactions, incorrect portfolio values, or any other direct or indirect consequences resulting from the use of this software, to the extent permitted by applicable law.
A: Two main reasons!
First, you only need to use this tool once. After that, your Excel file will automatically sync with live market data without any extra effort on your end.
Second, the default files provided by brokers are typically bloated, colorless, disorganized, and completely static.
A: No database is used as no data is stored to make things fast and you can download the desktop app which is fully offline so your data stays on your device only.
A: The GOOGLEFINANCE function is supported by Google Sheets and is not natively supported by Microsoft Excel. As a result, Excel cannot evaluate =GOOGLEFINANCE() formulas and may return an error such as #NAME?.
If you want the generated spreadsheet to update automatically using GOOGLEFINANCE, open it in Google Sheets.
A: This means that SheetWeaver was unable to find a supported ticker symbol for that stock, or that the stock is not supported by GOOGLEFINANCE.
If you want the market price to update automatically, you can manually find the correct ticker symbol and add it to the spreadsheet. Otherwise, SheetWeaver will use the current value from the original broker report as a fallback. Keep in mind that this value may not reflect the latest market price.
Tip
You can check whether a stock or security is supported by searching for it on GOOGLE FINANCE
A: Not necessarily. GOOGLEFINANCE determines the availability and update behavior of market data. Some prices may be delayed, unsupported, or temporarily unavailable.
1. Why use the Buy Price as a fallback value for Live Price instead of the Closing Price provided in the broker report?
The Google Sheets Caching Quirk: If you are importing this .xlsx file into Google Sheets, Google often evaluates bulk finance functions as #N/A for a brief second while the data fetches. If your fallback is a hardcoded string literal (e.g., injecting 135.52 directly into the formula), Sheets sometimes caches the fallback evaluation and stops trying to poll the live API.
livePriceCell.value = { formula: `IFERROR(GOOGLEFINANCE("${ticker}", "price"), C${rowIndex})` } as ExcelJS.CellValue;
For example, if we used a hardcoded value instead of a cell reference, Sheets would just return the hardcoded value and skip fetching the live stock price:
=IFERROR(GOOGLEFINANCE("GOOG:NASDAQ", "price"), C3) # βοΈ Will fetch the price first =IFERROR(GOOGLEFINANCE("GOOG:NASDAQ", "price"), 0) # β Skips calling API and returns 0
2. Why GOOGLEFINANCE?
We chose GOOGLEFINANCE because it was the simplest option to integrate with SheetWeaver and provides broad compatibility across devices through Google Sheets, without requiring SheetWeaver to maintain its own market-data infrastructure.
An alternative was to use Microsoft Excel's financial functions, but some of these features require a Microsoft 365 subscription.
For users who prefer Excel and only want to use it for documentation, Microsoft 365 provides functions such as STOCKHISTORY:
=STOCKHISTORY("AAPL", start_date, end_date)
For a practical example, see this Reference video
3. Why Tauri over Electron ?
The project currently favors Tauri because of its smaller runtime footprint and its suitability for a lightweight desktop application.
| Parameter | Electron.js | Tauri |
|---|---|---|
| SheetWeaver size after installation | ~700 MB | ~15 MB |
| Performance | Resource heavy | Native & Fast |
Note
The size figures above are project-specific observations and can change across versions and build configurations. They should not be treated as universal Electron-vs-Tauri benchmarks.
- Groww stock portfolio support
- Mutual fund support
- Integrate additional broker platforms
- Manual ticker symbol entry
- Developer mode/API key support
- Automatic ISIN lookup
- Monthly portfolio reports
- Linux Support
Run the development server:
npm install npm run dev
Open http://localhost:3000 with your browser to see the result.
Run the Tauri app:
npx tauri dev
Build the application yourself:
npx tauri build
Contributions, bug reports, feature suggestions, and improvements are welcome.
- For new features, major changes, or architectural changes, please start a discussion in the GitHub Discussions tab before opening a pull request.
- This helps us discuss the idea, avoid duplicated work, and agree on an approach before implementation.
- For small bug fixes, documentation changes, and minor improvements, you can open a pull request directly.
When submitting a pull request:
- Keep the changes focused and relevant.
- Explain what was changed and why.
- Link the related discussion or issue when applicable.
- Make sure the project builds and works as expected.
This project is licensed under a MIT License.
See the LICENSE file for more information.
If you found SheetWeaver helpful in organizing your investments, please consider giving the repository a star! It helps the project grow and makes it more visible to others who might benefit from it.