<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: M. Alan</title>
    <description>The latest articles on DEV Community by M. Alan (@tenderfeed).</description>
    <link>https://dev.to/tenderfeed</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4230389%2F81d31074-e5ac-4039-8504-ed91c48bfb1c.png</url>
      <title>DEV Community: M. Alan</title>
      <link>https://dev.to/tenderfeed</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tenderfeed"/>
    <language>en</language>
    <item>
      <title>Procurement data feed or SaaS dashboard? Start with the workflow</title>
      <dc:creator>M. Alan</dc:creator>
      <pubDate>Fri, 06 Nov 2026 12:48:49 +0000</pubDate>
      <link>https://dev.to/tenderfeed/procurement-data-feed-or-saas-dashboard-start-with-the-workflow-15ap</link>
      <guid>https://dev.to/tenderfeed/procurement-data-feed-or-saas-dashboard-start-with-the-workflow-15ap</guid>
      <description>&lt;p&gt;By M. Alan / TenderFeed&lt;/p&gt;

&lt;p&gt;A bid manager choosing an opportunity tool is often choosing between two jobs: feeding an existing process, or adopting a new workspace around it. Those jobs should not be compared on subscription price alone.&lt;/p&gt;

&lt;h3&gt;
  
  
  When a daily spreadsheet feed fits
&lt;/h3&gt;

&lt;p&gt;A spreadsheet-first team may already have a qualification checklist, account owners and a CRM. Its missing piece is a recurring shortlist filtered by classification, geography, notice type and deadline.&lt;/p&gt;

&lt;p&gt;TenderFeed provides that raw-data layer. The SAM.gov Actor costs $2.50 per 1,000 results; TED costs $2 per 1,000. A saved task keeps the filters. A schedule repeats the search. Only-new monitoring remembers notices delivered to a watch-list. Export the dataset or separately configure an integration to send it to your working sheet.&lt;/p&gt;

&lt;p&gt;The tradeoff is responsibility: your team owns qualification, follow-up, spreadsheet design and integration maintenance. New-notice discovery does not replace checking amendments and submission instructions on an active pursuit.&lt;/p&gt;

&lt;h3&gt;
  
  
  When to evaluate a dashboard instead
&lt;/h3&gt;

&lt;p&gt;If the decision is about adopting a packaged workspace, evaluate a SaaS procurement dashboard on its own merits. One public pricing example is &lt;a href="https://www.highergov.com/pricing/" rel="noopener noreferrer"&gt;HigherGov&lt;/a&gt;: $500 annually for one user or $2,500 annually for up to ten.&lt;/p&gt;

&lt;p&gt;That is context for a different buying model, not a feature-parity claim or a claim that TenderFeed replaces HigherGov. Evaluate each current offering directly.&lt;/p&gt;

&lt;h3&gt;
  
  
  Compare the complete cost
&lt;/h3&gt;

&lt;p&gt;Per-result prices and annual subscriptions have different denominators. Estimate returned notices, run frequency, current run charges, integration costs and maintenance time. Do not turn $2 per 1,000 results into a supposed all-in monthly dashboard replacement.&lt;/p&gt;

&lt;p&gt;Start with one saved search and one small export. Do the rows support a real bid/no-bid decision? If your existing process works once the data arrives, a raw feed may be enough. If it does not, more rows will not fix it.&lt;/p&gt;

&lt;p&gt;Disclosure: I built TenderFeed for bid managers, public procurement teams and grant writers who want structured public data in their own tools. It is a raw-data wedge, not a HigherGov clone.&lt;/p&gt;

&lt;p&gt;Explore: &lt;a href="https://apify.com/tenderfeed" rel="noopener noreferrer"&gt;https://apify.com/tenderfeed&lt;/a&gt;&lt;/p&gt;

</description>
      <category>procurement</category>
      <category>govcon</category>
      <category>excel</category>
      <category>productivity</category>
    </item>
    <item>
      <title>How to export TED tenders to Excel</title>
      <dc:creator>M. Alan</dc:creator>
      <pubDate>Fri, 06 Nov 2026 12:42:47 +0000</pubDate>
      <link>https://dev.to/tenderfeed/how-to-export-ted-tenders-to-excel-2aio</link>
      <guid>https://dev.to/tenderfeed/how-to-export-ted-tenders-to-excel-2aio</guid>
      <description>&lt;p&gt;In the week of 23–29 Oct 2026, a CPV 72 filter returned 617 new EU competitions. That is one historical query, not a forecast of your results. Source: TED Search API v3, queried 30 Oct 2026.&lt;/p&gt;

&lt;p&gt;Disclosure: I built TenderFeed. The TED Actor costs $2 per 1,000 results. Check current pricing and run limits first. An Apify account is required; a TED API key is not.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Build the shortlist
&lt;/h2&gt;

