> ## Documentation Index
> Fetch the complete documentation index at: https://help.bidright.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Product updates

> Changelog of new features, improvements, and fixes shipped to BidRight.

export const AnimatedDemo = ({version, publicId, alt, maxWidth = 544}) => {
  const asset = `${version}/${publicId}`;
  const transforms = `q_auto:best,w_${maxWidth * 2},c_limit`;
  const base = "https://res.cloudinary.com/dprm9dnll/image/upload";
  return <video autoPlay loop muted playsInline aria-label={alt} style={{
    width: "100%",
    maxWidth: `${maxWidth}px`,
    height: "auto",
    borderRadius: "8px",
    border: "2px solid #ededed",
    display: "block"
  }}>
      <source src={`${base}/f_webm,${transforms}/${asset}`} type="video/webm" />
      <source src={`${base}/f_mp4,${transforms}/${asset}`} type="video/mp4" />
    </video>;
};

<Update label="June 26, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Bid header refresh

  We slimmed down the bid header and reorganized key details so everything is easier to find. The header now shows **Rounds Expected**, so you can see how many rounds a bid is set up for.

  ![Refreshed bid header with a slimmer layout and reorganized bid data](https://res.cloudinary.com/dprm9dnll/image/upload/v1782503169/header-refresh_ostpp3.png)

  ### Deactivate users

  You can now deactivate users to suspend their BidRight access. Their history and data stay intact.

  <AnimatedDemo version="v1782503169" publicId="deactivate-users_z8yzli" alt="Deactivating a user to suspend BidRight access" />

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Bid import

  * **Auto mapping.** We improved how lane IDs map on import, especially for files from larger bidding sites. We also added more trailer types and recognize more origin and destination city/state formats.
  * **Large Excel files.** Large files used to take several minutes to load. They load much faster now.

  ### Lanes grid

  * **Interest column.** The Interest column now shows at every bid stage, even when it is empty.
  * **Modeled deadhead calculation.** We removed relay miles from the calculation so deadhead numbers align better with FreightMath.
  * **Column visibility.** We adjusted which core columns show at each bid stage, so the grid stays focused on what you need.

  ### Auto Rate

  We kept improving Auto Rate based on real-world use and are getting closer to a full release. A big thank you to everyone who has been testing Auto Rate and sharing feedback.

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  ### Rate export

  Rates were sometimes exporting to the wrong lanes. We fixed that and added safeguards so it should not happen again. Thank you to everyone who worked with us while we tracked down and fixed these issues.

  ### ZIP codes with commas

  ZIP codes stored as numbers with commas now import correctly.

  ### Recalculate S-Rates and Modeled OR

  Recalculating S-Rates was not updating Modeled OR on every lane. It now updates all lanes correctly.

  ## <span className="updates-section-heading">🔮 Coming soon</span>

  ### Lane Search and Area Control

  We are close to releasing two new features.

  * **Lane Search.** Search all bid data you have ever entered in BidRight. Find past lanes, rates, and decisions without opening each bid one by one.
  * **Area Control.** Set your bid strategy by area. Area Control fills in Auto Interest for you and speeds up that part of the process.

  ![Lane Search preview](https://res.cloudinary.com/dprm9dnll/image/upload/v1782504041/lane-search_bkbjcz.png)
</Update>

<Update label="June 12, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Start building your bid warehouse

  You can now map existing rate fields to our S-Rate columns, so you can bring historical bids into BidRight with the bid data and rates you already entered. Start importing old bids and build out your bid warehouse.

  <AnimatedDemo version="v1781282789" publicId="add-s-rates_ctbfyp" alt="Mapping rate fields to S-Rate columns on import" />

  ### Import market rates anytime

  You can now import and map market rate data at any point during the bid process. Bring in the market rates you have whenever you have them, whether you are kicking off a bid or updating lanes mid-process.

  ![Mapping market rate columns on import](https://res.cloudinary.com/dprm9dnll/image/upload/v1781282789/map-mkt-rate_gwnojq.png)

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Bid lanes

  * **Next round, one click away.** When a bid is in the Follow Up stage, we made it clearer that moving to the next round is an option. One click from the follow-up screen, no detours.

  ![Next Round button in the follow-up workflow](https://res.cloudinary.com/dprm9dnll/image/upload/v1781282789/next-round_sfx0hm.png)

  * **% off market rate.** Mkt percent-off is now visible inline. Get a quick glance of how different your S-RPM is from your market rate of choice.

  ![Market rate percent off visible inline in bid lanes](https://res.cloudinary.com/dprm9dnll/image/upload/v1781283630/mkt-rate-percent-off_tvr1rm.png)

  * **Historical volume sort.** Default sorting for historical volume now applies only to Bill-To source data, so the lanes you are actually running for this customer get bubbled to the top.
  * **Tooltip refinements.** We continued to refine the language of our tooltips to make sure it is clear what data we are presenting.

  ### Import

  * **Continued refinement of fetching miles.** We made a few updates to how we handle comma-separated ZIP lists and made sure we are getting accurate miles for those.

  ### Export

  * **File naming on export.** We improved the way we name files when exporting rates for the shipper. Round and date are now appended to the end of the filename as well.

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  ### Export

  Fixed an issue where exporting rates back into your original shipper file could break after uploading a new import.

  ## <span className="updates-section-heading">🔮 Coming soon</span>

  ### Auto Rate

  We are working on Auto Rate within a bid. It will use our pricing model and data from each lane, including interest level, historical data, and market data, to generate suggested rates. Interested in testing it early? Reach out to us to request access.
</Update>

<Update label="June 5, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Map DAT rates the same way as feedback

  Pull your DAT rate columns into bids using the same flexible mapping you already use for feedback. Run DAT on just a few lanes and import only those, instead of running it across the entire bid, and save credits.

  ![DAT rate column mapping screen in the import mapping step](https://res.cloudinary.com/dprm9dnll/image/upload/v1780685165/map-DAT_b2frzy.png)

  ### Imports

  * **Volume frequency works as a standalone column.** If your volume frequency lives in its own column instead of being combined with volume, we handle it now. We can even tell when different lanes use different frequencies (Per Week, Per Month, 6 Month, and more).

  ![Validate Data showing volume frequency mapped from a separate column](https://res.cloudinary.com/dprm9dnll/image/upload/v1780685305/volume-frequency_t6j9ev.png)

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Bid lanes

  * **Edit DAT and custom columns directly.** DAT and custom columns are now editable inline in the lanes grid, so you can make quick updates when you only need to change a few lanes.
  * **Hover any column header for a description.** Not sure what a column means? Hover over the header and the tooltip is right there. We have added more tooltips and refined the existing ones.

  ![Tooltip visible on hover over a column header in bid lanes](https://res.cloudinary.com/dprm9dnll/image/upload/v1780685733/tooltips_kx8cqp.png)

  ### Exports

  * **Excel formatting survives the round trip.** Fill colors and borders from your original Excel file are preserved when you export back out of BidRight.
  * **Dollar signs only where they belong.** We cleaned up dollar formatting in exports so currency symbols only appear where they belong. Cleaner files, no surprise formatting.

  ### Mapping

  * **Swing Door trailer types map correctly.** Swing Door was falling through as unmatched in trailer type mapping. It resolves to the right type now.
  * **Hazmat, loading type, and trailer type mapping cleaned up.** Several field values that were failing to match now resolve correctly on import. Fewer manual corrections needed after your file comes in.

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  ### Bid editing

  * **Tab through RPM without losing data.** Pressing Tab after entering an RPM value was clearing the S-RPM field. It doesn't anymore.
  * **Hard due dates save correctly.** Edits to a bid's hard due date were not always sticking. They save reliably now.
  * **Bid times save in the right timezone.** Time values on bids were being offset by 5 hours on save. That drift is gone.

  ## <span className="updates-section-heading">🔮 Coming soon</span>

  ### Export lanes to the DAT multi-lane template

  Export lanes marked with interest straight to the DAT multi-lane template, so you can get DAT rates on those lanes more easily.
</Update>

<Update label="May 29, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Carrier First regional fallback

  When area-to-area data is too thin, BidRight falls back to region-level data so low-density lanes still get a Carrier First rate.

  ![Carrier First uses region-level data when area-to-area carrier data is insufficient](https://res.cloudinary.com/dprm9dnll/image/upload/v1780084485/fallback_dk8oq1.png)

  ### Bid lanes

  * **Smarter Modeled OR calculations.** Modeled OR auto-calculates when you enter S-MIN and stays current as you adjust lane minimums.
  * **RPM calculates from S-RPM.** Enter S-RPM and RPM fills in automatically, so you can get back to the standardized RPM.
  * **All modeled calc columns in Back Calc.** Every modeled calculation column is now visible when you are back-calculating. Full picture, no switching views.
  * **Allow zero FSC.** You can now enter \$0.00 as your expected total FSC. Previously, the system rejected it. Now it accepts zero when that is the real number.

  <AnimatedDemo version="v1780081380" publicId="min-smin_epf6cc" alt="Enter S-MIN and Modeled OR auto-calculates on the lane" />

  ### Search and filters

  * **Excel-style filter search.** Column filters now search as you type, just like Excel's filter dropdowns.
  * **Bill-To search includes description.** Bill-To search now matches the description field too, so you can find the right one faster when names alone are not enough.

  <AnimatedDemo version="v1780081380" publicId="excel-filter_uogmwr" alt="Column filter dropdown with search-as-you-type like Excel" />

  ### Preserve Excel formatting

  Imported and exported bid files keep their Excel formatting throughout the process.

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Performance

  * **Location normalization for larger bids.** For larger bids with many unique locations, imports that previously failed now work.
  * **Large updates no longer freeze the UI.** Bulk updates of 4,000+ lanes now process smoothly. No more frozen screen while the grid catches up.
  * **Delete unused customers.** You can now remove customers that have zero bids.

  ### Visual polish

  * **Consistent skeleton loaders.** Loading states across all grids now look and animate the same way for a smoother experience while data loads.
  * **Miles warning sensitivity improved.** The Customer Miles vs. Practical Miles warning is now smarter about when it fires, with fewer false alarms and more meaningful alerts.

  ![Customer Miles vs. Practical Miles warning in the bid grid](https://res.cloudinary.com/dprm9dnll/image/upload/v1780081379/Mileage-warning_xz6rty.png)

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  ### Bid lanes

  * **Rounds Expected saves correctly.** The Rounds Expected field on Update Bid now saves the value you enter. Previously it silently reverted.
  * **RPM and Modeled OR now agree.** RPM-to-Modeled-OR and Modeled-OR-to-RPM now produce matching results. The rounding inconsistency is gone.
  * **Pre-set sort stays put.** Editing a cell in the grid no longer reverts your sort order. Your view stays the way you set it.
</Update>

<Update label="May 22, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Manual column mapping in bid import

  When auto-mapping misses, clear a wrong mapping or assign a column by selecting what data it contains. Fix import mapping without editing the spreadsheet.

  <AnimatedDemo version="v1778849070" publicId="manual-mapping_w5tvmy" alt="Manual column mapping: clear or assign what data each spreadsheet column contains" />

  ### Benchmark rate per mile

  Map a column to **Custom Rate** during bid import to show a manually entered market rate in the grid. Map to **DAT** when the shipper file includes DAT rates.

  ![Custom Rate and DAT market rate columns in the bid grid](https://res.cloudinary.com/dprm9dnll/image/upload/v1779465520/market_ugggn7.png)

  ### Recalculate S-Rates at bid level

  After you change the FSC peg or Breakthrough Fuel markup, recalculate S-Rates for every lane in one action instead of updating each lane.

  ![Re-run S-Rate calculations for all lanes after updating FSC peg or Breakthrough Fuel markup](https://res.cloudinary.com/dprm9dnll/image/upload/v1779465117/recalc-srates_ylb9sb.png)

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Modeled O/R upgrades

  * **Inbound and outbound revenue and cost columns** show margin by leg instead of one blended number.
  * **Average deadhead and MPH columns** added on every lane for faster lane review.
  * **Formula visibility:** Click a modeled cell to view the formula and calculation (read-only).
  * **Lane-level fuel costs** use the lane fuel rate when available instead of a flat average.

  ![Modeled O/R upgrades with new inbound and outbound revenue and cost columns](https://res.cloudinary.com/dprm9dnll/image/upload/v1779465309/modeled-or-fields_rmiak3.png)

  ### Bid import mapping

  * **Drop Trailer Preferred / Required** fields map to Origin/Dest Setup instead of the wrong import target.
  * **Macro-enabled files** (`xlsm`, `docm`) import the same as `xlsx`.

  ### FSC 6 support

  We added a fuel peg to price bids in this new world of \$6 fuel.

  ![Sixth fuel surcharge peg tier in bid setup](https://res.cloudinary.com/dprm9dnll/image/upload/v1779465397/6-peg_xzeirv.png)

  ### Historical data context

  Hover historical rates to see the data source and date range behind the value.

  ![Historical data popover showing data source and time range](https://res.cloudinary.com/dprm9dnll/image/upload/v1779465753/popover-hist_ixtlxe.png)

  ### Feedback prompt on next round

  Advancing to the next round prompts you to import customer feedback first so lane updates match the shipper file.

  ### Industry field cleanup

  We seeded the Industry list so you can pick from standard options instead of creating your own.

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  * **Max Weight import:** "Max Weight" sets max only, not min and max.
  * **FM order matching:** Case sensitivity works when pulling order data from FreightMath.
  * **Multi-file upload:** Add Bid uploads every selected `xlsx` file, not just the first.
  * **Hidden columns in export:** Exported files omit columns hidden in the grid.

  ## <span className="updates-section-heading">🔮 Coming soon</span>

  ### Connect your organization's DAT key

  Connect your organization's DAT key to load DAT rates in BidRight. No column mapping or bid file import required.
</Update>

<Update label="May 15, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Suggested RPM

  Enter your target Modeled O/R and BidRight calculates the exact rate you need to send to hit it. No more reverse-engineering the math yourself.

  <AnimatedDemo version="v1778848878" publicId="suggested-rpm-2_kxnssw" alt="Enter a target Modeled O/R and BidRight calculates the suggested RPM and linehaul" />

  ### Quick filter pill for lanes with interest

  One click to filter your bid down to only the lanes you've marked with interest.

  ![Interest filter pill showing lane count above the bid table](https://res.cloudinary.com/dprm9dnll/image/upload/v1778849318/int-pill_fr2hpa.png)

  ### Benchmark rate per mile

  Import any benchmark or market rate you have into BidRight. The Market Rate group band now holds multiple market rates side by side so you can compare them in one view.

  ![Market Rate group band with custom benchmark column alongside DAT](https://res.cloudinary.com/dprm9dnll/image/upload/v1778849444/market-rate-custom_uxikfw.png)

  ### Capacity capture and export

  You can now capture capacity during the bid process and include it in your export.

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Bid auto-mapping

  A round of improvements to how we read incoming bid files:

  * **Dry Hazmat detection** on import.
  * **Breakthrough Fuel mapping**, including fuel-per-mile when that's all the shipper provides, plus better handling of the different ways shippers label the BTF column.
  * **Smarter logic** for requirements, loading types, drop trailer preferred vs. required, and waypoints.

  ### Country flags on Windows

  Country flags now render correctly on Windows machines.

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  * **% Range Feedback** now maps to the correct column on import.
  * **Interest marking** no longer breaks when you enter values outside 0–3. It now handles whatever you throw at it.
  * **Min calc** was always using Practical Miles. Updated to use Customer Miles first when available, falling back to Practical only if we don't have Cust M.
</Update>

<Update label="May 8, 2026">
  <Note>
    **BidRight Alpha is live** as of May 5, 2026.
  </Note>

  ## <span className="updates-section-heading">🚀 New features</span>

  ### New Help Center articles on FreightMath

  We published walkthroughs that explain how BidRight connects to FreightMath, what the synced data means, and how to get the most out of it.

  ![Help Center articles on FreightMath](https://res.cloudinary.com/dprm9dnll/image/upload/v1778261478/Help-Center-FM_fgxjko.png)

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Smarter mileage from less-than-perfect data

  Mileage routing now behaves better when bid data is incomplete or coarse-grained.

  * **Mileage on ZIP-3 lists.** You can fetch miles for ZIP-3 lane lists without needing exact five-digit ZIPs.
  * **No more phantom cities.** ZIP-only waypoints no longer get a city name forced onto them.
  * **Smarter resolution tagging.** Waypoints without a ZIP are tagged with the correct resolution level.

  ### Faster FreightMath refresh on large bids

  Very large imports (for example, on the order of thousands of lanes) no longer leave FreightMath refresh feeling stuck for many minutes. Refreshes should feel noticeably snappier.

  ## <span className="updates-section-heading">🔮 Coming soon</span>

  ### Starting RPMs from a modeled FM O/R

  We are working on seeding every lane with a starting RPM based on your modeled FreightMath O/R so you can reach a strong starting point faster on every bid.
</Update>

<Update label="May 1, 2026">
  ## <span className="updates-section-heading">🚀 New features</span>

  ### Breakthrough Fuel is auto-mapped on import

  BidRight now recognizes Breakthrough Fuel columns when you import a bid file.
  When available, BidRight uses Breakthrough Fuel instead of your company peg to calculate fuel adjustments.

  ![Breakthrough Fuel mapped automatically on import](https://res.cloudinary.com/dprm9dnll/image/upload/v1777667435/BTF_lgqes0.png)

  ### Import the lane data type

  You can now import each lane's data type and see how granular the shipper wants your bid, from city/state to state-to-state.

  ![Lane data type column shown on import](https://res.cloudinary.com/dprm9dnll/image/upload/v1777667645/ldt_rwue8z.png)

  ### Preview Excel files in BidRight

  You can now open Excel files directly in BidRight without downloading them first.

  ![Preview Excel files directly inside BidRight](https://res.cloudinary.com/dprm9dnll/image/upload/v1777667435/preview-excel_ju7cbe.png)

  ## <span className="updates-section-heading">✨ Improvements</span>

  ### Historical data updates

  * **Lane data type fallbacks:** When there is not enough data at a lane's selected data type, the historical band falls back to area-to-area so you still get a benchmark.
  * **Updated text styling:** You can now tell data specificity at a glance.
  * **Editable historical data:** You can edit historical values inline when you know KSM has not synced a recent change yet.

  ![Updated historical data font styling](https://res.cloudinary.com/dprm9dnll/image/upload/v1777667435/hist-data-formatting_vwyl98.png)

  ### Manual bid status controls

  * **Override workflow status:** Mark bids as Awarded, Lost, or No Interest directly.
  * **No Interest status:** Keep imported bids in your warehouse without actively pursuing them.

  <AnimatedDemo version="v1777667794" publicId="edit_bid_status_anmmsd" alt="Manually edit bid status to Awarded, Lost, or No Interest" />

  ### Adjustments now recalculate S-Rates live

  When you manually update an Adjustment column or Customer Miles, S-Rates now recalculate in real time.

  ### More reliable location normalizing

  * **Better ZIP3 handling:** Miles pull more reliably from ZIP3s and ZIP3 lists.
  * **Ongoing consistency improvements:** Location matching continues to improve across imports.

  ## <span className="updates-section-heading">🛠️ Fixes</span>

  ### Cleaner bid deletion

  Bid deletion now completes more reliably across edge cases.
</Update>
