How to upload and update your rates
This guide walks you through uploading your rate data to Rate Management, and updating it once it's live.
Prerequisites
- You must have Rate Management upload access for your company (your system administrator can request this through Xeneta)
- Your rate data can be in any format — there's no need to reformat it before uploading
You don't need to use a Xeneta template. Rate Management accepts your own rate sheet in whatever format your team already works in, and transforms it into Xeneta's structure during import.
Getting started
Navigate to Manage rates > Upload rates in the top navigation bar. You'll see two options:
- Upload rates to Rate Management — upload your rate sheet directly to Rate Management. Your rates are available instantly across the platform.
- Upload rates to Xeneta's My account — send your rate sheet to Xeneta's Rate Management Team for manual processing. Rates uploaded via this method take longer to appear and are not available in Rate Management.
Click Learn about Rate Management in the top right of the Upload Rates page to see an overview of what Rate Management offers.
If you choose to upload to Rate Management, continue reading below.
Uploading your rate sheet
Whether you're using your own format or Xeneta's template, the upload process is the same. The system uses AI to automatically transform your data into the correct structure for Rate Management.
Step 1. Upload your rate sheet
Click Upload rates to Rate Management and select or drag and drop your file. Only .xls and .xlsx formats are accepted.
Your data is processed securely using AI-assisted transformation in the following steps.
Step 2. Resolve issues
After uploading, the system analyses your file using AI-assisted transformation and presents a summary of what it has done — for example:
- Rates unpivoted so each container type has its own row
- Contract dates split into separate start and end columns
- Column names mapped to their Xeneta equivalents
- Irrelevant columns ignored during the mapping process
Review the summary and provide input where needed before proceeding.
If your rate sheet contains multiple container types in a single row, the system will split these into separate rows during transformation. Lane volume is carried across to all generated rows unchanged. Allocated volume is divided evenly across the container types. If your volume allocation varies by container type, we recommend specifying this in your rate sheet before uploading.
Step 3. Map columns
The system presents a column mapping table showing how your columns have been matched to Xeneta's format. You may be asked to resolve a small number of issues before proceeding:
Unmapped columns — if a column in your file couldn't be matched to a Xeneta column automatically, you'll be asked to review it. You can choose to map it to a Xeneta column from a dropdown, or skip it if there's no relevant match. Every unmapped column is shown explicitly — nothing is silently dismissed.
Mandatory fields with no mapping — if a required Xeneta field has no column mapped to it, ingestion is blocked until you resolve it. You can either select a column mapping or provide the value directly.
Once all issues are resolved, the Proceed button becomes active.
Use the filter menu to narrow the mapping table by status (Auto mapped, Auto structured, Inferred value, Mapped, Required field, or Unmapped). You can override any mapping by selecting a different Xeneta column from the dropdown.
Your confirmed column mappings and conflict resolutions are remembered, so the same decisions don't need to be made again on future uploads.
Step 4. Review entries
The system restructures your file into Xeneta's format and presents it for validation. This is where you review your data, correct any errors, and confirm the upload.
Some values may be automatically normalised during this step — for example, common formatting variations in field values (such as "40 HC" or "forty foot high cube" being recognised as the same container type) are corrected silently where the system is confident.
The validation colour codes are:
| Colour | Meaning |
|---|---|
| Blue | A cell was auto-corrected. Hover over the cell to see an explanation. |
| Yellow | Needs attention but you can proceed. For example, missing IMO class when hazardous is set to Yes. |
| Red | Critical error that must be corrected before proceeding. |
If you have errors, you can fix them in one of two ways:
- Edit directly within the cell — best for a couple of one-off fixes. Click Find error to jump straight to the cells with issues, edit the values in the table, and press Enter to save. The validation status updates automatically.
- Use Find & replace — best for systematic errors repeated throughout the file, such as the same wrong port code appearing many times. Click Find & replace, enter the incorrect value in Find and the correct one in Replace with. The system tells you how many cells will change before you click Replace All.
Before submitting, check that no red cells remain, review any yellow warnings (optional to fix), and confirm the blue auto-corrections are acceptable.
Once all critical errors are resolved, click Complete import. The system checks whether any of your rates match rates that already exist — if so, you'll be shown a side-by-side comparison and can accept the updates or cancel. See How the system identifies which rate to update below for the full matching logic. If no matches are found, your rates are submitted as new rates.
You'll see a confirmation message: "Your rates are now live!"
Updating existing rates
There are two ways to change rates that are already in Rate Management.
Method 1: Rate Adjustment tool

