Public-Tender Monitoring: Alerts by Field Without Promising That No Tender Will Be Missed
Back to blog
automation·September 6, 2026·7 min read·By Yehonatan Saadia

Public-Tender Monitoring: Alerts by Field Without Promising That No Tender Will Be Missed

Tender monitoring that measures coverage and latency instead of promising nothing is missed, what data.gov.il really holds, and why a person reviews it.

Key takeaways

  • "No tender will be missed" is unverifiable, because there is no agreed population of published tenders to compare a monitor against.
  • What you can state is an explicit source list: each source, how it updates, and the latency it realistically produces.
  • The open catalogue at data.gov.il holds a retrospective procurement report from the Government Procurement Administration - 14,205 records, resource last modified February 2021. It is research material, not a live feed.
  • An over-narrow filter is the practical way a tender gets missed. Favour recall over precision and let a person discard the surplus.
  • A monitor nobody measures dies quietly. A per-source item counter on every run, plus an alarm on zero, is part of the system.

Tender monitoring collects notices from sources you name, filters them by field and alerts you. It cannot promise that no tender is missed, because nobody holds a closed list of every publishing body in Israel. So it is designed around three measurable things instead: coverage, latency, and a human review step.

Why "no tender will be missed" is not a promise anyone can keep

To prove nothing was missed you would compare what you collected against a complete list of what was published. No single body holds that list. Government ministries and their auxiliary units publish, and so do government companies, local authorities, water corporations, hospitals, higher-education institutions and more, each on its own channel and its own rhythm.

What you can state is measurable: "the system checks these eleven sources hourly, and the median gap between the publication date the source states and your alert is forty minutes." That is a claim someone can audit afterwards, so it is worth something. The sweeping promise cannot be audited, so all it does is move the blame to you the first time one tender falls between two portals.

The distinction is not semantic. It changes the build: a system that claims completeness does not build a human review queue, and a system that knows it is partial does.

What is your source list, precisely?

Before a line of code, write a table where each row is one publishing body. Without that document the project has no boundary, and nobody can say what it does not cover. Per source, record:

  • The publishing body and the exact page or feed you actually read.
  • How it updates: an RSS feed, a documented interface, a downloadable file, or a page that changes with no notification mechanism.
  • The check frequency you chose, and why you chose it.
  • Which procedure types appear there - open tender, prior information request, exempt engagement.
  • What is known not to appear there. This is the column people skip, and it is the column that explains every future miss.

The working rule: if a body has an official feed or a documented interface, that is the route. An HTML page is what is left when there is not one. That ordering is worked through in scraping versus an API, and it removes most of a project's maintenance cost before the project is written.

Is data.gov.il a live tender feed?

No. A package_search query against the open catalogue returns only six datasets for the Hebrew term for tenders, and the central one - the tenders dataset, "Tenders Report" from the Government Procurement Administration - is described in the catalogue itself as a consolidated report published once a year covering engagements by government ministries and auxiliary units.

A datastore_search call against its resource returns 14,205 records, and the resource's last modified date is 16 February 2021. The fields returned are, translated from Hebrew: publication number, ministry name, publishing unit, procedure type, procedure number, procedure name, status, publication date, update date, last date for filing objections, last time for filing objections, basket name, winning supplier name, supplier company number, engagement start date, engagement end date, and subjects.

Two practical conclusions follow. First, that dataset is excellent for analysing who won what and from which unit, so it is research to do before bidding - but it will not tell you a tender opened today. Second, its dates are strings shaped 09.06.2009, not ISO, so any date comparison needs explicit normalisation before you filter on it. The status field carries values such as "closed", which is what lets you exclude finished procedures.

The government portal where live procedures are published is a separate channel from the open catalogue, and the Government Procurement Administration storefront is a separate system again. Real monitoring leans on those, and uses the open catalogue for background only.

Sources, update mode and latency

Source typeHow it updatesTypical latency to alertWhat it does not cover
RSS or Atom feed from a publishing bodyPush, with a timestamp per itemMinutes to an hour, set by your poll intervalBodies that publish no such feed
Documented interface or downloadable filePeriodic, on the body's own cycleThe body's publication cycleProcedures published only on a page
List page that changes with no noticeYou fetch and diffWhatever check frequency you choseA changed attachment behind an unchanged page
Open data cataloguePeriodic or annual publicationDays to a yearAnything not yet reported
Mailing list from the publishing bodyEmail, unstructuredWhenever they send itNotices not included in that distribution

That table doubles as the expectations document for the internal stakeholder. A manager who has seen one row operating on a scale of days is not surprised when a tender arrives late through it.

Filtering by field: why too broad beats too narrow

