☀️☀️☀️ 20% off with SUMMER26 ☀️☀️☀️

Troubleshooting the app

This article is about the app itself misbehaving: it won't load, throws an error, freezes, or shows different numbers on your phone than on your laptop. If prices, balances, share counts or dividends look wrong on every device, that's a data problem — go to Troubleshooting Data Issues instead.

Almost every app-level problem comes from local state on one device: cached market data, a stale build, or a browser that won't let Capitally write to its local database. Capitally runs all calculations on your device and keeps an encrypted copy of your project on our servers, so clearing local state is safe — the project comes back on the next login.

Try these five things, in order

Work down this list. Each step costs more than the one before it, and most problems clear at step one or two. None of them touch the encrypted copy of your project on the server. One exception to the order: if the trouble started the moment you changed something in the project, skip the list and undo that change instead — see When the app freezes or a project stops responding.

  1. Reload the page or restart the browser. Close the app completely and reopen it. If you installed Capitally as an app on your desktop or phone, quit and relaunch it rather than just switching away. This resolves most transient issues, including a device stuck on an older version.
  2. Reset the data and prices cache. Go to Settings → Analysis and click Reset data and prices cache under Market Data Cache. This forces the app to re-download market data and recalculate every value from scratch. Run it on the device showing the wrong numbers.
  3. Remove all data from this device. Go to Settings → Privacy and click Remove all data from this device under Device data. This clears everything stored locally and forces a full re-sync. You'll need to log in again. Use it for corrupted local state, or when the browser has run out of storage.
  4. Try a different browser. Chrome and Microsoft Edge are the safest to test with. If the problem disappears there, it's your browser or one of its extensions — see the next section.
  5. Export and reimport into a fresh project. The last resort, and the one that clears persistent errors that survive everything above. Go to Settings → Export and save a full backup. Create a new project from Switch project → Add new project, then go to Import and pick the Capitally preset. Once the new project checks out, delete the old one.

Why the app won't load or shows an error

Four causes account for most load failures, and all four are about the browser rather than your data. Capitally stores your working copy in the browser's local database (IndexedDB), so anything that blocks or fills that database stops the app.

  • Private / incognito mode. Private browsing usually restricts or disables IndexedDB, which Capitally needs to function. Use a normal window.
  • Privacy extensions. Extensions that block cookies, storage or scripts can prevent Capitally from writing to its local database. Disable them for app.mycapitally.com and reload.
  • An outdated browser. Capitally needs a reasonably current browser; older builds fail in ways that look nothing like a version problem. Update the browser, then reload.
  • Storage quota exhausted. Capitally keeps a lot of data locally. When the browser's storage allocation runs out, writes start failing. Step 3 above — Settings → Privacy → Remove all data from this device — frees it up.

When the app freezes or a project stops responding

A freeze right after you change something usually means the change generated far more data than you expected. Setting a mortgage's interest payment frequency to daily, for example, produces thousands of interest transactions and can lock the project up. Undoing that change is the fix.

  1. Export the project first from Settings → Export, as a safety net.
  2. Click Undo in the top-right menu, and keep undoing until the app becomes responsive again. Redo puts everything back if you overshoot.
  3. If the app locks up before you can open the menu, go straight to https://app.mycapitally.com/start/history/. That opens the project history directly, where you can undo or delete the offending change. This works for any change that made the project unresponsive.

If the app throws JavaScript errors instead — Cannot read properties of undefined and similar — reset the data and prices cache first (step 2 above). If the error survives that, export and reimport into a fresh project (step 5). A clean project typically clears errors that keep coming back.

Different values on different devices or browsers

The usual cause is stale or incorrectly loaded price data cached on one device, not a sync failure. It often shows up first in charts — a benchmark line that looks different on the tablet than on the laptop — or as one asset that stopped updating on a single device.

  1. On the device showing the wrong numbers, go to Settings → Analysis and click Reset data and prices cache.
  2. If the difference survives that, go to Settings → Privacy → Remove all data from this device on that device, then log in again and let the project re-sync from the server.
  3. For a severe divergence — missing transactions, a split that exists on one device and not the other — export from both devices before touching anything, so you can compare. Use Settings → Export for the whole project, or select the affected rows on the Positions tab in Portfolio and choose Export → Export items for a single asset or account. Then wipe the bad device, log in, and check. If it still looks wrong, import the export from whichever device held the most complete state.