&lt;p&gt;Open the TenderFeed TED Actor on Apify and configure its input:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPV codes for the work you bid; &lt;code&gt;72000000&lt;/code&gt; covers IT services and narrower codes.&lt;/li&gt;
&lt;li&gt;Buyer countries you cover, such as &lt;code&gt;DE&lt;/code&gt;, &lt;code&gt;FR&lt;/code&gt; or &lt;code&gt;NL&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Relevant keywords, choosing any-term or all-term matching.&lt;/li&gt;
&lt;li&gt;Competition notices for tender discovery, rather than award results.&lt;/li&gt;
&lt;li&gt;A rolling publication window and, if appropriate, the open-deadline filter.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Start with a small result limit. Value filters use each notice's currency; decide whether to retain notices with unknown values. Missing values do not necessarily mean small contracts. Leave personal buyer-contact inclusion off unless needed and supported by a lawful basis.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Save and test
&lt;/h2&gt;

&lt;p&gt;Choose &lt;strong&gt;Save as a new task&lt;/strong&gt;, check its &lt;strong&gt;Input&lt;/strong&gt;, then start a small run. Inspect title, buyer, country, CPV, estimated value and currency, deadline and source URL. Check official documents where a field is missing or unclear.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Export
&lt;/h2&gt;

&lt;p&gt;Open the run's dataset, select &lt;strong&gt;Export&lt;/strong&gt;, choose Excel, then &lt;strong&gt;Download&lt;/strong&gt;. CSV is another option. Keep notice ID and source URL in the workbook. Add owner, fit and bid/no-bid columns: an export is data, not a complete procurement dashboard.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Repeat every morning
&lt;/h2&gt;

&lt;p&gt;Enable &lt;code&gt;onlyNew&lt;/code&gt;, with a stable &lt;code&gt;monitoringId&lt;/code&gt; such as &lt;code&gt;eu-it-daily&lt;/code&gt;. Use a different ID per saved search. The first monitoring run establishes delivered-notice history; later runs return previously undelivered notices.&lt;/p&gt;

&lt;p&gt;Add this task to an Apify schedule, select your morning time and team's timezone, check the next-run time and enable it. Use a rolling publication window with overlap, such as seven days, to cover weekends. Scheduling creates datasets; downloading Excel remains manual unless you configure a separate integration.&lt;/p&gt;

&lt;p&gt;New-notice monitoring is not the same as monitoring every amendment. Continue checking official notices for active bids. An empty daily dataset can simply mean no new matches.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;p&gt;Input and platform workflow checked 6 Nov 2026:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://apify.com/tenderfeed/ted-eu-tenders/input-schema" rel="noopener noreferrer"&gt;TED input&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/actors/running/tasks" rel="noopener noreferrer"&gt;Tasks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/actors/running/schedules" rel="noopener noreferrer"&gt;Schedules&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/storage/dataset" rel="noopener noreferrer"&gt;Excel export&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Start here: &lt;a href="https://apify.com/tenderfeed/ted-eu-tenders" rel="noopener noreferrer"&gt;https://apify.com/tenderfeed/ted-eu-tenders&lt;/a&gt;&lt;/p&gt;

</description>
      <category>procurement</category>
      <category>excel</category>
      <category>ted</category>
      <category>govcon</category>
    </item>
    <item>
      <title>How to export SAM.gov opportunities to Google Sheets (no API key)</title>
      <dc:creator>M. Alan</dc:creator>
      <pubDate>Fri, 06 Nov 2026 12:42:24 +0000</pubDate>
      <link>https://dev.to/tenderfeed/how-to-export-samgov-opportunities-to-google-sheets-no-api-key-3i0n</link>
      <guid>https://dev.to/tenderfeed/how-to-export-samgov-opportunities-to-google-sheets-no-api-key-3i0n</guid>
      <description>&lt;p&gt;A morning shortlist should start with your capture criteria, not every notice on SAM.gov.&lt;/p&gt;

&lt;p&gt;Disclosure: I built TenderFeed. The SAM Actor costs $2.50 per 1,000 results; check current pricing and run limits before starting. Integration services may add charges. You need an Apify account, but no SAM.gov API key: the keyless route uses SAM.gov's daily public extract, not a real-time amendment feed.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Open the Actor and configure input
&lt;/h2&gt;

&lt;p&gt;Open the TenderFeed SAM.gov Actor on Apify. Choose NAICS codes you actually pursue, relevant keywords, notice types, set-aside codes and place-of-performance states. For early capture, choose Sources Sought; keep a separate search for solicitations. Apply set-aside filters only if you intend to exclude other or unspecified set-asides.&lt;/p&gt;

