Skip to content
    ↑↓ to choose · Enter to open

    · 15 min read

    DBA.dk Scraper: Up to 1,000 Free Results a Month (2026)

    By CrawlerBros Engineering Team

    DBA.dk Scraper returns 28 fields for each item listing, including price, images, condition, location, and seller type, with no login required. Apify's free plan includes $5.00 of monthly usage, which covers up to 1,000 results before run-start charges. This tool is built for researchers tracking price trends in Denmark and developers building local classified aggregators, but it is not for those requiring verified seller phone numbers, which are not part of the structured output.

    Try it: open DBA.dk Scraper on Apify, sign in on the free plan and run the prefilled example.

    Can you try DBA.dk Scraper before paying?

    Yes. Apify's free plan includes $5.00 of prepaid usage every month and asks for no credit card. At $0.005 per result, that covers up to 1,000 results of DBA.dk Scraper a month, before run-start charges and platform usage.

    DBA.dk Scraper was last updated on 2026-08-12. It is one of 1,725 Actors CrawlerBros publishes on Apify, which together have 692,561 lifetime public runs and an average rating of 4.63 out of 5 across 416 reviews.

    What does it cost to run DBA.dk Scraper?

    Each result costs $0.005 on Apify's free plan, which is $5.00 per 1,000 results. Starting a run is charged separately at $0.005 per GB of Actor memory. Apify also bills the platform usage each run consumes, at the rates of your Apify plan, on top of these charges.

    Apify plan Per result Per 1,000 results
    FREE $0.005 $5.00
    BRONZE $0.00433 $4.33
    SILVER $0.00367 $3.67
    GOLD $0.003 $3.00
    PLATINUM $0.003 $3.00
    DIAMOND $0.003 $3.00

    The maxItems control has the largest effect on the bill because it sets the hard cap on emitted records written to the dataset. To test without waste, use a very small number like 5 for maxItems or provide a single URL in the itemIds array to confirm the output structure before running wide searches.

    How do you run DBA.dk Scraper from the API?

    The schema marks 1 of its 40 controls as required: mode. Every value in the payload below comes from the published schema's own prefills, which means you can paste it, swap the token, and get a real result.

    Call the synchronous endpoint to start a run and receive dataset items in one request:

    curl -X POST "https://api.apify.com/v2/acts/crawlerbros~dba-dk-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"mode":"search"}'
    

    The same run from Python, using the official client:

    from apify_client import ApifyClient
    
    client = ApifyClient("<YOUR_APIFY_TOKEN>")
    
    run_input = {
      "mode": "search"
    }
    
    run = client.actor("crawlerbros~dba-dk-scraper").call(run_input=run_input)
    
    for item in client.dataset(run["defaultDatasetId"]).iterate_items():
        print(item)
    

    And from Node.js:

    import { ApifyClient } from 'apify-client'
    
    const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' })
    
    const input = {
      "mode": "search"
    }
    
    const run = await client.actor('crawlerbros~dba-dk-scraper').call(input)
    const { items } = await client.dataset(run.defaultDatasetId).listItems()
    console.log(items)
    

    That endpoint blocks until the run completes. Fine while you are testing a handful of records, risky once a run takes minutes: a dropped connection loses the response even though the run itself finished. Switch to an asynchronous start with polling or a webhook before you schedule anything.

    Which DBA.dk Scraper inputs matter, and which can you skip?

    The mode control is the most important setting as it switches the scraper between the general marketplace and specialized mobility verticals like cars or boats. Most users will only need the searchQuery and category filters, though you can use the boundingBox to define a custom map area for neighborhood-level data.

    • mode (string): What to fetch. Default: "search".
    • searchQuery (string): Free-text keyword search. For mode=search, e.g. cykel, sofa, iphone. For mode=carSearch, matches car make/model/free text, e.g. Golf, Tesla. Default: "cykel".
    • category (string): Top-level marketplace category (mode=browseCategory, required; optional filter for mode=search). Default: "".
    • subCategory (string): Narrower DBA.dk sub-category code (e.g. 1.90.82 for car accessories & parts). Find codes by browsing a top-level category on dba.dk and copying the sub_category value from the URL. Optional filter for search/browseCategory; combine with category for best results. Default: "".
    • productCategory (string): Most specific DBA.dk product-category code (e.g. 2.90.82.4 for roof racks & boxes). Find codes by browsing dba.dk and copying the product_category value from the URL. Optional filter for search/browseCategory. Default: "".
    • sortBy (string): Result ordering. Applies to search, browseCategory and carSearch. Default: "RELEVANCE".
    • location (string): Limit results to a Danish region. Applies to search, browseCategory and carSearch. Default: "".
    • subLocation (string): Narrower DBA.dk city/town location code (e.g. 1.200010.213700 for Rønne). Find codes by browsing dba.dk with a region selected and copying the location value from the URL for a specific city. Optional filter for search/browseCategory; combine with location for best results. Default: "".
    • condition (string): Item condition filter. Default: "".
    • tradeType (string): Type of listing. Default: "".
    • dealerSegment (string): Filter by private seller or professional dealer. Default: "".
    • shippingType (string): Filter by delivery option. Default: "".

    The other 28 controls, with their defaults, are listed in the input schema on DBA.dk Scraper on Apify.

    Fixed-choice controls: mode accepts search (Search by keyword), browseCategory (Browse a category (no keyword)), itemDetail (Fetch listing details by ID/URL), sellerListings (Browse a dealer's shop (all listings)), carSearch (Search cars (dba.dk/mobility)); category accepts 12 values (default ""), including "" (All categories), 0.90 (Car, boat & motorcycle equipment), 0.77 (Animals & equipment), 0.93 (Electronics & appliances); sortBy accepts RELEVANCE (Most relevant), PUBLISHED_DESC (Newest first), PUBLISHED_ASC (Oldest first), PRICE_DESC (Price: high to low), PRICE_ASC (Price: low to high); location accepts 13 values (default ""), including "" (All regions), 0.200001 (Copenhagen & surroundings), 0.200002 (North Zealand), 0.200003 (West Zealand); condition accepts "" (Any condition), 1 (Brand new - sealed/with tag), 2 (Like new - no visible wear), 3 (Used - but in good condition), 4 (Used - with visible wear), 5 (Needs repair); tradeType accepts "" (Any type), 1 (For sale), 2 (Giving away), 3 (Wanted to buy); dealerSegment accepts "" (Any seller), 1 (Private), 3 (Dealer); shippingType accepts "" (Any shipping), 0 (DBA shipping & payment handling ("Fiks færdig")), 1 (Free shipping only).

    What does DBA.dk Scraper return?

    The returned records provide structured data like priceAmount, brand, and location, making them suitable for price-comparison engines and local market analysis. They do not contain user contact details like phone numbers or email addresses, as these are not part of the public structured schema.

    Output per listing

    • itemId - DBA.dk listing ID
    • title, description (mode=itemDetail only)
    • priceAmount, priceCurrency (DKK)
    • location - city/region or full street address (detail mode)
    • postalCode - Danish postal/zip code (mode=itemDetail only)
    • latitude, longitude - approximate GPS coordinates (all modes except sellerListings)
    • category - full category path (detail mode)
    • brand
    • itemSize - clothing or shoe size, when the listing specifies one (both search/browseCategory and itemDetail modes)
    • storageCapacity - device storage size (e.g. 128 GB), when the listing specifies one (electronics; search/browseCategory modes)
    • sportType - sport/activity type (e.g. Løb, Fitness), when the listing specifies one (sport & outdoor items; search/browseCategory modes)
    • condition - e.g. Brand new, Used, Refurbished, Needs repair (mode=itemDetail only; DBA.dk's search results don't expose a per-listing condition value even when the condition input filter is applied)
    • tradeType - e.g. Til salg (for sale)
    • sellerName, sellerType - Private or Dealer
    • shopSlug - the dealer's shop slug (mode=itemDetail only, dealer listings), e.g. bike4sport - feed it straight into mode=sellerListings to pull every other listing from that same shop
    • buyNowAvailable - true if the listing supports DBA.dk's instant "Buy now" checkout
    • shippingAvailable - true if the seller offers DBA.dk's "Fiks færdig" shipping & payment handling
    • freeShipping - true if the seller pays for shipping (matches the shippingType filter)
    • imageUrl, imageUrls[] - full photo gallery (all photos, both search/browseCategory and itemDetail modes; single cover photo for sellerListings)
    • publishedAt - ISO 8601 timestamp (search/browseCategory modes: exact; sellerListings mode: derived from the shop page's Danish "posted X ago" / date text, so it's accurate to the minute for just-posted listings, to the hour for listings posted earlier the same day, and to the day for older ones)
    • listingUrl
    • recordType: "listing", scrapedAt

    Output per vehicle (mode=carSearch)

    • itemId, title, listingUrl, location, latitude/longitude, publishedAt, priceAmount/priceCurrency
    • make, carModel, series, modelSpecification - manufacturer, model name, model series and trim (cars/motorcycles/caravans/motorhomes)
    • year - first-registration year (or build year for boats)
    • mileage, mileageUnit - odometer reading (cars/motorcycles/caravans/motorhomes)
    • fuel - e.g. Benzin (petrol), Diesel, El (electric), Hybrid benzin
    • transmission - Manuelt (manual) or Automatisk (automatic)
    • registrationClass - e.g. Personbil (passenger car)
    • registrationNumber, chassisNumber - Danish plate number and VIN, when disclosed on the listing
    • drivingRangeKm - electric-vehicle range, when applicable
    • engineVolumeCc - engine displacement in cc (motorcycles)
    • boatClass, motorType, motorFuel, motorPowerHp, maxSpeedKnots, lengthFt, widthCm - boat-specific specs (vehicleType=boat only)
    • hasServiceHistory - true when the seller has attached a documented service-history record (cars/motorcycles/caravans/motorhomes; omitted, not false, when none is attached)
    • warrantyMonths - remaining manufacturer/dealer warranty in months, when disclosed (cars/motorcycles/caravans/motorhomes)
    • sellerType - Private or Dealer
    • imageUrl, imageUrls[] - full photo gallery
    • scrapedAt

    These are the documented fields. Optional ones can be empty on a given record, so measure how often each field your deliverable depends on is populated across a real sample before automating the handoff.

    How do you build the workflow end to end?

    Open DBA.dk Scraper and work through these in order. Each step ends with something to check, so a bad configuration surfaces on a small run rather than a scheduled one.

    1. Set the mode to search and enter a keyword into searchQuery to verify that the priceAmount and priceCurrency fields are populating correctly in the initial results.
    2. Use the category selector to narrow the scope to one of the 11 top-level marketplace segments like Electronics or Furniture.
    3. Navigate dba.dk to find a sub_category code in the URL, then paste it into the subCategory input to filter for specific product types like roof racks.
    4. Switch the mode to carSearch and select a vehicleType such as motorcycle or boat to access vertical-specific data like engineVolumeCc or boatClass.
    5. Define a geographical boundary using the boundingBox field with minLon,minLat,maxLon,maxLat coordinates to restrict results to a neighborhood.
    6. Review the sellerType field in the output; if you find a dealer, copy their shop URL into the shopSlug control and change the mode to sellerListings.
    7. Run a targeted detail scrape by setting the mode to itemDetail and providing a list of IDs in the itemIds array to retrieve full description text.
    8. Enable the publishedToday toggle for a scheduled run to ensure only the newest items are added to your collection each day.

    How do you apply it? Three worked playbooks

    These are DBA.dk Scraper's own documented use cases, each worked through as an operating pattern rather than a description.

    Use case 1: Price monitoring & market research

    Outcome: Track asking prices for a product category (e.g. bicycles, furniture, electronics) across Denmark to spot pricing trends or undervalued listings

    Configure: Set mode to search, enter a value in searchQuery, and set sortBy to PRICE_ASC.

    Working method: Run a search for a broad category and cross-reference the priceAmount with the condition field found in detail records to spot outliers.

    Deliverable: A spreadsheet of current market valuations categorized by brand and location.

    Stop condition: The brand field in the records consistently fails to match the search query parameters.

    Use case 2: Car shopping & valuation

    Outcome: Filter DBA's vehicle marketplace by make, model year, mileage, fuel type and price to build a shortlist or benchmark a trade-in price

    Configure: Set mode to carSearch, vehicleType to car, and define yearMin and mileageMax.

    Working method: Filter the car marketplace by make and model year to calculate the average price based on the mileage field.

    Deliverable: A dataset of vehicles including registrationNumber and chassisNumber where provided by the seller.

    Stop condition: The year field in the output records falls outside the yearMin and yearMax bounds.

    Use case 3: Lead generation for local businesses

    Outcome: Find private sellers or dealers listing specific items (e.g. musical instruments, tools, appliances) in a given region

    Configure: Set mode to search, enter the item name in searchQuery, and set dealerSegment to 1.

    Working method: Isolate private sellers using the dealerSegment filter and extract the listingUrl and sellerType to identify non-professional leads.

    Deliverable: A list of regional sellers including their location and active listing links.

    Stop condition: The sellerType field consistently returns Dealer when Private was specified.

    What breaks, and how do you design around it?

    If you need to collect more than 1,000 results, consider scheduling multiple runs with different priceMin and priceMax filters to segment the data. If a vehicle listing ID is used in itemDetail mode and the general URL fails, the Actor automatically retries the vehicle-specific URL pattern.

    When should you not use DBA.dk Scraper?

    If you need to aggregate used car listings from across Europe or North America, AutoTempest Car Listings Scraper is a more efficient choice as it covers multiple large networks. For users specifically targeting the Austrian market, Willhaben Scraper provides specialized access to that regional leader. This Actor is not for those who need to bypass authenticated messaging systems to contact sellers, as it only collects publicly visible listing data. If you are specifically looking for antique or high-end vintage furniture rather than general used goods, 1stDibs Scraper provides a more curated dataset for that niche.

    What should you check before trusting the output?

    • Verify that the priceAmount field is present; if it is zero or null, check if the tradeType indicates a wanted to buy ad.
    • Confirm that carSearch records containing carListing in the recordType field include the year and mileage specifications.
    • Check that imageUrls is an array of multiple strings for search and detail modes, as only sellerListings is restricted to a cover photo.
    • Trigger an alert if the itemSize field is null across categories like clothing where it is documented to appear.
    • Validate that the location field matches the region selected in the location input to ensure filter persistence.
    • Monitor the recordType field to distinguish between standard listing items and specific mobility records.

    None of this proves a record is correct. It gives a scheduled DBA.dk Scraper run defined points where it should stop instead of quietly passing bad data downstream.

    Frequently asked questions

    What is the free-plan price for this scraper?

    The free-plan price is $0.005 per result. This means you can extract up to 1,000 results within the $5.00 of monthly usage included in Apify's free plan, provided your platform usage and run-start costs stay within that allowance. Paid plans offer lower rates per result.

    Are car listings more expensive than general items?

    No, the price is $0.005 per result regardless of the mode used.

    How can I scrape only the newest listings?

    You can use the publishedToday boolean control to restrict results to items listed on the current day. For more precise control, you can set the sortBy parameter to PUBLISHED_DESC to ensure the most recent entries appear at the top of your dataset.

    Do I need a DBA.dk account to run this?

    No account or API key is required. This Actor uses publicly accessible web pages to fetch listing data, so you do not need to provide login credentials or manage cookies to scrape items or cars.

    Can I get the full description of an item?

    Search and browse modes return summary records; to get the full description, exact address, and postalCode, you must use itemDetail mode. You can feed specific listing IDs or full URLs into the itemIds array to retrieve these detailed records.

    Where to go next

    When you are ready to run it, open DBA.dk Scraper on Apify; the free plan covers up to 1,000 results a month.

    Start with the DBA.dk Scraper Actor page for the current input schema, pricing tier, and run history.

    Other Actors we maintain for related data:

    • ParuVendu Used Cars Scraper: Scrape used-car listings from ParuVendu.fr, a major French car classifieds marketplace.
    • 1stDibs Scraper: Scrape 1stDibs - the leading online marketplace for antique, vintage, and contemporary furniture, jewelry & watches, art, and fashion.
    • PakWheels Used Cars Scraper: Scrape used-car listings from PakWheels.com, Pakistan's largest car marketplace.
    • Willhaben Scraper: Scrape Willhaben.at - Austria's largest classifieds marketplace.
    • MachineryPete Equipment Price Scraper: Scrape used ag and construction equipment listings from MachineryPete.com - tractors, combines, planters, tillage, hay & forage, construction equipment, trucks & trailers, and more.
    • Trailer Trader Scraper: Scrape Trailer Trader - a free U.S.
    • AutoTempest Car Listings Scraper: Scrape aggregated used-car listings from AutoTempest.com - a multi-site search engine spanning Cars.com, Carvana, eBay Motors, TrueCar, AutoByTel, and dealer networks.
    • ShopGoodwill Scraper: Scrape ShopGoodwill.com - Goodwill's official online auction marketplace for secondhand clothing, shoes, accessories, and jewelry.

    Related guides:

    Resources

    • Actor documentation, input schema, and pricing: verified against the published Actor on 2026-09-29.

    • Actor last updated by its maintainers on 2026-08-12.

    • Run outcome figures cover the 30 day public window ending 2026-09-29.

    • DBA.dk Scraper on Apify

    Featured actors

    DBA.dk Scraper

    Scrape DBA.dk - Denmark's largest online marketplace for used and new items. Search by keyword, browse by category, search cars, or fetch full listing details by item ID/URL. Get prices, images, condition, location, seller type and more - no login required.

    Run on Apify ↗