The Rate Adjustment tool lets you quickly update rates and charges in bulk by either a fixed amount or a percentage, without needing to prepare and upload a new rate sheet.
Step 1. Select the rate(s) you wish to adjust in the All Rates table and click Adjust.
Step 2. Choose your options from the dropdowns:
| Field | Options |
|---|---|
| Charge | Core rate components (Ocean Rate, Pre-carriage, On-carriage, OTHC, DTHC) and your uploaded surcharges (e.g. BAF, PSS, Destination fuel) |
| Adjustment | Increase or Decrease for all charges. Add or Remove for surcharges only (core rate components cannot be added or removed). |
| Metric type | % change, Unit rate per container, or Unit rate per TEU |
| Value | Your numeric value |
Step 3. Click Apply changes. The updates are applied immediately to all selected rates.
Example: You've received a notification from your carrier about an 8% BAF increase. Select the relevant rates, choose BAF, Increase, % change, enter 8, and click Apply changes. Done in a few clicks, with no formulas or manual edits.
Method 2: Updating rates via upload
If you prefer to update your rates by uploading a new rate sheet, prepare your changes and upload the file in the same way as your original upload.
How the system identifies which rate to update
When you upload a rate sheet, the system checks whether each rate matches an existing rate based on the following fields (all must match, with an overlapping validity period):
- Contract number
- Supplier
- Container type
- Port of loading
- Port of discharge
- Origin service details (service mode, street address, city, state/province, ZIP code, country, and country code)
- Destination service details (service mode, street address, city, state/province, ZIP code, country, and country code)
- Hazardous classification
If all of these match, the system treats it as an update to the existing rate and will show you a side-by-side comparison of the current and new values for confirmation. You can either accept all updates or cancel. If any of these fields differ, the system treats it as a new distinct rate.
How surcharges are handled during an update
Once a matching rate is identified, each surcharge is evaluated independently. The system compares what you've uploaded against what currently exists and determines whether to add, update, or remove each charge.
Leave a surcharge blank to keep it unchanged. If your upload doesn't include a value for a surcharge, the existing value is preserved. You don't need to include every surcharge in your upload, only the ones you want to change.
Set a surcharge to zero to remove it. The system treats zero as a removal, not as an update to a zero value.
New surcharges are added automatically. If your upload includes a surcharge that doesn't currently exist on the rate and the value is not zero, it will be added.
Some surcharges have fixed validity periods. Certain charges (e.g. LSS, CAF, GRI, ISPS, and others) always inherit the full contract validity period. You cannot set custom start and end dates for these. Other charges (e.g. BAF, PSS, WRS, EU ETS, Suez Canal, Panama Canal, Origin/Destination Fuel, Origin/Destination Port Charges) support custom validity dates. If you don't provide dates for these, the system defaults the start date to today (or the contract start date if later) and the end date to the contract end date.
Currency and unit of measurement are preserved. When updating a surcharge, the system always keeps the original currency and unit of measurement, even if different values are provided in your upload.
You can create multiple validity periods within a single rate to manage charges that update on different schedules. For example, your rate might have a 12-month contract validity while a surcharge such as BAF updates every 3 months. Add a separate validity period for each surcharge within the rate sheet, next to where you define the amount you pay for that charge. If a charge follows the same validity as the main contract, you can leave the validity fields empty.
Data visibility after upload
Once the upload is confirmed, your rates are instantly accessible to all company users with Rate Management access.
Your rates will also be available across Xeneta's benchmarking products (Ocean Monitor, Ocean Analyze, and others) under 'Your rates'. This removes the previous 5-day SLA, giving you near real-time benchmarking capability.
Updated 20 days ago