# NetSuite CSV Import Stuck in Processing or Queued

> Source: https://netray.co/erp-help/netsuite-csv-import-stuck-processing-queued-status
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: ERP Help

## Short answer

A CSV import that sits in Queued or Processing is normally waiting for a free processor, blocked by long running scripts on the target record, or retrying because of a lock. Check Setup > Import/Export > View CSV Import Status, then the Script Execution Log and Map/Reduce Status for what is running on the same records.

## Kind

error

## System

netsuite

## Erp

Oracle NetSuite

## Module

Setup / Import-Export / CSV Import Job Status

## Query

NetSuite CSV import stuck in Processing or Queued

## Alternate Queries

- NetSuite import job status pending forever
- NetSuite CSV import not finishing
- view CSV import status NetSuite stuck on Queued
- NetSuite CSV import taking hours to complete

## Applies To

NetSuite CSV Import Assistant for transaction, entity, item and custom records; accounts using SuiteCloud Plus or default processor allocation

## Steps

### How to diagnose a stuck CSV import

**Items:**

Open Setup > Import/Export > View CSV Import Status. Note the job state (Queued, Processing, Complete, Failed), start time and the number of rows processed.

If Queued, check how many other jobs are ahead. CSV imports share a queue with other asynchronous work, and large jobs ahead of you hold processors.

If Processing but rows are not increasing, open Customization > Scripting > Script Execution Log and filter for the record type. User Event scripts firing per row slow imports massively.

Check the Map/Reduce Script Status page and Scheduled Script Status for jobs touching the same records or running search heavy logic.

Click the job's link to see the import log. Look for rows that fail repeatedly or for a lock related message on the same record, such as a customer updated by two threads.

Check Setup > Company > Enable Features > SuiteCloud for concurrency features if you have a SuiteCloud Plus license. Without extra processors, queue priority is limited.

Cancel the job from View CSV Import Status if you must, then split the file into smaller chunks, around a few thousand rows for scripted record types, and resubmit.

Consider the Run Server SuiteScript and Triggered Workflows option on the import mapping. Turning it off for a bulk load that does not need scripts can reduce time dramatically.

## Sections

### Why an import queues instead of running

**Body:**

CSV imports are asynchronous jobs. When you click Run, NetSuite creates a job and places it in a processing queue shared with other long running work in the account. The number of processors available depends on the account license, so a standard account can run only a limited number of heavy jobs at once.

If three other imports, a scheduled script and a Map/Reduce deployment are active, your job waits. The status Queued is honest: nothing has started. It is not a failure and nothing is wrong with the file. Waiting time scales with the size of jobs ahead of you, not with your file size.

You can see competing work in Setup > Import/Export > View CSV Import Status for other imports, and on the Scheduled Script Status and Map/Reduce Script Status pages for script load. Administrators often find a nightly job that overlaps with a morning import.

### Why Processing becomes slow: scripts on the target record

**Body:**

The most common cause of an import that runs for hours is customization. Every imported row saves a record, and every save runs User Event scripts, workflows, and validation. A User Event script that performs a search or loads related records per row turns a 10,000 row file into 10,000 additional searches.

Check the Script Deployments for the imported record type under Customization > Scripting > Script Deployments. Look at which scripts run on Create or Edit and which log high governance usage. If a script is only needed for interactive users, add an execution context filter so it skips CSV Import context.

Workflows have a similar effect. A workflow with a Send Email action on record creation will generate a message for each row. Check the workflow's trigger type and execution context and remember that Triggered Workflows can be toggled in the import mapping.

**Code:**

- // Skip heavy logic during CSV import (SuiteScript 2.x user event)
const ctx = runtime.executionContext;
if (ctx === runtime.ContextType.CSV_IMPORT) { return; }

### Locks, retries and duplicated work

**Body:**

Imports that update existing records, such as inventory adjustments or customer updates, can collide with other processes editing the same record. When a record is locked, NetSuite retries the row, which shows as slow progress rather than an error. A large number of rows against the same parent record, for example many lines on one sales order split across rows, amplify this.

Sort your file so rows for the same transaction are adjacent and use the Multiple Lines per Record mapping correctly. Rows for the same transaction that are scattered can trigger repeated loads and saves of the same record.

If you resubmit a job while the first is still running, both may touch the same records. Cancel the old job first, wait for it to leave the Processing state, and then run the corrected file.

### When to stop using CSV Import

**Body:**

CSV import is convenient for thousands of rows but is not designed for continuous high volume loading. For recurring large loads consider a Map/Reduce script that reads a file and uses N/record with submitFields where possible, or an integration over SuiteTalk REST or SOAP with controlled concurrency.

A Map/Reduce approach lets you bypass user events with the right flags when it is safe, control the number of concurrent threads, and handle errors per row. It requires development, so reserve it for loads that run weekly or daily.

## Pitfalls

- Resubmitting the same file while the first job is still Queued or Processing.
- Importing a huge file in one run when scripted record types handle a few thousand rows more reliably.
- Leaving Run Server SuiteScript and Triggered Workflows on for a bulk migration that does not need them.
- Scheduling a big import at the same time as nightly Map/Reduce or scheduled scripts.
- Scattering rows of one multi line transaction across the file instead of keeping them adjacent.
- Assuming Queued means failure and canceling a job that was about to start.

## Ai Angle

An assistant grounded in NetSuite can read job status, script deployments and execution logs together and answer why a given import is slow: which user event fired per row, which overlapping job holds processors. ERPray is read-only by default, so it recommends splitting, scheduling or script context changes, and your admin makes the change.

## Faq

### How long should a CSV import take?

**Answer:** It depends on the record type, scripts and queue load. Simple entity imports with no scripts often run through thousands of rows in minutes, while scripted transactions can take hours. If row count is not moving at all for a long time, investigate locks and queue contention rather than waiting.

### Can I speed up an import without code?

**Answer:** Yes. Split the file, schedule it outside peak script windows, turn off Run Server SuiteScript and Triggered Workflows when appropriate, and make sure scripts check the execution context. SuiteCloud Plus adds processors if you run many concurrent jobs regularly.

### Is it safe to cancel a Processing job?

**Answer:** Rows already committed stay in the account. Canceling stops further rows, so you will have a partially loaded file. Check the job log for the last processed row and resubmit only the remainder, or you will create duplicates on create type imports.

### Why does Queued appear right after I click Run?

**Answer:** All imports are placed in the queue first, even when processors are free. A brief Queued state is normal. Concern starts when the state does not change for many minutes while other jobs are active in the account.

## Search terms

NetSuite CSV import stuck, NetSuite import queued, View CSV Import Status, NetSuite import job processing slow, CSV import user event slow, NetSuite SuiteCloud Plus processors, NetSuite bulk import performance, cancel CSV import NetSuite

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
