Bulk import your components

Updated

Adding parts one at a time is fine for a single swap, but when you're setting
up a whole bike it's slow. Instead, bring in a whole list at once — the
importer pulls out each part, you review, and confirm.

Open it from Add New Component(s) → Import components. The first step asks
Where is your list? and shows only the input for the source you pick:

  • Strava gear — copy the components table from your bike's gear page.
  • Spec page — copy the specifications table from 99spokes, the
    manufacturer's site or a shop page.
  • Spreadsheet / CSV — upload a file and match the columns.
  • Start from a template — if you don't have a list yet.
  • This bike's catalog build — appears only when the bike was created from
    our catalog, and imports its stock parts in one click.

Whichever you pick, everything lands in the same review step before anything is
saved. You can also skip the importer and paste the list into the chat.

The fastest source: your Strava gear

If you've been tracking components on Strava, you don't have to retype them —
copy the components table and paste it straight in.

  1. On a computer, go to strava.com and sign in.
  2. Open Settings → My Gear (or
    strava.com/settings/gear).
  3. Click the bike you want. Strava shows its components table — columns
    like Type, Brand, Model, Added, Removed, Distance, Action.
  4. Click just before the first row, drag to the last row to highlight
    the table, and copy: ⌘C (Mac) / Ctrl+C (Windows).
  5. Paste into the import box (⌘V / Ctrl+V) and click
    Parse & extract components.

It's fine to grab a little extra — only the component rows are kept. The
importer also:

  • keeps only the parts that are currently installed (rows with no
    Removed date), and
  • reads the Added date as each part's install date, so wear and service
    history line up from day one.

Want distances to keep updating automatically afterwards? That's a separate,
one-time setup — see Connect Strava.

Upload a CSV file

Keep your build in a spreadsheet? Export it as CSV (in Excel or Google
Sheets: File → Save As / Download → CSV) and upload it directly — no
copy-paste needed.

  1. Under Import from CSV file, choose your .csv.
  2. Match each column to a field — Type, Brand, Model, Specs, Weight,
    Purchase price, Installed date, Position
    , or Ignore. Columns are
    auto-matched from your headers; fix any that look off.
  3. Click Import to go to the review screen.

Only the Type column is essential — everything else is optional, and
unknown types come in as Other so you can set them while reviewing. Common
EU spreadsheets that use semicolons (;) instead of commas work too.

Don't have a CSV yet? Click Download CSV template for a ready-to-fill file
with the right headers and a few example rows. Fill it in, save, and upload it
back — its columns map automatically.

Other sources and free-form text

No tidy table? Paste whatever you have — a shop spec sheet, a receipt, or a few
lines of notes. A quick parser reads structured lists instantly; for free-form
text it hands off to AI, which reads messy, sectioned spec sheets
(Frame / Fork / Groupset / Wheels …) and works out the right component types,
splitting a groupset or wheelset into its individual parts.

The most reliable plain-text format is one component per line, as
Type: Brand, Model (add a third comma-separated value for an extra spec):

Frame: Specialized, Tarmac SL7, FACT 12r
Chain: Shimano, CN-M8100, 12-speed
Front Tire: Specialized, Turbo Cotton, 28mm

If you'd rather skip the quick parser, tick Use AI parser before parsing to
go straight to AI.

From a spec page (99spokes, brand or shop site)

The fastest way to get a stock build in when you have no Strava gear yet:

  1. Pick Spec page in the importer. With a bike selected, the
    Search this bike on 99spokes link opens 99spokes with your make, model
    and year already filled in. A manufacturer or shop page works the same way.
  2. Open the exact model and year. On 99spokes the Specs table runs from
    Frame down to Tires; on brand sites it is usually a Specifications or
    Components tab.
  3. Select the table from the first row to the last, copy it, and paste it into
    the importer. Copy only the table, not the whole page: the parser stops at
    about 10,000 characters.
  4. Use AI parser is pre-ticked for this source. Parse, then check the
    review list: a row like Shimano XT M8100 groupset comes out as separate
    shifters, derailleur, cassette and chain, so confirm the brand and model on
    each before importing.

Spec pages describe the bike as sold. If you have since swapped parts, edit or
untick those rows in the review step.

Don't have a list yet? Start from a template

A few options get you going without typing from scratch:

  • Use standard list — drops in a skeleton of the components on a typical
    bike. Parse it to get a starter set, then fill in brands and models later.
  • Use example template — loads a complete example build you can edit to
    match your own bike before importing.
  • Download CSV template — a spreadsheet-ready file with example rows (see
    Upload a CSV file above).

Or just tell the chat

The in-app chat does the same job without the wizard. Open the chat, paste the
Strava table, spec sheet or list, and say which bike it belongs to, for example
"these are the parts on my Scalpel, install them". The assistant parses the
text, shows you what it found, and creates and installs the components once you
confirm. It works on every plan.

If you use Claude or ChatGPT with the MCP connection
(Alloy and Carbon), the same paste-and-install works from there.

Review and import

You'll land on a review screen showing every component found, grouped by
category. There you can:

  • untick anything you don't want to import,
  • fix the type, brand (with brand search), model, or notes
    right inline, and
  • Re-parse with AI if the quick parser read your list but got some parts
    wrong — your text is fine, AI usually does better.

The final step lays everything out in a table — including weight and price
brought in from a CSV — for one last check. Nothing is saved until you confirm.

Troubleshooting

  • Nothing was extracted. Make sure you copied the actual rows/lines (not
    just a heading), then try again — or tick Use AI parser.
  • A component has the wrong type, brand, or model. Fix it inline on the
    review screen, or use Re-parse with AI. Changes don't affect anything
    until you confirm.
  • A CSV column landed in the wrong field. Change the column's dropdown in
    the mapping step before importing.
  • .xlsx won't upload. Save it as .csv first (File → Save As → CSV).
  • Old/removed parts showed up. Only currently-installed Strava rows are
    imported; if an old part appears, untick it on the review screen.

Related

componentsimportbulkstravagearmigratesetuppastecsvspreadsheetexcel99spokesspec sheetchat

Get your bikes noticed

Track every component and showcase your builds to the world

Already have an account? Login