Global logistics operations often stall at the data acquisition phase. While freight forwarders and analysts rely on the Freightos Baltic Exchange (FBX) as the benchmark for container shipping costs, programmatically accessing these rates usually requires navigating complex enterprise dashboards or managing expensive API subscriptions. When a developer needs to inject current shipping lane pricing into a proprietary supply chain model or a dashboard, the friction of authentication and non-standardized HTML structures on public finance pages becomes a bottleneck.
The Container Shipping Rates Scraper solves this by providing a standardized interface to fetch public FBX index data. It maps trade routes, origin/destination ports, and container types into a predictable JSON schema. This allows data engineers to bypass the manual collection of rate shifts across 12 major global trade corridors, such as the Trans-Pacific Eastbound or Asia-North Europe lanes.
Normalizing Shipping Data for Logistics Pipelines
One of the primary challenges in logistics data engineering is the lack of a uniform naming convention for ports and routes. A search might involve "Shanghai" or the UNLOCODE "CNSHA". The actor handles these variations by allowing users to input specific port names or codes through the originPort and destinationPort fields.
When fetching data, the actor provides three distinct modes of operation through the mode property. The getFreightRates mode is the most granular, returning records that include the rateUsd, containerType (such as 20GP, 40GP, or 40HC), and the publishedDate. This metadata is essential for time-series analysis where the goal is to observe how pricing for a specific container size, like a 40-foot high cube (40HC), fluctuates against the baseline index.
By setting the containerType to all, a developer can retrieve a snapshot of the entire market for a specific route. This eliminates the need for multiple sequential requests to understand the price spread between different equipment types. The resulting data includes a scrapedAt ISO 8601 timestamp, which provides a reliable audit trail for when the data point was captured, independent of when the FBX published the index value.
Structure of a Freight Rate Record
The output from the actor is designed to be ingested directly into a database or a downstream analytics engine without heavy transformation. A typical record returned from the searchRoutes mode provides a flat structure:
{
"routeCode": "FBX01",
"route": "Shanghai → Los Angeles",
"originPort": "Shanghai",
"originPortCode": "CNSHA",
"destinationPort": "Los Angeles",
"destinationPortCode": "USLAX",
"tradeRoute": "Trans-Pacific Eastbound",
"region": "Asia-US",
"containerType": "40GP",
"rateUsd": 3850,
"currency": "USD",
"rateUnit": "per container",
"publishedDate": "2024-10-15",
"sourceUrl": "https://fbx.freightos.com",
"dataSource": "Freightos Baltic Exchange (FBX)",
"scrapedAt": "2024-10-16T08:30:00Z"
}
This specific output format allows for immediate filtering by routeCode (e.g., FBX11 for Asia-North Europe) or geographic region. For teams building market overview dashboards, the marketOverview mode provides a higher-level summary, including a compositeIndexUsd and a trend indicator. This is particularly useful for detecting broader market movements before drilling down into specific port-to-port rate changes.
Implementing the Scraper in a Data Workflow
Integrating this tool into a developer's stack involves defining the scope of the data required and setting up an automated schedule.
- Configure Input Parameters: Define the
modebased on the level of detail needed. If the goal is a broad scan of all 12 FBX routes,getFreightRateswithcontainerTypeset toallis the standard choice. - Define Port Constraints: Use the
originPortanddestinationPortfields to narrow the search. For example, enteringShanghaiandRotterdamwill isolate the FBX11 route data. - Set Volume Limits: Use the
maxItemsproperty to control the number of records returned. This is useful for testing or for scenarios where only the most recent publication date is required. - Execute and Export: Run the actor and access the results from the dataset. The output avoids null values through an omit-empty configuration, ensuring that every record in the dataset is complete.
This approach is highly effective for gathering historical index data and current public rates, but it is not a tool for obtaining private, negotiated spot quotes or booking actual freight. It is strictly a market intelligence tool.
Understanding the Cost Structure
Pricing for the actor follows a pay-per-event model. This ensures that costs are tied directly to the volume of data retrieved rather than just the time the process takes to execute.
- Actor Start: There is a charge of $0.005 per GB of memory allocated to the run. This event is charged once when the run begins.
- Results: Each result generated and saved to the default dataset costs $0.005 on the FREE tier. For users on the BRONZE tier, this price is $0.00433. SILVER tier users pay $0.00367, while GOLD, PLATINUM, and DIAMOND tier users pay $0.003 per result.
Platform usage for the run is billed separately at your Apify plan's rates. By monitoring the number of results and the memory allocation, developers can accurately forecast the cost of regular daily or weekly data harvests.
Practical Applications in Supply Chain Analysis
For a developer working on a procurement platform, this data serves as a reference point to validate quotes received from carriers. If a carrier quotes a rate significantly higher than the FBX index for the same route and container type, the system can flag the discrepancy for manual review. Similarly, analysts can use the marketOverview mode to identify which corridors are experiencing the highest volatility, allowing logistics teams to pivot their strategy toward more stable trade lanes.
The actor covers 12 standard routes, including essential corridors like Busan to Los Angeles (FBX31) and Shanghai to Dubai (FBX33). Because it pulls from the public FBX page, it provides the same baseline used by the world’s largest shipping companies. It removes the need for custom DOM selectors or headless browser management, which frequently break when sites update their front-end architecture.
One limitation to consider is that the data is only as fresh as the FBX public publication cycle; it does not provide real-time updates for minute-by-minute spot market fluctuations that occur outside of the published index values. For a developer building a high-frequency trading tool for freight futures, this would be a secondary data source rather than a primary live feed.
Everything above runs on Container Shipping Rates Scraper. Start with a small input and a low result limit before you widen the run -- the output shape is easier to check that way.
Prices quoted above are this Actor's published pay-per-event rates on the Apify Store, read from the Apify platform API on 2026-09-28. Check the Actor page for the current rates.
Top comments (0)