Troubleshooting

Solutions to common issues you might encounter while using Margin.

Having trouble? Here are solutions to the most common issues.

Kernel Issues

"Kernel failed to connect"

The kernel couldn't establish a connection to the execution backend.

Solutions:

  1. Refresh the page and try connecting again
  2. Check your internet connection
  3. Wait 30 seconds and retry—our infrastructure may be scaling

"Kernel disconnected unexpectedly"

Your session lost its connection to the kernel.

Solutions:

  1. The kernel will auto-reconnect when you return to the tab
  2. You can also click the kernel button to reconnect manually
  3. Any cells you run while disconnected will queue and execute once reconnected
  4. Your notebook content is safe—it's saved separately from the kernel
  5. Variables will be lost; re-run your cells from the top
Kernels disconnect after 10 minutes of inactivity to free resources. This is normal—just start running cells and the kernel reconnects automatically. While you're actively working (typing, moving the mouse, viewing the notebook), the connection stays alive.

"Out of memory" or kernel crashes

Your code exceeded memory limits.

Solutions:

  1. Clear large variables: del large_df then import gc; gc.collect()
  2. Load data in chunks for large files
  3. Use more efficient data types: df['col'].astype('category')
  4. Restart the kernel and try with a smaller sample first
# Load with explicit sample size to test
df = margin.load("big_file", sample=10000)

Code cell won't stop running

A cell is taking too long or stuck in an infinite loop.

Solutions:

  1. Click the Stop button in the toolbar
  2. If that doesn't work, restart the kernel from the ⋮ menu
  3. Check your code for infinite loops or blocking operations

Dataset Issues

"Dataset not found"

The margin.load() call can't find your file.

Solutions:

  1. Check the exact filename in the Datasets page
  2. Try using the display name instead of filename
  3. Ensure the dataset finished uploading (check for green checkmark)
# List available datasets to see exact names
import margin
for ds in margin.list_datasets():
    print(ds.name, '-', ds.display_name)

Upload stuck or failed

File upload didn't complete.

Solutions:

  1. Check file size is under 50 MB
  2. Verify file format is CSV, JSON, JSONL, or Parquet
  3. Try a different browser
  4. For large files, compress and re-upload, or use Parquet format

Dataset preview shows wrong data

The preview table doesn't match what you expect.

Solutions:

  1. Preview shows first 100 rows only—your data may vary later
  2. Check for encoding issues in your source file (use UTF-8)
  3. CSV parsing may interpret columns differently—load and check dtypes

Brief Issues

Artifacts not showing

Embedded charts/tables don't appear in your brief.

Solutions:

  1. Make sure the source notebook is saved
  2. Re-run the cell that generates the output
  3. Check that the output type is supported (table, chart, image, text)
  4. Try removing and re-inserting the artifact

Can't insert artifacts

The artifact insertion modal is empty or disabled.

Solutions:

  1. Ensure your brief is linked to a notebook (check brief settings)
  2. Run cells in your notebook to generate outputs
  3. Save the notebook before trying to insert

Brief won't save

Changes aren't persisting.

Solutions:

  1. Check for a red error indicator
  2. Refresh and check if changes actually saved (they often did)
  3. Try a shorter brief—very long content may timeout
  4. Clear browser cache and retry

Account Issues

Can't log in

Authentication is failing.

Solutions:

  1. Check your email address is spelled correctly
  2. Use the Forgot password link to reset
  3. Check your email for verification link (including spam folder)
  4. Try a different browser or incognito mode

Email verification not arriving

You signed up but didn't get the confirmation email.

Solutions:

  1. Check spam/junk folder
  2. Wait 5 minutes—email can be delayed
  3. Request a new verification email from the login page
  4. Check you entered the correct email address

Hit usage limits

You've reached your plan's limits.

Solutions:

  1. Check usage in Settings → Billing
  2. Limits reset monthly
  3. Upgrade to Pro for higher limits
  4. Delete unused notebooks/datasets to free up space

Display Issues

Charts not rendering

Matplotlib or Plotly charts show errors or blank output.

Solutions:

  1. Make sure you call plt.show() for matplotlib
  2. For Plotly, use fig.show() or just return the figure
  3. Check the console for JavaScript errors
  4. Try a simpler plot first to isolate the issue
# Matplotlib - always show
import matplotlib.pyplot as plt
plt.plot([1, 2, 3])
plt.show()

# Plotly - works with or without show
import plotly.express as px
fig = px.line(x=[1, 2, 3], y=[1, 4, 9])
fig.show()

LaTeX not rendering

Math equations appear as raw text.

Solutions:

  1. Use double dollar signs for block equations: $$E = mc^2$$
  2. Use single dollar signs for inline: $x^2$
  3. Escape underscores in non-math text: variable\_name
  4. Make sure the cell is Markdown, not code

Table too wide

DataFrames are overflowing the screen.

Solutions:

  1. Limit displayed columns: df[['col1', 'col2', 'col3']]
  2. Use pandas options: pd.set_option('display.max_columns', 10)
  3. The table will scroll horizontally if needed

Performance Issues

Notebook loading slowly

The notebook page takes a long time to open.

Solutions:

  1. Clear cell outputs before saving large notebooks
  2. Split very long notebooks into multiple smaller ones
  3. Avoid embedding large images directly—link to them instead
  4. Check your internet connection speed

Code execution is slow

Cells take longer than expected to run.

Solutions:

  1. This is cloud execution—first run of a session warms up
  2. Check for inefficient code (nested loops, unoptimized pandas)
  3. Profile your code to find bottlenecks
  4. For heavy compute, consider running locally and uploading results

Still Stuck?

If none of these solve your issue:

Contact support – Email hello@monumentlabs.io

Include in your message:

  • What you're trying to do
  • The exact error message (screenshot if possible)
  • Browser and OS you're using
  • Steps to reproduce the issue