How to Sync Holdings Data

Learn how to set up holdings feeds to track your investment portfolio positions and values.

2 min read

On this page

Holdings feeds track your current investment positions. Monitor your portfolio composition, track position values, and build investment dashboards that update automatically.

Portfolio Positions

All securities you own

Market Values

Current position values

Scheduled Updates

Track value changes over time

Holdings and other investment data types.

Holdings Data Fields#

Symbol

Stock or fund ticker

Security Name

Full security name

Quantity

Shares or units held

Price

Current price

Market Value

Total position value

Cost Basis

Original purchase cost

Gain/Loss

Unrealized P&L

Account

Brokerage account

Field availability varies by brokerage

Cost basis and gain/loss depend on what your brokerage reports. Some institutions don't provide cost basis for transferred-in positions, so those fields can be empty for specific holdings.

Append vs. Overwrite#

Holdings are a point-in-time picture of your portfolio: each sync captures your positions as they are right now. The sync mode decides how that picture lands in your sheet or table:

Append

Writes a new timestamped set of rows (one per position) each sync. Use this to track how your portfolio composition and values change over time.

Overwrite

Updates the existing rows in place with current values. Best for live portfolio dashboards that should always show the present state.

Like balances, holdings history can't be backfilled: your record starts from the first sync and accumulates with each scheduled run, so the cadence you pick determines the resolution of your history.

Setting Up a Holdings Feed#

Setup Steps

  1. Connect your brokerage

    Ensure your investment account is connected in the Banks tab. Brokerages connect through the same flow as banks; see Connecting Brokerages if yours isn't linked yet.

  2. Create a holdings feed

    Click Create Feed and select 'Holdings' as the feed type in the Sources tab.

  3. Select investment accounts

    Choose which brokerage accounts to track. Investment accounts can't be mixed with checking/savings accounts in the same feed.

  4. Choose Append or Overwrite

    Use Overwrite for dashboards, Append for historical tracking.

  5. Pick an integration and map fields

    In the Destination tab, choose which integration receives the data, then map holdings fields to the columns in your sheet or table.

  6. Set a schedule

    Daily is typical for portfolio tracking (requires the Standard plan or higher; see the scheduling guide for plan gating).

The BankSync Connect Bank dialog searching for Schwab, showing brokerage result cards such as Charles Schwab, Fidelity, Robinhood, and Questrade, each with an Investment account-type tag and the SnapTrade provider.
Holdings feeds read from brokerage connections, connected through SnapTrade.

What happens on each sync#

  • First sync: one row per position is written for each selected account.
  • Subsequent syncs: Append adds a fresh set of position rows each run; Overwrite refreshes the existing rows. Positions you've fully sold stop appearing in new Append snapshots.
  • Number of rows varies: unlike balances (one row per account), a holdings sync writes one row per position, so a 30-position portfolio adds 30 rows per Append run. Factor that in when choosing your cadence.

Common Use Cases#

Portfolio Dashboard

A current view of all investment positions

Asset Allocation

Track diversification across asset classes

Performance Tracking

Monitor gains and losses over time

Combine with Trades

Use holdings feeds alongside trade feeds for a complete picture. Holdings shows your current positions, while trades shows how you got there.

Sync Trade Data

Use this page with your AI assistant

Every BankSync doc is available as plain Markdown for agents and LLMs.