&lt;p&gt;Use a rolling publication window, such as seven days, rather than a fixed date. Set a small maximum result count and review spending limits. Do not treat award-value filters as solicitation-budget filters: the input schema says values apply to award notices.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Save and test the task
&lt;/h2&gt;

&lt;p&gt;Choose &lt;strong&gt;Save as a new task&lt;/strong&gt; and give it a descriptive name. Its &lt;strong&gt;Input&lt;/strong&gt; tab holds your reusable configuration. Start a small test and inspect title, agency, NAICS, set-aside, deadline and source URL. Open the official notice before making a bid decision.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Prepare the morning schedule
&lt;/h2&gt;

&lt;p&gt;Enable &lt;strong&gt;Only new notices (monitoring mode)&lt;/strong&gt; (&lt;code&gt;onlyNew&lt;/code&gt;) and set a stable &lt;code&gt;monitoringId&lt;/code&gt;, such as &lt;code&gt;it-sources-sought-daily&lt;/code&gt;. Keep that ID unchanged across runs; use a different ID for each saved search. The first monitoring run establishes delivered-notice history; subsequent runs return previously undelivered notices.&lt;/p&gt;

&lt;p&gt;In Apify Console's &lt;strong&gt;Schedules&lt;/strong&gt;, create a schedule, attach the saved task, choose your morning time and timezone, check the displayed next-run time and enable it. Example: 8 a.m. America/Sao_Paulo (Brasília); choose the timezone your team uses. A seven-day rolling window provides weekend overlap, not a completeness guarantee after a long outage.&lt;/p&gt;

&lt;p&gt;Only-new discovery is not a guarantee that amendments to an existing notice will be re-exported. Follow active pursuits on SAM.gov separately.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Send the results to Sheets
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Manual first run:&lt;/strong&gt; open the completed run's dataset, select &lt;strong&gt;Export&lt;/strong&gt;, download CSV, then import it into Google Sheets. Scheduling the Actor alone does not update Sheets.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Automated delivery:&lt;/strong&gt; use Apify's documented Make integration. Connect your accounts, watch completed runs of this saved task, proceed only on success, retrieve dataset items using that run's dataset ID, and map the rows into a Google Sheets add-rows step. Suggested columns: notice ID, title, agency, NAICS, set-aside, deadline and source URL.&lt;/p&gt;

&lt;p&gt;Test the complete route with a small run. Deduplicate integration retries on source and notice ID before appending: delivery retries can duplicate rows even with Actor monitoring enabled. Keep manual owner and bid/no-bid columns separate from imported data.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;p&gt;Input and workflow checked 6 Nov 2026.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://apify.com/tenderfeed/sam-gov-opportunities/input-schema" rel="noopener noreferrer"&gt;Actor input&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/actors/running/tasks" rel="noopener noreferrer"&gt;Tasks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/actors/running/schedules" rel="noopener noreferrer"&gt;Schedules&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/storage/dataset" rel="noopener noreferrer"&gt;Dataset export&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.apify.com/integrations/make" rel="noopener noreferrer"&gt;Make and Google Sheets&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Start here: &lt;a href="https://apify.com/tenderfeed/sam-gov-opportunities" rel="noopener noreferrer"&gt;https://apify.com/tenderfeed/sam-gov-opportunities&lt;/a&gt;&lt;/p&gt;

</description>
      <category>samgov</category>
      <category>excel</category>
      <category>govcon</category>
      <category>procurement</category>
    </item>
    <item>
      <title>How to export SAM.gov contract opportunities to Excel (no API key)</title>
      <dc:creator>M. Alan</dc:creator>
      <pubDate>Fri, 06 Nov 2026 12:08:24 +0000</pubDate>
      <link>https://dev.to/tenderfeed/how-to-export-samgov-contract-opportunities-to-excel-no-api-key-2j3k</link>
      <guid>https://dev.to/tenderfeed/how-to-export-samgov-contract-opportunities-to-excel-no-api-key-2j3k</guid>
      <description>&lt;p&gt;SAM.gov publishes thousands of new contract opportunities every week. The work for a bid or capture manager is not "finding the website." It is getting &lt;em&gt;your&lt;/em&gt; notices — the right NAICS codes, set-asides, states and notice types — into a spreadsheet or CRM before the bid/no-bid meeting.&lt;/p&gt;

&lt;p&gt;This walkthrough covers three ways to do that, and the tradeoffs of each.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a spreadsheet beats another browser search
&lt;/h2&gt;

&lt;p&gt;In the week of 23–29 October 2026, SAM.gov posted 6,121 new notices. 2,618 of them (43%) were set aside, including 1,488 small-business set-asides. That same week carried 552 Sources Sought notices — early conversations with a contracting officer, before an RFP exists.&lt;/p&gt;