An over-precise filter is the most common cause of a miss, ahead of any technical failure. Procedure names are written by a person in a publishing unit, working from no shared vocabulary:

  • A synonym you did not think of - "information systems development" against "software services" against "system specification and build".
  • Acronyms, spelling variants, and a space or a hyphen between words.
  • A foreign term transliterated into Hebrew, alongside the same term in Latin letters.
  • The real subject appearing only inside the tender documents, not in the title line.
  • A subject classification chosen by the publisher that does not match how you describe yourself.

So filter in two layers: a wide layer that admits noise, then a ranking pass that orders what came through. Every rejected item is stored with the rule that rejected it, because that is the only way to discover the filter cut something it should have passed. The same discipline applied to changes in official text is covered in regulation monitoring and change control.

The human review step, and what it receives

Assuming a person will look is part of the design, not an admission of defeat. One daily digest at a fixed hour outperforms an alert per item, because it actually gets read. A digest entry needs the minimum that supports a five-second decision: publishing body, procedure name, procedure type, submission deadline, a link to the source, and the reason the system thought it was relevant.

The step everyone forgets is the decision log: who marked an item relevant, who marked it not, and when. Two months in, that becomes the calibration material for the filters, and it is the difference between a system that improves and a mailing list.

What you measure to know the monitor is alive

  • Items read per source per run, retained as a series over time.
  • An alarm when a source returns zero items while its own average is above zero - that is nearly always a change at the source, not a quiet market.
  • The gap between the publication date the source states and the moment you alerted, as a median and a ninetieth percentile.
  • The share of items marked relevant out of everything that passed the filter, broken down by source.
  • The count of runs that failed outright, and the last successful run per source.
  • A periodic manual spot check: open the source in a browser and compare it against the five most recent items you ingested.

Why a source change breaks a reader at all is covered in why scrapers break and what maintenance covers. In tender monitoring the cost of a silent break is unusually high, because no alerts looks exactly like a week with no suitable tenders.

What automated tender monitoring does

  • Watches the sources you care about on a schedule.
  • Filters by keyword, category, region, and budget so you only see what fits.
  • Alerts you by email or message the moment a match is published.
  • Logs everything to a spreadsheet or dashboard with the deadline and link, so nothing is missed.

What it costs

Tender monitoring is a recurring service - a monthly retainer to keep it running and adjust the filters as your business changes. See how much web scraping costs for the tiers. Tell me the sources and the keywords that matter to you and I will set up the watch.

Sources

#public tenders#monitoring#data.gov.il#automation#alerting#איסוף נתונים

Frequently asked questions

Can anyone guarantee the system will not miss a tender?

No, and no such guarantee could be verified, because there is no complete list of every publication in Israel to check against. What you can commit to is an explicit source list, a defined check frequency, and a measured median latency. Those are three numbers that can be audited after the fact.

What is the data.gov.il tenders dataset actually good for?

It holds 14,205 records carrying ministry name, procedure type, winning supplier name, that supplier's company number and the engagement period. That supports asking who keeps winning which subjects at which units, as preparation before bidding. It is not updated in real time and therefore does not serve alerting.

How often should each source be checked?

Derive the frequency from the submission deadline, not from instinct. If procedures in your field close within two weeks, a daily check is enough and still leaves preparation time. If they close within three days, a higher frequency is justified. Polling faster than the source updates only adds load.

How do you find out the filter cut something relevant?

Keep the rejected items too, along with the rule that rejected them, and read a sample of those rejections once a month. It is the only check that surfaces a synonym you never considered, and in practice it finds more real failures than technical run monitoring does.

Can tender notices be monitored automatically?

Yes. A scraper watches the relevant portals on a schedule, filters for tenders that match your keywords and categories, and alerts you with the deadline and link the moment a match is published.

Is monitoring public tenders allowed?

Tender notices are public information published so businesses can find them, which makes monitoring them very low-risk. Many portals also offer RSS or an API, which is the cleanest route - always check for one first.

How fast will I hear about a new tender?

As fast as your schedule - typically within hours of publication - so you have the maximum time to prepare a bid instead of finding out late.

What does tender monitoring cost?

It is a recurring service, so a monthly retainer that keeps it running and adjusts the filters as your business changes. See the web scraping cost guide for the tiers.

Keep reading

Related service

Business Automation

I build custom automations that remove repetitive work end to end.

Learn more →←

About the author

Yehonatan Saadia

Freelance automation, web & MVP developer

I'm Yehonatan Saadia, a senior developer who builds business automation, custom websites, and MVPs for small and mid-sized companies across the US, Europe, and Israel. These guides come from real client work, not theory.

Work with me

Have a project like this?

Tell me what you're trying to automate or build. I reply within 24 business hours with a few targeted questions, then we walk through it on a free 30-minute call, with no commitment. You come away with a scope, a timeline and a fixed price - or a straight answer that it isn't worth building.