"Issues were encountered while evaluating metrics"

This warning — in full, Issues were encountered while evaluating metrics. Numbers you see may not be accurate! — means one or more positions couldn't be valued, and where you see it tells you which kind of problem it is. If it appears on one device but not another, it's cached price data — reset the data and prices cache on the affected device. If it appears everywhere, the underlying data is the problem.

Expand the warning to see the individual messages underneath it. If instead of a list you get an upgrade prompt — You've exceeded the limit of assets you can track, or Your plan doesn't include stock options — nothing is broken: the positions are there, but your plan doesn't cover them. See Subscription and billing.

For a problem on one specific asset that won't go away, the price source may have become mislinked. Edit the asset, open the Prices tab, and select the correct ticker again from the list under Source prices using this market symbol.

If the warning persists on every device, the message underneath it says which problem to chase: We couldn't fetch price for X, We couldn't resolve currency pair X and the delisted-symbol cases are in Prices, symbols and market data; There is a negative balance since X is in Balances and cash don't match.

"Failed to fetch" and "Positions failed to resolve"

This means Capitally temporarily couldn't pull market prices for the positions view. It's usually caused by a large volume of price requests firing at once — common with large portfolios, and especially after a period of inactivity — with one of them timing out. Click Retry and it normally resolves.

Your stored data is not affected. Transactions and history are saved as-is regardless of this error; only the live price loading for the positions view fails. If it starts happening constantly rather than occasionally, report it to support.

"User not authorized to access project"

Log out and log back in. This error — often seen as Failed to fetch. User not authorized to access project — almost always follows a subscription, plan or trial change that your running session hasn't picked up. The wording reads like a permissions failure, but your project and your data are intact.

If a fresh login doesn't clear it, go to Settings → Privacy → Remove all data from this device and log in again. If it still appears after that, it isn't a stale session: check Subscription and billing for plan state, and Your account and signing in if you can't get past the login screen at all.

Performance with large portfolios

Capitally performs every calculation on your device, so portfolio size sets the pace — there's no server doing the work for you, which is the same architecture that keeps your data private. As a rule of thumb, roughly 400 assets and several thousand transactions is the point where you start to notice it. That is not a cap: bigger projects still work, they just spend longer loading and recalculating.

  • First load is the slow one. Historical price data has to be fetched for every asset. Later loads read from the local cache and are much faster.
  • Loading many new symbols at once. Above roughly 200–250 new symbols in one go, the market data provider starts rejecting connections. Click Retry — it may take a couple of attempts, and the remaining symbols usually load within about a minute. It shouldn't recur on following days unless you hold hundreds of actively traded symbols.
  • Slow navigation after the first load. Moving between screens should be fast. If it lags, narrow the view with Account filters or Tags and explore the portfolio in smaller chunks.
  • Numbers arriving late is not the same as a freeze. The calculation engine runs in a background worker rather than on the page itself, so after a large import or a change touching many positions you should see values fill in progressively while the app stays usable. A window that genuinely stops responding is a different problem — see When the app freezes or a project stops responding above.

Checking which version you're running

Capitally is a web app that updates itself — there's no build to download. When a new version ships, a popup appears saying There's a newer version - click to update, and the version number you're currently on is at the bottom of the top-right menu.

That version number is the first thing to compare when two devices disagree, or when a plan change or a new feature hasn't shown up. If one device is behind, reload it. If reloading doesn't move it, remove all data from that device (Settings → Privacy) and log in again.

Still stuck

Capture the error before you contact us. Open the browser's developer console with Cmd + Option + J on macOS or Ctrl + Shift + J on Windows and Linux, and copy any error messages you see there.

Inside the app, the bottom of the top-right menu carries a small diagnostics link, next to privacy and terms and the version number. It opens a Diagnostics info window with:

  • Download diagnostic logs — an anonymized report containing internal identifiers, your recent actions, and the details of every error you've hit.
  • Export anonymized project — a copy of the project with names and values randomized, for issues we need to reproduce on our side.

Errors shown in the app also have a small copy button next to them that copies the full error details.

Send what you have to support@mycapitally.com with a description of the steps that trigger the problem. Getting help covers the full set of diagnostic tools.