&lt;p&gt;Saved searches on SAM.gov help. They still leave you clicking through pages, copying fields, and wondering whether you already logged yesterday's row.&lt;/p&gt;

&lt;p&gt;A useful export has, at minimum:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;notice title, type and posted date&lt;/li&gt;
&lt;li&gt;NAICS and set-aside&lt;/li&gt;
&lt;li&gt;department, office and place of performance&lt;/li&gt;
&lt;li&gt;response deadline&lt;/li&gt;
&lt;li&gt;the notice URL&lt;/li&gt;
&lt;li&gt;the contracting officer's name, email and phone when SAM publishes them&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Option 1: download from SAM.gov itself
&lt;/h2&gt;

&lt;p&gt;SAM.gov lets you search and download results. This is the official path, it is free, and it is the right starting point if you only need a one-off list.&lt;/p&gt;

&lt;p&gt;The limits show up when you want the same filter every morning, only the notices you have not already seen, and a file that lands in Excel, Google Sheets or a CRM without extra cleanup.&lt;/p&gt;

&lt;h2&gt;
  
  
  Option 2: the official SAM.gov API
&lt;/h2&gt;

&lt;p&gt;The official API is built for integrators. It requires an API key and some engineering time. If you already have developers maintaining an internal pipeline, this is often the cleanest long-term option.&lt;/p&gt;

&lt;p&gt;Many capture teams do not have that pipeline. They need a daily file, not a new integration project.&lt;/p&gt;

&lt;h2&gt;
  
  
  Option 3: a ready-to-run SAM.gov Actor (no API key)
&lt;/h2&gt;

&lt;p&gt;This is the workflow I built for TenderFeed, as a pay-per-result Actor on the Apify Store.&lt;/p&gt;

&lt;p&gt;You set the same filters a capture team already uses — keywords, NAICS, set-aside, state, notice type (including Sources Sought and Presolicitation) — and run it. The Actor returns one row per notice and exports to Excel, Google Sheets, or another format Apify supports. You can schedule it each morning and keep only notices it has not sent you before.&lt;/p&gt;

&lt;p&gt;It does not need a SAM.gov API key. Pricing is $2.50 per 1,000 results, plus a small start fee.&lt;/p&gt;

&lt;p&gt;The Actor page, with input fields and example tasks: &lt;a href="https://apify.com/tenderfeed/sam-gov-opportunities" rel="noopener noreferrer"&gt;https://apify.com/tenderfeed/sam-gov-opportunities&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  A practical morning workflow
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Start from the notice types that change a capture calendar first: Sources Sought and Presolicitation.&lt;/li&gt;
&lt;li&gt;Add the NAICS codes you actually bid, not a broad list that buries the signal.&lt;/li&gt;
&lt;li&gt;Filter set-asides if that is how you compete (small business, 8(a), HUBZone, SDVOSB, WOSB, and so on).&lt;/li&gt;
&lt;li&gt;Export to Excel and sort by posted date and response deadline.&lt;/li&gt;
&lt;li&gt;Schedule the same input daily with an "only new" flag so the spreadsheet stays an inbox, not a dump of the whole archive.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you already work EU tenders as well as US federal work, the same pattern applies on TED: filter by CPV, country and keywords, then export. A CPV 72 (IT services) filter returned 617 new EU competitions in that same week of 23–29 October 2026. The TED Actor is here: &lt;a href="https://apify.com/tenderfeed/ted-eu-tenders" rel="noopener noreferrer"&gt;https://apify.com/tenderfeed/ted-eu-tenders&lt;/a&gt; ($2 per 1,000 results).&lt;/p&gt;

&lt;h2&gt;
  
  
  What this is not
&lt;/h2&gt;

&lt;p&gt;This is not a replacement for reading the notice, talking to the contracting officer, or making a bid/no-bid call. It is a way to stop losing Sources Sought inside 6,000 other rows.&lt;/p&gt;

&lt;p&gt;TenderFeed also publishes Actors for Grants.gov, USAspending, UK Contracts Finder, CanadaBuys and other public sources: &lt;a href="https://apify.com/tenderfeed" rel="noopener noreferrer"&gt;https://apify.com/tenderfeed&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;SAM.gov figures above come from the public contract opportunities extract for notices posted 23–29 October 2026, compiled 30 October 2026. TED figure: TED Search API v3, competition notices, CPV 72*, publication dates 23–29 October 2026, queried 30 October 2026.&lt;/p&gt;

</description>
      <category>samgov</category>
      <category>excel</category>
      <category>govcon</category>
      <category>procurement</category>
    </item>
  </channel>
</rss>
